Estimation techniques Flashcards
What are the two main types of estimation techniques?
Experience based techniques
Algorithmic cost modeling.
What are experience based modeling techniques?
It’s when the estimate of future effort requirements is based on the manager’s experience of past - informed judgement.
What is algorightimic cost modeling approach
A formulaic approach is used to computer the project effort based on estimates of product attributes - size, process, experience of staff.
What is the problem of experience-based approaches?
- new software project may not have much in common with previous projects.
- software dev changes very quickly and a project may use unfamiliar techniques.
What is the “common” formula for algo cost modeling?
Effort = A * Size^(B) * M
A is organization dependent costant, B is disproportionate effort for large projects, and M is a multiplier reflecting product, process and people.
Most models are similar but they use different values for A,B,M
What are some main points about estimation accuracy
The size of a software system can only be known accurately when it is finished.
Several factors influence the final size (use of reused components, laguage, etc.)
Values B and M vary depending on the estimator.
the more project progresses, the more the estimate becomes accurate.
Limits of algorithmic cost modeling
Systematic, but difficult to use and complex.
many attributes and considerable scope for uncertainty in estimating values.
What is COCOMO cost modeling
Empirical model based on project experience.
Well-documented, not tied to a specific software vendor
Incorportates multiple sub models.
What are the COCOMO 2 models?
Application composition model
Early design model
reuse model
post-architecture model.
When to use the Application compostion model in COCOMO?
This is used when the software is composed of existing parts.
When to use the early design model in COCOMO?
Used when requirements are available but the design has not yet started.
When to use the reuse model in COCOMO?
It is used to compute the effort of integrating reusable components.
When to use the post-architecture model?
It is used once the system architecture has been designed and more information about the system is available.
What are the specifics of the application composition model?
PM = ( NAP*(1 - %reuse/100 ) ) / PROD
PM is in person-months, NAP is number of application points, PROD is productivity. NAP is =#screen or pages+ # reports+#modules in imperative PL +# lines of scripts
What is the application point productivity?
It is a wait of measuring the PROD value. It is based on the dev’s experience. PROD is measured in NAP/Month