Lecture 7 - Software Estimation I.2 Flashcards
Which estimation techniques for effort, schedule, and cost uses a mathematical formula that takes into account various factors that affect duration?
Parametric estimation
Which estimation techniques for effort, schedule, and cost is based on technical, physical, or other end item characteristic?
Parametric estimation
Parametric estimation can produce higher levels of accuracy compared to experience-based methods depending on…
parameters employed and quality of the data
TF: Parametric estimation is the least common estimation techniques
False. The most common estimation techniques
Regression-based estimation is an example of what type of estimation?
Parametric Estimation
How is effort measured for small to moderate projects using regression-based estimation?
EFFORT = a * SIZE + c
- a, c = constants determined by local circumstance
- SIZE = estimated product size
- EFFORT is in staff-months
In regression-based estimation, the magnitude of the effort is…
a linear function of the size of the project
TF: Regression-based estimation model holds up for projects accomplished by large teams with many people
False. For projects accomplished by small teams of 2-3 people
What does CoCoMo stand for?
Constructive Cost Model
TF: CoCoMo is a regression model based on LOC (lines of code)
True
CoCoMo is an empirical model based on…
project experience
TF: CoCoMo is not well document
False
TF: CoCoMo is independent of a specific software vendor
True
When was CoCoMo initially published?
1981 (COCOMO-81)
When was CoCoMo last published?
1999 (COCOMO-II)
TF: COCOMO-II takes into account different approaches to software development, reuse, etc.
True
What equation is CoCoMo built around?
EFFORT = c * (SIZE)^k
- effort measured in p-m
- size measured in thousands of delivered source code instructions (kdsi)
- c, k are constants
In CoCoMo estimation model, Boehm stated c, k depended on whether the system could be classified as… (3)
- organic
- semi-detached
- embedded
The team size is small, problem is well understood and solved in the past, and team members have nominal experience regarding the problem describes which model-classification?
Organic Classification
Project requiring highest level of complexity, creativity, and experience describes which model-classification?
Embedded Classification
TF: Embedded model-classification requires the largest team and requires devs to be experienced and creative to develop the complex software
True
A project with vital characteristics such as team-size, experience, knowledge of various programming environment describes which model-classification?
Semi-Detached Classification
TF: The Embedded model-classification lies in between Organic and Semi-detached classifications
False. Semi-detached classification lies in between Organic and Embedded Classification
The Semi-detached classification is easy to develop compared to Organic classification and require less experience and guidance
False. Difficult to develop compared to Organic classification and requires more experience and guidance
How does CoCoMo II accommodate for the need for estimates at different stages in the system life cycle?
By having models for three different stages
What are the three models of the CoCoMo II Model?
- Early prototyping level
- Early design level
- Post-architectural level
What are the characteristics of Early prototyping level of CoCoMo II? (2)
- Based on “object points”
- Simple formula
What is the characteristic of Early design level of CoCoMo II?
Based on “function points” that are translated to lines of source code (LOC)
What is the characteristic of Post-architectural level of CoCoMo II?
Estimates based on LOC
What happens in the Application composition development stage of CoCoMo II?
The external features of the system that users will experience are designed
What happens in the early design development stage of CoCoMo II?
The fundamental software structures are designed
What happens in the Post-architecture development stage of CoCoMo II?
Software structures undergo final construction, modification, and turning to create a system that will perform as required
What equation can be used to calculate estimate of person-months in Early-design?
p-m = A * (SIZE)^sf x em1… x emn
- p-m = effort in person-months
- A = constant which is set to 2.94
- size = measured in kdsi
- sf = exponent scale factor
- em = effort multipliers
What is the purpose of the exponent scale factor (sf)?
increase effort predicted for large projects
What are the 4 Scale Factor values?
- Development flexibility (FLEX)
- Architecture/risk resolution (RESL)
- Team cohesion (TEAM)
- Process maturity (PMAT)
What is Development flexibility scale factor value?
Number of possibilities to meet the requirements
What is Architecture/risk resolution scale factor value?
Degree of uncertainty about the requirements
What is Team cohesion scale factor value?
Degree to which there is a large dispersed team
What is Process maturity scale factor value?
The more structured and organized the software is produced, the lower the uncertainty and the lower the rating for this exponent driver
What is the Precedentedness (PREC) scale factor value?
Degree to which there are similar cases in the past, for the project being planned
slide 16 for example
slide 17 for answer
TF: An effort multiplier (em) greater than 1 decreases development effort
False. Increases development effort
TF: AN effort multiplier (em) less than 1 decreases development effort
True
TF: A nominal rating for effort multiplier (em) means that the multiplier has no effect
True
slide 20, 21 for example
slide 22 for solution
What are the five steps for developing an estimation model?
- Determine list of potential / most important effort cost drivers
- Select initial estimation model
- Measure and estimate projects and compare
- Evaluate quality of estimation as part of project post-mortem
- Update and validate model at appropriate intervals
Parametric-based Estimation does what?
Relates cost of system to one or more parameters of system like physical or performance characteristics
What does Parametric-based estimation apply? (3)
- Cost estimates and trade-offs for systems in early development
- Quick reaction estimates
- Independent check on other estimates
TF: Parametric-based estimation is sensitive to significant design changes
True
TF: Parametric-based estimation does not quantify effects of cost drivers
False. It does quantify effects of cost drivers
TF: Parametric-based estimation gives quick, reproducible results
True
What are the cons of Parametric-based estimation? (3)
- Inputs are subjective
- Results not as precise
- Requires skilled analyst to develop
TF: For cost estimation, project scope does not need to be explicitly defined
False. Must be explicitly defined
TF: In cost estimation, task, functional, or component decomposition is necessary
True
TF: In cost estimation, historical measures (metrics) are very helpful
True
TF: In cost estimation, using one technique is enough
False. Should use two or more estimation techniques to assure fit
What is Parkinson’s Law?
Work expands to fill the time available
What is Murphy’s law?
Anything that can go wrong will go wrong
What is Brook’s Law?
Putting more people on a late project makes it later