Uploaded by GODKNOWS TICHAMIRIRA PESANAI

Algorithmic Method

advertisement
COST ESTIMATION- ALGORITHMIC
APPROACH
GODKNOWS T PESANAI
R183853Z
CON
GODWIN R SIGAUKE
R1710743B
CON
ANORLD SHOKO
R182714Z
CON
AUGUSTINE CHITIMBE
R174422A
CON
NYASHA C MAKAMANZI
R186272Z
CON
INNOCENT GWARA
R1710853P
CON
Algorithmic Method
This software cost estimation technique use the mathematical equations to
perform the software estimation.
 The mathematical equations are based on historical data or theory. SLOC
(source line of code), function points, and other cost drivers are the inputs.
For most algorithmic model, calibration to the specific software
environment can be performed to improve the estimation.
 Examples of the parametric models are COCOMO (Constructive Cost
Model), COCOMO II, Putnam's software life-cycle model (SLIM).
1. COCOMO model
Disadvantages
 COCOMO is factual and easy to interpret. One can clearly understand
how it works.
 Accounts for various factors that affect cost of the project.
 Works on historical data and hence is more predictable and accurate.
 The drivers are very helpful to understand the impact on the different
factors that affect the project costs..
Disadvantages
 COCOMO model ignores requirements and all documentation.
It ignores customer skills, cooperation, knowledge and other
parameters.
 It oversimplifies the impact of safety/security aspects.
 It ignores hardware issues
It ignores personnel turnover levels
 It is dependent on the amount of time spent in each phase.
The hierarchy levels of COCOMO
1. Basic COCOMO model
2. Intermediate COCOMO model
3. Detailed COCOMO model
Basic COCOMO model
 The model is used as a function of the program size in the computing
software effort and cost.
• Mostly used for small to medium-sized software projects in order to
perform a speedy, rough estimation.
• It considered to be more effective in circumstance where only a rough
effort estimate is required.
• The equation for estimating the software efforts for the basic model is:
MAN-MONTHS = K1* (Thousands of Delivered Source Instructions) K2
• Where K1 and K2 are two parameters dependent on the application
and development environment.
Factors Concerning the required characteristics
Complexity of the software
1.
Required reliability
2.
Size of data base
3.
Required efficiency (memory and execution time)
4.
Analyst and programmer capability
5.
Experience of team in the application area
6.
Experience of team with the programming language and computer
7.
Use of tools and software engineering practices
2.Putnam model
Another popular software cost model is the Putnam model. The form of this
model is:
Technical constant C= size * B1/3 * T4/3
Total Person Months B=1/T4 *(size/C)3
T= Required Development Time in years
Size is estimated in LOC
Where: C is a parameter dependent on the development environment and It
is determined on the basis of historical data of the past projects.
Rating: C=2,000 (poor), C=8000 (good) C=12,000 (excellent).
Weakness of the PUTNAM model
• One significant problem with the PUTNAM model is that it is based on
knowing, or being able to estimate accurately, the size (in lines of code) of
the software to be developed. There is often great uncertainty in the software
size. It may result in the inaccuracy of cost estimation.
• Depends on the accuracy of size estimation
Function Point Analysis Based Methods
The Function Point Analysis is another method of quantifying the size and
complexity of a software system in terms of the functions that the systems
delivers to the user.
There are two steps in counting function points:
1. Counting the user functions. The raw function counts are arrived at by
considering a linear combination of five basic software components: external
inputs, external outputs, external inquiries, logic internal files, and external
interfaces, each at one of three complexity levels: simple, average or complex..
.The sum of these numbers, weighted according to the complexity level, is the
number of function counts (FC).
The advantages of function point analysis based
model are:
• function points can be estimated from requirements specifications or design
specifications, thus making it possible to estimate development cost in the
early phases of development.
• function points are independent of the language, tools, or methodologies used
for implementation.
• non-technical users have a better understanding of what function points are
measuring since function points are based on the system user's external view
of the system
Advantages
• The function point can be estimated from either the requirements
specifications or the design specification, which makes it possible to
estimate the development costs in the development's early phases.
• The function points are independent of the language, tools or
methodologies that have been used for implementation.
• Non-technical users are able to obtain a better understanding of what
the function points are measuring, as the function points have been
based on the system user's own external view of the system.
3. Function Point Analysis Based Methods
cont...
2.Adjusting for environmental processing complexity. The final function points is
arrived at by multiplying FC by an adjustment factor that is determined by
considering 14 aspects of processing complexity. This adjustment factor allows the
FC to be modified by at most 35% or -35%.
The Formula for calc.. function point analysis based model :
14
PCA = 0.65 + 0.01*(

i 1
ci )
Function Point
cont....
• Where PCA = processing complexity adjustment and then ci = complexity factors.
• As a result, the various Function Points can vary +/- 35 percent from the original
Function counts.
• Once they have computed, these Function points can be used in order to compare
the size of the project that is proposed, compare with previous projects.
Download