Chapter 3 Part 1
Chapter 3 Part 1
Three skills that are most critical to successful project management are the following:
• Knowledge of project management techniques.
• Decision taking capabilities.
• Previous experience in managing similar projects.
During project planning, the project manager performs the following Activities:
Estimation: The following project attributes are estimated.
• Cost: How much is it going to cost to develop the software product?
• Duration: How long is it going to take to develop the product?
• Effort: How much effort would be necessary to develop the product?
The effectiveness of all later planning activities such as scheduling and staffing are dependent on the accuracy with which
these three estimations have been made.
Scheduling: the schedules for manpower and other resources are developed.
Staffing: Staff organization and staffing plans are made.
Risk management: This includes risk identification,
analysis, and abatement planning.
Miscellaneous plans: This includes making several other
plans such as quality assurance plan,
and configuration management plan, etc.
3.3 METRICS FOR PROJECT SIZE ESTIMATION
3.3.1 Lines of Code (LOC)
❑ Simplest and most widely used metric.
❑ Comments and blank lines should not be counted.
Disadvantages of LOC
✓ LOC is a measure of coding activity alone..
✓ LOC count depends on the choice of specific instructions:
✓ LOC measure correlates poorly with the quality and efficiency of the code.
✓ LOC metric penalizes use of higher-level programming languages and code reuse.
✓ LOC metric measures the lexical complexity of a program and does not address the more important issues of logical and
structural complexities.
✓ It is very difficult to accurately estimate LOC of the final program from problem specification.
3.3.2 Function Point (FP) Metric
One of the important advantages of the function point metric over the LOC metric is that it can easily be computed from the
problem specification itself.
Solution
UFP = 50 x 4 + 40 x 5 + 35 x 4 + 6 x 10 + 4 x 7
= 200 + 200 + 140 + 60 + 28 = 628
CAF = (0.65 + 0.01 ΣFi)
= (0.65 + 0.01 (14 x 3)) = 0.65 + 0.42 = 1.07
FP = UFP x CAF
= 628 x 1.07 = 672
Example:3.2
An application has the following:
10 low external inputs, 12 high external outputs, 20 low internal logical files, 15 high external interface files, 12 average
external inquiries, and a value of complexity adjustment factor of 1.10.
What are the unadjusted and adjusted function point counts ?
Solution
UFP= 10 x 3 + 12 x 7 + 20 x 7 + 15 + 10 + 12 x 4
= 30 + 84 +140 + 150 + 48
= 452
FP = UFP x CAF
= 452 x 1.10 = 497.2.
Example: 3.3 In addition to above, system requires
Consider a project with the following parameters. i. Significant data communication
(i) External Inputs: ii. Performance is very critical
(a)10 with low complexity iii. Designed code may be moderately reusable
(b)15 with average complexity iv. System is not designed for multiple installation in different
organizations.
(c)17 with high complexity
Other complexity adjustment factors are treated as average.
(ii) External Outputs: Compute the function points for the project.
(a)6 with low complexity
(b)13 with high complexity Σ𝐹= 3+4+3+5+3+3+3+3+3+3+2+3+0+3=41
(iii) External Inquiries: CAF = (0.65 + 0.01 x ΣFi)
(a) 3 with low complexity = (0.65 + 0.01 x 41)
(b) 4 with average complexity = 1.06
(c) 2 high complexity FP = UFP x CAF
(iv) Internal logical files: = 424 x 1.06
(a)2 with average complexity = 449.44
(b)1 with high complexity Hence FP = 449
(v) External Interface files:
(a)9 with low complexity
PROJECT ESTIMATION TECHNIQUES
• Empirical estimation techniques
• Heuristic techniques
• Analytical estimation techniques
A- Expert Judgement:
❑ Experts divide a software product into component units: e.g. GUI, database module, data communication module, billing module, etc.
❑ Add up the guesses for each of the components.
❑ Suffers from individual bias.
B- Delphi Estimation:
A. COCOMO
COnstructive COst estimation MOdel (COCOMO) was proposed by Boehm [1981]. COCOMO prescribes a three stage process for project estimation. In the
first stage, an initial estimate is arrived at.
Solution
The semi-detached mode is the most appropriate mode; keeping in view the size, schedule and experience of the development
team.
E = 3.0(200)1.12 = 1133.12 PM
D = 2.5(1133.12)0.35 = 29.3 PM
Intermediate COCOMO
z Basic COCOMO model assumes
y effort and development time depend on product size alone.
z However, several parameters affect effort and development time:
x Reliability requirements
x Availability of CASE tools and modern facilities to the developers
x Size of data to be handled
z For accurate estimation,
y the effect of all relevant parameters must be considered:
y Intermediate COCOMO model recognizes this fact:
x refines the initial estimate obtained by the basic COCOMO by using a set of 15 cost drivers (multipliers) (Effort Adjustment Factor).
Shortcoming of basic and intermediate COCOMO models
z Both models:
y consider a software product as a single homogeneous entity:
y However, most large systems are made up of several smaller sub-systems.
x Some sub-systems may be considered as organic type, some may be considered embedded, etc.
x for some the reliability requirements may be high, and so on.
Complete COCOMO
➢ Cost of each sub-system is estimated separately.
➢ Costs of the sub-systems are added to obtain total cost.
➢ Reduces the margin of error in the final estimate.