Download Software Project Formulation

Document related concepts

Earned value management wikipedia , lookup

Cost estimate wikipedia , lookup

Phase-gate process wikipedia , lookup

Construction management wikipedia , lookup

PRINCE2 wikipedia , lookup

Transcript
Software Project Formulation
• Types of Software Contracts
• Tendering Process
• Formulation of Contracts
Types of Software Contract
• Information Systems related Projects (representatives) :




Software Development (Bespoke or Tailor made)
Product Implementation (COTS)
Maintenance
Testing
Types of Software Contract
• Software Contracts :
 Fixed Price Contracts
 Cost+ Contacts (Time and Material Contracts)
Fixed Price Contracts
• Price is fixed when the contract is signed with the customer
• If there are no changes in the contract then, customer will
have to pay on the successful completion of the
project/work
• To arrive fixed price contract
 Requirements must be known and fixed properly
 Detailed requirement analysis must be carried out properly
 Strong project management skills required to complete the work
(during project execution customer tend to change/add the
requirements without further negotiating or expect software
contractor to be accommodative)
Fixed Price Contracts
Advantages :
• Known Customer Expenditure : If the requirements have
been defined adequately and if there are no changes in the
contract terms or in the requirements then, customer is
aware about the cash outflow
• Service Provider/Software Contractor motivation
:
Software Contractor has a motivation to manage the delivery
of the system in a cost-effective manner (by deploying
efficient Project Management Techniques)
Fixed Price Contracts
Disadvantages :
l
Higher prices to allow for contingency : Supplier absorbs the risk for any
errors in the original estimate. To reduce the impact of this risk, the supplier
will add a margin when calculating the price to be quoted in a tender
•
Rigidity in modifying requirements : If the requirements are not spelt out
correctly (example, not only current business processes we need to think about
future business expansions in different business lines, locations, provisions etc.)
this may cause friction between Software contractor and Customer (again,
important point is at what point ‘Change request’ has occurred !)
•
Upward Pressure on the cost of changes : Competition may push Software
Contractor to have the aggressive pricing and then, once awarded look out for
the opportunities to demand more
•
Threat to System Quality : Sometimes to need to meet the dead lines in ‘No
Margin/Less margin’ projects software contractor is compromise on the quality
Fixed Price Contracts
Typical Examples :
l
Developing an Information System using SDLC model
l
Implementing COTS Solution
l
Software Training
Cost Plus Price Contracts
Cost+ Contracts some times referred as Time and Materials Contracts :
l
l
In this type of contract customer is charged on the per man day / man hour
basis or per month basis (month = 22 days or 26 days as per the Service
providers costing and clients working).
Customer prefer to have such engagements for a shorter duration where there
exist some kind of definite plan and the project management or strong
supervision from customer side exist.
•
Proper records of attendance to be kept to arrive at the monthly payment.
•
Customer is at the demanding stage (or at the steering wheel) to amend /
sharpen the requirements and also dictate his own standards too.
•
Such engagements sometimes called as ‘Body Shopping’ or ‘Staff Augmentation’
or ‘Staff Outsourcing’.
Cost Plus Price Contracts
Advantages of Cost+ Contracts :
l
l
Ease of Changing requirements Customer is unsure about the project
requirements or need to explore different options in the software.
Lack of price pressure Lack of price pressure may allow better quality
software to be produced
Disadvantages of Cost+ Contracts
•
Customer Liability Customer absorbs all the risks associated with poorly defined
or changing requirements
•
Lack of incentives for supplier service provider has no incentive to work in cost
effective manner or to control the scope of the system to be delivered. In such a
model Service Provider is not able to demonstrate the software project
management qualities.
Cost Plus Price Contracts
Typical Examples :
l
Software or Hardware Maintenance
l
Software Offshore Units
l
Technical Writing Jobs
l
Exploring new technologies
l
Data Entry Jobs
l
Software Training (Specialized)
Fixed Price per unit
Often associated with function point (FP) counting
Size of the system to be delivered may be estimated in lines of code or in
function points (these can be derived based on requirement definition)
A price per unit is also quoted. Final price is then the unit price multiplied by
the number of units
Advantages
Customer understanding : Visibility or transparency exist with the customer
and aware about the price calculation and also aware about the change in price
based on the requirements variation
Emerging Functionality and risk : Supplier does not take the risk of increasing
functionality
Supplier Efficiency : Supplier still has an incentive to deliver the required
functionality in a cost-effective manner
Disadvantages
Increase in line of code (either because of inefficiency
requirement definition) is a concern
in coding or
Tendering (Basic Definitions)
Open Tendering Process
Based on the requirements (Indents or requisitions) of services or goods a
proper Request for Proposal (RFP) is prepared
These RFPs are then sent to all the service providers / vendors to quote (or
obtain proper quotation). This is called as a Tendering Process (or RFP Process).
It is further called as ‘Open Tendering Process’ as it is sent to all the
vendors/service providers irrespective of the country.
Restricted Tendering Process
In this case only selected vendors / service providers are invited to respond to
RFP or Tender
These vendors or service providers are also called as Approved
Supplier/Service List (ASL)
In this case Tendering process is restricted to less number of suppliers and
hence, scrutiny of tenders is at the manageable stage
Tendering Process (Step – I)
Invitation to respond (RFP Process)
Description of existing systems and the current environment
Customer’s future strategy or plans
System requirements
• Potentially identify provisional requirements


