software cost est & project planning mgt
TRANSCRIPT
-
8/6/2019 Software Cost Est & Project Planning Mgt
1/40
Software Cost & EstimationProject Planning & Control
-
8/6/2019 Software Cost Est & Project Planning Mgt
2/40
To introduce cost and schedule estimation.
To describe several cost estimation
techniques. To describe suggested software estimation
steps
To understand the differences between
software mgt. and other types ofengineering management
Undertstand why project planning isessential in all software projects
-
8/6/2019 Software Cost Est & Project Planning Mgt
3/40
-
8/6/2019 Software Cost Est & Project Planning Mgt
4/40
Predicting the resources
required for a softwaredevelopment process
-
8/6/2019 Software Cost Est & Project Planning Mgt
5/40
To establish a budget for a softwareproject.
To provide a means of controlling projectcosts.
To monitor progress against that budget bycomparing planned with estimated costs.
To establish a cost database for futureestimation.
Cost estimation and planning/schedulingare closely related activities.
-
8/6/2019 Software Cost Est & Project Planning Mgt
6/40
Hardware and software costs.
Travel and training costs.
Effort costs (the dominant factor in mostprojects) salaries of engineers involved in the project
costs of building, heating, lighting
costs of networking and communications costs of shared facilities (e.g., library, staff
restaurant)
costs of pensions, health insurance, etc.
-
8/6/2019 Software Cost Est & Project Planning Mgt
7/40
Estimates are made to discover the cost,to the developer, of producing a
software system. There is not a simple relationship
between the development cost and theprice charged to the customer.
-
8/6/2019 Software Cost Est & Project Planning Mgt
8/40
Expert judgment
Estimation by analogy
Parkinsons Law
Pricing to win
Algorithmic cost modelling
-
8/6/2019 Software Cost Est & Project Planning Mgt
9/40
One or more experts in both softwaredevelopment and the application domain usetheir experience to predict software costs.
Process iterates until some consensus isreached.
Advantages: elatively cheap estimationmethod. Can be accurate if experts havedirect
experience of similar systems. Disadvantages: Very inaccurate if there are
noexperts!
-
8/6/2019 Software Cost Est & Project Planning Mgt
10/40
The cost of a project is computed bycomparingthe project to a similar project in the sameapplication domain.
Advantages: Accurate if project dataavailable.
Disadvantages: mpossible if nocomparableproject has been tackled. Needssystematicallymaintained cost database.
-
8/6/2019 Software Cost Est & Project Planning Mgt
11/40
The project costs whatever resources areavailable.
Advantages: No overspending. Disadvantages: System is usually
unfinished.
-
8/6/2019 Software Cost Est & Project Planning Mgt
12/40
The project costs whatever the customerhas to
spend on it. Advantages: ou get the contract.
Disadvantages: The probability that the
customer gets the system he wants issmall.
-
8/6/2019 Software Cost Est & Project Planning Mgt
13/40
Each method has strengths andweaknesses.
Estimation should be based on severalmethods.
If these do not return approximately the
same result, there is insufficientinformation available.
Pricing to win is sometimes the onlyapplicable method.
-
8/6/2019 Software Cost Est & Project Planning Mgt
14/40
Cost is estimated as a mathematicalfunction ofproduct, project and process attributes
whosevalues are estimated by project managers. The function is derived from a study of
historical costing data.
Most commonly used product attribute forcostestimation is LOC (code size).
Most models are basically similar but withdifferent attribute values.
-
8/6/2019 Software Cost Est & Project Planning Mgt
15/40
Developed at TRW, a US defensecontractor.
Based on a cost database of more than 60different projects.
Exists in three stages: Basic - Gives a ball-park estimate based on
productattributes.
Intermediate - modifies basic estimate usingproject andprocess attributes.
Advanced - Estimates project phases and partsseparately.
-
8/6/2019 Software Cost Est & Project Planning Mgt
16/40
Organic mode: Small teams, familiarenvironment, well-understood applications, nodifficult non-functional requirements (EASY).
Semi-detached mode: Project team may
have experience mixture, system may havemore significant non-functional constraints,organization may have less familiarity withapplication (HARDER).
Embedded Hardware/softwaresystems mode:
Tight constraints, unusual for team to havedeep application experience (HARD).
-
8/6/2019 Software Cost Est & Project Planning Mgt
17/40
Organic mode: PM = 2.4 (KDSI) 1.05
Semi-detached mode: PM = 3 (KDSI) 1.12
Embedded mode: PM = 3.6 (KDSI) 1.2
Note: KDSI is the number of thousands of deliveredsource instructions.
-
8/6/2019 Software Cost Est & Project Planning Mgt
18/40
Organic mode project, 32KLOC
PM = 2.4 (32) 1.05 = 91 person months
TDEV = 2.5 (91) 0.38 = 14 months N = 91/15 = 6.5 people
Embedded mode project, 128KLOC
PM = 3.6 (128)1.2
= 1216 person-months TDEV = 2.5 (1216)0.32 = 24 months
N = 1216/24 = 51
-
8/6/2019 Software Cost Est & Project Planning Mgt
19/40
Implicit productivity estimate
Organic mode = 16 LOC/day
Embedded mode = 4 LOC/day
Time required is a function of total effortNOTteam size.
Not clear how to adapt model topersonnelavailability.
-
8/6/2019 Software Cost Est & Project Planning Mgt
20/40
Takes basic COCOMO as starting point.
Identifies personnel, product, computer
andproject attributes which affect cost.
Multiplies basic cost by attribute
multiplierswhich may increase or decrease costs.
-
8/6/2019 Software Cost Est & Project Planning Mgt
21/40
Personnel attributes
Analyst capability
Programmer capability Programming language experience
Application experience
Product attributes Reliability requirement
Database size
Product complexity
-
8/6/2019 Software Cost Est & Project Planning Mgt
22/40
Computer attributes
Execution time constraints
Storage constraints Computer turnaround time
Project attributes
Modern programming practices Software tools
Required development schedule
-
8/6/2019 Software Cost Est & Project Planning Mgt
23/40
These are attributes which were found tobe
significant in one organization with a limitedsize of project history database.
Other attributes may be more significant forother projects.
Each organization must identify its ownattributes and associated multiplier values.
-
8/6/2019 Software Cost Est & Project Planning Mgt
24/40
All numbers in cost model areorganization
specific. The parameters of the modelmust be modified to adapt it to localneeds.
A statistically significant database ofdetailedcost information is necessary.
-
8/6/2019 Software Cost Est & Project Planning Mgt
25/40
Embedded software system onmicrocomputerhardware.
Basic COCOMO predicts a 45 person-montheffort requirement
Attributes = RELY (1.15), STOR (1.21), TIME
(1.10),TOO
L (1.10) Intermediate COCOMO predicts 45*1.15*1.21.1.10*1.10 = 76 person-months.
Total cost = 76*$7000 = $532,000
-
8/6/2019 Software Cost Est & Project Planning Mgt
26/40
Step 1:Gather and AnalyzeSoftware Functional &
ProgrammaticRequirements
-
8/6/2019 Software Cost Est & Project Planning Mgt
27/40
Step 2:Define the Work
Elements and Procurements
-
8/6/2019 Software Cost Est & Project Planning Mgt
28/40
Step 3:Estimate Software
Size Step 4:Estimate Software
Effort
-
8/6/2019 Software Cost Est & Project Planning Mgt
29/40
Step 5:Schedule the effort
Step 6:Calculate the Cost
Step 7:Determine the
Impact of Risks
-
8/6/2019 Software Cost Est & Project Planning Mgt
30/40
Step 8:Validate and Reconcile theEstimate Via Models and Analogy
Step 9:Reconcile Estimates, Budget, andSchedule
Step 10: Review and Approve the
Estimates
-
8/6/2019 Software Cost Est & Project Planning Mgt
31/40
Step 11: Track, Report, andMaintain the Estimates
-
8/6/2019 Software Cost Est & Project Planning Mgt
32/40
-
8/6/2019 Software Cost Est & Project Planning Mgt
33/40
The product is intangible
There are no standard softwareprocesses
Large software projects areoften one-off projects
-
8/6/2019 Software Cost Est & Project Planning Mgt
34/40
Reportwritingandpresentation
Personnelselectionandevaluation
Project monitoring & reviews
Product costing
Projectplanningandscheduling
Proposalwriting
-
8/6/2019 Software Cost Est & Project Planning Mgt
35/40
Quality lan
Validationlan
ConfigurationManagement
lan
Maintenancelan
Staff
developmentlan
-
8/6/2019 Software Cost Est & Project Planning Mgt
36/40
Introduction
ProjectOrganisation
Risk Analysis
Hardware & Softwareresource requirements
Work Breakdown
Project Schedule
Monitoring & Reporting
Mechanism
-
8/6/2019 Software Cost Est & Project Planning Mgt
37/40
Milestone is an end point of asoftware process activity
Milestone is an end point of asoftware process activity
Deliverable is a project result that isdelivered to the customer , usuallydelivered at the end of a projectphase such as specifications and
design
Deliverable is a project result that isdelivered to the customer , usuallydelivered at the end of a projectphase such as specifications and
design
Deliverables are usually milestonesbut milestones need not be
deliverables
Deliverables are usually milestonesbut milestones need not be
deliverables
-
8/6/2019 Software Cost Est & Project Planning Mgt
38/40
Estimate the project cost to the supplierthen decide on the price to the
customer. Prepare cost estimates using different
techniques. Estimates should becomparable.
The time required to complete a projectis not simply proportional to the numberof people working on the project.
-
8/6/2019 Software Cost Est & Project Planning Mgt
39/40
Algorithmic cost estimation is difficultbecause of the need to estimateattributes of the finished product.
Algorithmic cost models are a useful aidto project managers as a means ofcomparing different development
options. The time required to complete a project
is not simply proportional to the numberof people working on the project.
-
8/6/2019 Software Cost Est & Project Planning Mgt
40/40