0% found this document useful (0 votes)
161 views

SPM - Software Project Management

Find the effort and schedule using the given information.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
161 views

SPM - Software Project Management

Find the effort and schedule using the given information.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 24

SPM – Software Project

Management
COCOMO Model
• Cocomo (Constructive Cost Model) is a regression model based on
LOC, i.e number of Lines of Code.

• It is a procedural cost estimate model for software projects and often


used as a process of reliably predicting the various parameters
associated with making a project such as size, effort, cost, time and
quality.

• It was proposed by Barry Boehm in 1970 and is based on the study of


63 projects, which make it one of the best-documented models.
• The key parameters which define the quality of any software
products, which are also an outcome of the Cocomo are primarily
Effort & Schedule:
• Effort: Amount of labor that will be required to complete a task. It is
measured in person-months units.

• Schedule: Simply means the amount of time required for the completion of
the job, which is, of course, proportional to the effort put. It is measured in
the units of time such as weeks, months.
• Different models of Cocomo have been proposed to predict the cost
estimation at different levels, based on the amount of accuracy and
correctness required.

• All of these models can be applied to a variety of projects, whose


characteristics determine the value of constant to be used in
subsequent calculations.

• These characteristics pertaining to different system types are


mentioned next.
Boehm’s Organic, Semidetached, and
Embedded systems
• Organic: A software project is said to be an organic type if the team size
required is adequately small, the problem is well understood and has been
solved in the past and also the team members have a nominal experience
regarding the problem.

• Semi-detached: A software project is said to be a Semi-detached type if the


vital characteristics such as team-size, experience, knowledge of the
various programming environment lie in between that of organic and
Embedded. The projects classified as Semi-Detached are comparatively less
familiar and difficult to develop compared to the organic ones and require
more experience and better guidance and creativity. Eg: Compilers or
different Embedded Systems can be considered of Semi-Detached type.
• Embedded: A software project with requiring the highest level of
complexity, creativity, and experience requirement fall under this
category. Such software requires a larger team size than the other
two models and also the developers need to be sufficiently
experienced and creative to develop such complex models. All the
above system types utilize different values of the constants used in
Effort Calculations.
Size Ranges
• Organic: 0 – 50 KLOC
• Semi-detached: 50 -300 KLOC
• Embedded: over 300 KLOC
Types of Cocomo Models:
• COCOMO consists of a hierarchy of three increasingly detailed and
accurate forms. Any of the three forms can be adopted according to
our requirements.

• These are types of COCOMO model:


• Basic COCOMO Model
• Intermediate COCOMO Model
• Detailed COCOMO Model
Basic
• The first level, Basic COCOMO can be used for quick calculations of
Software Costs.

• It is the one type of static model to estimates software development


effort quickly and roughly.

• It mainly deals with the number of lines of code and the level of
estimation accuracy is less as we don’t consider the all parameters
belongs to the project.
• The estimated effort and scheduled time for the project are given by the
relation:

• Effort (E) = a*(KLOC)b (MM)


• Scheduled Time (D) = c*(E)d (Months(M))

• E = Total effort required for the project in Man-Months (MM).


• D = Total time required for project development in Months (M).
• KLOC = the size of the code for the project in Kilo lines of code.
• a, b, c, d = The constant parameters for a software project.
Constant Values
Example 1
• We have determined our project fits the characteristics of Sem-Detached mode
• We estimate our project will have 62,000 Delivered Source Instructions. Using the
formulas, we can estimate:

• Effort (E) = a*(KLOC)b


• Scheduled Time (D) = c*(E)d

• a = 3.0
• KLOC = 62
• b = 1.12
• c = 2.5
• d = 0.35
Example 1 – Filled Values
• We have determined our project fits the characteristics of Sem-
Detached mode
• We estimate our project will have 32,000 Delivered Source
Instructions. Using the formulas, we can estimate:

• Effort = 3.0*(62)1.12
= 305 man months
• Schedule = 2.5*(305)0.35
= 19 months
Example 2
• We have determined our project fits the characteristics of Embedded
mode (see the values from slide 11).
• We estimate our project will have 30,000 Delivered Source
Instructions. Find effort (E) and scheduled time (D).
Intermediate COCOMO
• The Intermediate COCOMO is an extension of the “Basic COCOMO“
model.

• It estimates the programmer time to develop a software product.

• This extension considers a set of four "cost driver attributes", each


with a number of subsidiary attributes.
Intermediate COCOMO Cost Attributes
• Product attributes
• Required software reliability
• Size of application database
• Complexity of the product

• Hardware attributes
• Run time performance constraints
• Memory constraints
• Volatility of the virtual machine environment
• Required turnabout time
• Personnel attributes
• Analyst capability
• Software engineer capability
• Applications experience
• Virtual machine experience
• Programming language experience

• Project attributes
• Use of software tools
• Application of software engineering methods
• Required development schedule
Intermediate COCOMO Contd.
• Each of the 15 attributes receives a rating on a 6 point scale that
ranges from "very low" to "extra high“ (in importance).

• Based on the rating, effort multipliers is determined The product of all


effort Multipliers result in “effort adjustment factor” (EAF).

• Typical values for EAF range from 0.9 to 1.4


• The Intermediate Cocomo formula now takes the form:

• Effort (E) = (a*(KLOC)b ) * (EAF)


• Scheduled Time (D) = c*(E)d (Months(M))

• E = Total effort required for the project in Man-Months (MM).


• D = Total time required for project development in Months (M).
• KLOC = the size of the code for the project in Kilo lines of code.
• EAF is the effort adjustment factor
• a, b, c, d = The constant parameters for a software project.
Project a b c d

Organic 3.2 1.05 1.1 0.12

Semi-detached 3.0 1.12 1.6 0.23

Embedded 2.8 1.20 2.5 0.32


Example1
• Consider a project having 30,000 lines of code which in an embedded
software where reliability is high. The estimation can be:

• Effort = (a*(KLOC)b ) * (EAF)


• Schedule = c*(E)d

• a = 2.8
• KLOC = 30
• b = 1.20
• EAF = 1.15
• c = 2.5
• d = 0.32
Example1 – Fill the values
• Consider a project having 30,000 lines of code which in an embedded
software where reliability is high. The estimation can be:

• Effort = (a*(KLOC)b ) * (EAF)


• Schedule = c*(E)d

• a=?
• KLOC = ?
• b=?
• EAF = ?
• c=?
• d=?
Example
• Consider a project having 30,000 lines of code which in an embedded
software where reliability is high. The estimation can be:

• Effort = (2.8*(30)1.20 )*1.15


= 191 man months
• Schedule = 2.5*(191)0.32
= 13 months
• P = E/D
=191/13
= 15 persons
Example 2
• Consider a project having 30,000 lines of code which in an embedded
software where reliability is high, Size of Application is nominal,
Analyst capability is very high. The estimation can be:

• EAF = 1.15*1*0.71

You might also like