Mandatory
Desirable
• Work out your other factors to select the partner
for delivering the solution
Standards (if known or available)
Deadlines
Additional information required from Service Providers / Vendors like brief
about the organization, relevant experience, financial information etc.
Tendering Process (Step – II)
Evaluation
Meeting mandatory requirements
Evaluate the path to fulfill the desirable requirements
Quality standards and Methodology
• Work out strong evaluation criteria
Staff competency
• Form an evaluation committee
Project credentials in the similar industry segment / domain and demonstrations
Corporate/Company Profile, Financial performance
Support matrix
Locations / Language preference
Time & Cost to Develop and implement
Tendering Process (Step – III)
Contract Preparation
Definition : Terminologies to be defined
Form of agreement : Service or goods deliveries
Ownership of the software : IPR related issues
Environment
• Contracts to be worded for Services / Goods
• Have the standard templates
Acceptance Procedures
Standards and methodologies
Time Table
Price and Payment method
Support arrangements
Key Learning
• Types of Software Contracts
• Tendering Process
• Formulation of Contracts
HR in Project Management
• Recruitment Process
• Motivation & Team Development
• Project Manager
Recruitment Process (Step – I)
Need
•
Manpower Budget:
 Manpower budget(requirement) is usually worked out based on the business plan and usually is an
annual exercise
 Specify the positions, numbers required and the expected cost of hire and time
 To recruit(or Hire) correctly job description is essential
•
Out of Turn positions :
 Based on the project requirements specialised skill set may be required
 Resignations may also trigger recruitment process
 Additional force (bench or shadow resources)
Recruitment Process (Step – II)
Tools to handle Recruitments
•
•
•
•
•
•
•
Advertisements
Job Mela
: News Paper, Web Portals
: Campaign about the Organization, have the job descriptions clear, have the
process in place to collate the CVs, process of standardize and effective
communications with the prospective candidates at the stalls
Walk in Interviews : Have the interview panel in place, HR to respond quickly on the offer letters
Referrals
: Have the referrals scheme in place
Web Portals
: Have the membership to surf important Job related Web Portals such as
Naukari.com, Monster.com
Internal Database : Develop strong data base of CVs
Recruitment Agency: Take the help of recruitment agencies for specific positions
Recruiting Graduate Trainees

Campus Interviews and further put on the rigorous training course aligned with the
organizational objectives
Recruitment Process (Step – III)
Interviewing Process (Selection Criteria)
•
•
•
•
•
•
Relevant Skills
Experience in Years
Qualification(s)
Past Experience (Domestic, International)
Age , Gender, last salary drawn
References (either mentioned on CVs or obtained)
Recruitment Process (Step – IV)
Elimination
•
•
•
First process is to screen the CVs which are obtained
Eliminate or bring CVs to the next process of Technical round
Eliminated CVs to be stored in the database with the proper reasoning for further references
Technical Interview
•
Organize interview(s) with the selected candidate(s) using Audio/Video Conference with the Technical panel or call
candidate(s) in person
•
Test the various skills such as Communications, Technicalities (either by way of written test or verbal interview) and
see the best fit for the post
•
Select the shortlisted candidates for the further HR interview in person. Rejected to keep in the database with the
reasons for further reference
HR Interview
•
•
Communication Skills, Personality traits, Joining date and current cost and expected salary
Rejected candidates to be kept in the database for the further reference
Motivation (Software Projects)
SN
Software
Projects
Performance Targets
Measuring the Targets
1
SDLC
Completing
each
phase in time and
cost with proper
standards and quality
Complex
2
COTS
<Same as Above>
Complex
3
Maintenance
Based
on
the
Successful
Completion
of
activities mentioned
under Maintenance
phase
Easy
Based
on
the
successful completion
Easy
• Coding
• Training
• Upgrades
4
Testing
Motivation (Software Projects)
Common Motivational Schemes
SN
Issues highlighted
Motivational Steps
1
Not par with the market
Understand the problem, conduct market
survey for the similar size, grades etc and
then take a call on the salary revision
2
Lack of clarity
Work out a proper job description at every
level
3
Lack of training
Find out Training Needs Analysis (TNA) based
on the Job Description and then align a
proper training
4
Job Rotation / Satisfaction
Analyze job situation and try to switch the
jobs
5
Dissatisfaction in group
Have weekly meetings on Official and
Personal issues
SDLC
Motivation (Software Projects)
SDLCIssues
and COTS
SN
Motivational Issues
1
Project Slippages
Try & address these issues along with the
customer and not to have ‘Blame Game’
2
Communications with the
customer
Must know how to handle the customer. A
proper training program can be scheduled
SDLC
3
Not getting rewarded in
Have reward programs such as ‘Star person
spite of doing an excellent of the month’
job
4
Logistics related issues
Must be aligned with the customer timings
and venue. Compensate adequately in terms
of holidays and conveyance etc.
5
Environment or locations
related issues
Try and sort them out by providing facilities
such as entertainment, sports etc (Staff
welfare)
Motivation (Software Projects)
Maintenance
SN
Issues & Testing
1
Job rotation and preferred
to have SDLC
SDLC
2
Communications with the
customer
Motivational Issues
Try & address these issues with proper dialog
and then map the decision
Must know how to handle the customer. A
proper training program can be scheduled
3
Not getting rewarded in
Have reward programs such as ‘Star person
spite of doing an excellent of the month’
job
4
Logistics related issues
Must be aligned with the customer timings
and venue. Compensate adequately in terms
of holidays and conveyance etc.
5
Environment or locations
related issues
Try and sort them out by providing facilities
such as entertainment, sports etc (Staff
welfare)
Project Manager
• The role of the Project Manager is to plan, execute, and
finalize projects according to strict deadlines and within
budget.
• This includes acquiring resources and coordinating the
efforts of team members and third-party contractors or
consultants in order to deliver projects according to plan.
• The Project Manager will also define the project’s
objectives and oversee quality control throughout its life
cycle
Project Manager
•
•
•
•
•
•
•
•
Creates and executes project work plans and revises as appropriate
to meet changing needs and requirements.
Identifies resources needed and assigns individual responsibilities.
Manages day-to-day operational aspects of a project and scope.
Reviews deliverables prepared by team before passing to client.
Effectively applies methodology and enforces project standards.
Prepares for engagement reviews and quality assurance procedures.
Minimizes our exposure and risk on project.
Ensures project documents are complete, current, and stored
appropriately
Key Learning
• Recruitment Process
• Motivation & Team Development
• Project Manager
Software Project Scheduling
• Bar Charts
• Motivation & Team Development
• Project Manager
Planning & Scheduling
•
•
•
•
Background
Project Schedules
Project and Activities
Sequencing and Scheduling Activities
Planning & Scheduling (Background)
Background
• Plan must be started as a set of targets and made
up of activities
• Achievement or unachievement is unambiguously
measured and monitor against the targets
• Ensure appropriate resources are mentioned on
the plan and measured against the actual
deployment
• Plan must give detailed costing
Planning & Scheduling
• Activity Planning & Scheduling techniques place an
emphasis on completing the project in a minimum
at an acceptable cost or, alternatively meeting a
set target at minimum cost
• Planning is an ongoing process of refinement, each
iteration becoming more detailed and more
accurate than the last
Project Scheduling (4-Steps)
Project Schedule
Step I
Step II
Decide what activities
Need to be carried out &
in what order
Step IV
Risk Analysis
Draw up and
Publish
Step III
Resource Allocation
Projects and Activities
Scheduling Concerns
•
Estimating the complexity and effort of implementing
certain requirements is hard
•
Productivity is not proportional to the number of people
working on a task
•
Simply adding people to a late project does not improve
your chances of meeting deadlines
•
The unexpected always
contingency in planning
happens.
Always
allow
Projects and Activities
Characteristics
• Project is composed of number of interrelated
activities
• Project may start when at least one of its
activities is ready to start
• Project is said to be completed when all the
activities are completed
• Activity must have a resource to work on
• Duration of an activity must be forecastable
• Some activities might need precedence
Projects and Activities
WBS (Work Breakdown Structure)
• The work breakdown structure (WBS) is a powerful tool for
expressing the scope or extent of a project in simple
graphic terms
• It represents the project in terms of the hierarchy of
deliverables and services it will produce
• The WBS starts with a single box at the top which
represents the whole project. The project is then
partitioned into its components with lower level boxes
Projects and Activities
WBS Role
• Partition the major project deliverables into smaller components to
improve the accuracy of cost estimates
• Provide a mechanism for collecting and organizing actual costs
• Provide a mechanism for performance measurement and control
• Note that the WBS provides a simple map of what is to be produced. It
does not deal with schedules and therefore has no time dimension
• It is however used as entry criteria for schedule development
Projects and Activities
Typical WBS (sample based on deliverables)
Project
Installed
System
S/W Comp
User Manual
Training
Course
Analyze
Requirements
Review
Requirements
Analyze
Requirements
Analyze
Requirements
Outline Design
Outline Design
Design Manual
Design Course
Integrate System
Code Software
Capture Screens
Write Manual
Test System
Test Software
Print Manuals
Print
Handouts
UAT & Signoff
Deliver
Course
Projects and Activities
WBS (Work Breakdown Structure)
• Project is composed of number of interrelated
activities
• Project may start when at least one of its
activities is ready to start
• Project is said to be completed when all the
activities are completed
• Activity must have a resource to work on
• Duration of an activity must be forecastable
• Some activities might need precedence
Bar Charts & Activity Networks
• Graphical notations are used to show the project
schedule. They show project breakdown into tasks
and sub-tasks



Activity Charts show the dependencies between tasks
and the ‘Critical Path’.
Bar Charts show the schedule of tasks against
calendar time
Note: Tasks should not be too small for example on a six month
project they should typically take about a week or two
Bar Charts
• Gantt charts are bar charts used to track project
schedules and progress
• Gantt charts provide us with information about
durations, criticality
• They come, essentially, directly from the work
breakdown structures
Bar Charts (GANTT Charts)
Network Planning Methods (PERT)
• PERT (Program Evaluation and Review Technique)
charts represent the project schedule as an
activity network
• The original PERT charts were designed for
projects with uncertainty and so are ideal for the
early stages of project planning
PERT Concepts
– A Milestone is an event that takes zero time. It is often
used to represent the completion of an activity or the
delivery of something
– An Activity is part of a project that requires resources
and time
– Optimistic time (O): the minimum possible time required
to accomplish a task, assuming everything proceeds better
than is normally expected
– Pessimistic time (P): the maximum possible time required
to accomplish a task, assuming everything goes wrong (but
excluding major catastrophes)
– Most likely time (M): the best estimate of the time
required to accomplish a task, assuming everything
proceeds as normal
– Expected time (TE): the best estimate of the time
required to accomplish a task, assuming everything
proceeds as normal
PERT Construction
• Identify Goals, Activities and Milestones
• Determine the dependencies between activities
and the sequence of activities to meet goals and
achieve milestones
• Construct the network diagram
• Estimate activity times:
 Optimistic time
 Most likely time
 Pessimistic time
• Determine the critical path
Activity Chart
4 /7
11 /7
18 /7
2 5 /7
1 /8
8 /8
1 5 /8
22 /8
2 9 /8
5 /9
12 /9
1 9 /9
Start
T4
T1
T2
M1
T7
T3
M5
T8
M3
M2
T6
T5
M4
T9
M7
T 10
M6
T 11
M8
T 12
Finish
Network Chart
Critical Path
•
For each activity we need to estimate:




ES – Earliest start time
EF – Earliest finish time
LS – Latest start time
LF – Latest finish time
•
The ‘length’ of each path is calculated by adding
up the optimistic, expected and pessimistic
durations of each activity on the path
•
The LONGEST path in the project is the
CRITICAL PATH
Critical Path
• Delays on the critical path will delay the project
• For the activity network above :
–
–
–
–
–
–
T1 T3 T9 T11 T12
T1 T6 T9 T11 T12
T1 T7 T10
T2 T6 T9 T11 T12
T2 T5 T10
T4 T8
=
=
=
=
=
=
55
45
43
52
40
35
days
days
days
days
days
days
CRITCIAL PATH
Project Work (Discussion)
SDLC/COTS
•
•
•
•
•
•
•
•
•
•
Library Management System
Human Resource Data base
Students Admission System
Inventory System for a retail mall
Railway / Hotel / Reservation System
Students Examination System
Visitors Management System
Investment Portfolio System
Retail Banking System
Recruitment System
Project Work (Discussion)
Expectation
•
•
•
•
•
Prepare list of activities
Prepare a project plan
Prepare a proper network diagram (using the tool)
Allocate resources
Proper presentation (slides not to exceed 8)
Project Selection (Finance Options)
• Capital Investments


Objectives
Common Weakness
• Phases of Capital Budgeting
• Decision of Making
• Project Analysis
Capital Investments
• Capital Investments
Types
Physical
• Land, Buildings
• Plant & Machinery
• Vehicle, Office Equipment
Monetary
• Customer Receivables
• Deposits, Bonds etc.
• Cash in Bank/Hand
Intangible
• R&D, Campaigns
• Training
• Software, Office Automation
Capital Investments
Capital Investments
 Strategic Investments
{Significant impact on the
Business Strategies}
Examples :
Expansion Investment
Diversification Investment
R&D Investments
 Tactical Investments
{Implementation of a current strategy
as efficiently as possible}
Examples :
Mandatory Investments
Replacement Investments
Definition (Pay Back Period – PBP)
• The length of time required to recover the cost of an
investment
• For example, if a project costs $100,000 and is expected to
return $20,000 annually, the payback period will be
$100,000 / $20,000 (5 Yrs)
• It ignores any benefits that occur after the payback period
and, therefore, does not measure profitability
• It ignores the time value of money
Definition (Accounting Rate of Return - ARR)
• Average profit ÷ Average investment as a percentage
• The profit number used is Operating Profit (usually from a
particular project)
• The average investment is the book value of assets tied up
(in the project)
• This is important as the profit figure used is after
depreciation and amortization. The means that value of
assets used should also be after depreciation and
amortization as well
Definition (Internal Rate of Return – IRR)
•
A very simple example is say that you will have a cash flow of
$10 in year 2. Assume that in order to generate that cash flow,
you had to invest $50. Thus you have an out flow of $50 the
first year, and an inflow of $60 in year two ($10 earnings plus
the $50 return of your initial investment). In order to convert
or discount the $60 back to today's dollars to equal $50, you
must use a discount rate of 20%. Thus, your IRR is 20%
•
Another way to look at it is the internal rate of return (IRR) is
the discount rate at which the "net" present value of future
cash flows is zero (discounted future cash flows = starting
investment amount). The "net" meaning you subtract your initial
investment
Definition (Net Present Value – NPV)
• The present value of an investment's future net cash flows
minus the initial investment. If positive, the investment
should be made (unless an even better investment exists),
otherwise it should not
Definition (Benefit Cost Ratio – BCR)
• In its simplest form, benefit cost ratio is a figure that is
used to define the value of a project versus the money that
will be spent in doing the project in the overall assessment
of a cost-benefit analysis
• This ratio provides a value of benefits and costs that are
represented by actual dollars spent and gained
Selection Criteria
SN
Criterion
Accept
Reject
1
PBP (Pay Back Period)
< Target Period
>= Target Period
2
Accounting Rate of Return (ARR)
> Target Rate
< Target Rate
3
Net Present Value (NPV)
>0
<0
4
Internal Rate of Return (IRR)
> Cost of Capital
< Cost of Capital
5
Benefit Cost Ratio (BCR)
>1
<1
Project Management – Quality Standards
• ISO 9000-3:1997
• CMM Standards
ISO Basic Concepts
• The International Organization for Standardization (ISO) in
Geneva, Switzerland first published ISO 9000 quality
system standards in 1987. Almost all countries, including the
USA, have adopted it as their national quality standard
• ISO 9000 is primarily concerned with a quality assurance
process that applies universally to all industries
• ISO 9000 defines the key principles for quality assurance
and standards for rigorous conformance to specifications
• ISO 9000 is a Quality assurance System that can be
summed up in four words: PLAN, DO, CHECK, and ACT.
ISO Basic Concepts
•
The ISO standards do not tell a business how to structure these basic
principles because all businesses are unique. Instead, they help to establish
quality as a foundation for success.
•
Conceptually, many businesses have the framework of the ISO requirements
integrated into how they currently do business, but they are unaware that
most of the work is already done.
•
More companies would likely apply for ISO certification if they clearly
understood what it is and how much their organizations would benefit.
•
The key to achieving quality assurance is not to reinvent your company in the
image of these principles.
•
Rather, the secret lies in realizing how your company already conforms to
these guidelines and enhancing these areas where something is lacking as
you plan and follow through on your quality objectives.
ISO Basic Concepts
•
PLAN. Answering the "five W’s" (who, what, when, where, why) and "How,"
will create objectives within your organization to guide what you do. For
software industry, planning deals with what resources will be applied to the
construction process, including labor, materials, tools, and equipment. A
combination of codes, regulations, scopes of work, and standard operating
procedures must define how these resources are used. Quality plans also
define how the quality system will be managed.
•
DO. In this phase of quality assurance, the plan is put into motion and work
on the jobsite is performed.
•
CHECK. Check that against the customer’s requirements, and record the
results.
•
ACT. Improve what you do. Identify ways that your systems can be
improved and revise them as needed. In order to avoid recurrent problems,
adjust the plan so that the root cause of the problem is removed.
Software Development Challenges
•
ISO 9001 was designed to be a generic standard, applicable to any business.
•
Computer software’s ethereal nature creates challenges in project
management and tracking.
•
The inherent complexity of many software products creates design
challenges as well as testing problems. It may be difficult to assess the
"goodness" of a design.
•
In addition, because of the huge number of possible execution thread
permutations, testing a software product adequately may prove
troublesome. Furthermore, because software products never wear out, their
persistence can create configuration, maintenance, and support problems not
encountered by other types of products.