0% found this document useful (0 votes)
46 views7 pages

Se Unit - Iii Notes

The COCOMO Model, developed by Barry Boehm in 1981, is a software cost estimation model that predicts the effort, cost, and schedule for software projects based on their size, typically measured in lines of code. It categorizes projects into three types: organic, semi-detached, and embedded, and includes three levels of estimation: basic, intermediate, and detailed COCOMO. The Putnam Resource Allocation Model, created by Lawrence H. Putnam, is another tool for estimating project costs and schedules, emphasizing the trade-off between time and resources using the Rayleigh curve.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
46 views7 pages

Se Unit - Iii Notes

The COCOMO Model, developed by Barry Boehm in 1981, is a software cost estimation model that predicts the effort, cost, and schedule for software projects based on their size, typically measured in lines of code. It categorizes projects into three types: organic, semi-detached, and embedded, and includes three levels of estimation: basic, intermediate, and detailed COCOMO. The Putnam Resource Allocation Model, created by Lawrence H. Putnam, is another tool for estimating project costs and schedules, emphasizing the trade-off between time and resources using the Rayleigh curve.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

UNIT - III

COCOMO Model
The Constructive Cost Model (COCOMO) is a software cost estimation model that helps
predict the effort, cost, and schedule required for a software development project. Developed
by Barry Boehm in 1981, COCOMO uses a mathematical formula based on the size of the
software project, typically measured in lines of code (LOC).

What is the COCOMO Model?


The COCOMO Model is a procedural cost estimate model for software projects and is 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 1981
and is based on the study of 63 projects, which makes it one of the best-documented models.
The key parameters that define the quality of any software product, which are also an
outcome of COCOMO, are primarily effort and schedule:
1. Effort: Amount of labor that will be required to complete a task. It is measured in
person-months units.
2. Schedule: This simply means the amount of time required for the completion of the
job, which is, of course, proportional to the effort put in. It is measured in the units of
time such as weeks, and months.
Types of Projects in the COCOMO Model
In the COCOMO model, software projects are categorized into three types based on their
complexity, size, and the development environment. These types are:
1. 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.
2. Semi-detached: A software project is said to be a Semi-detached type if the vital
characteristics such as team size, experience, and knowledge of the various
programming environments lie in between 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 better guidance and
creativity. Eg: Compilers or different Embedded Systems can be considered Semi-
Detached types.
3. Embedded: A software project requiring the highest level of complexity, creativity,
and experience requirement falls 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.
Detailed Structure of COCOMO Model
Detailed COCOMO incorporates all characteristics of the intermediate version with an
assessment of the cost driver’s impact on each step of the software engineering process. The
detailed model uses different effort multipliers for each cost driver attribute. In detailed
COCOMO, the whole software is divided into different modules and then we apply
COCOMO in different modules to estimate effort and then sum the effort.
The Six phases of detailed COCOMO are:

Phases of COCOMO Model


1. Planning and requirements: This initial phase involves defining the scope,
objectives, and constraints of the project. It includes developing a project plan that
outlines the schedule, resources, and milestones
2. System design: : In this phase, the high-level architecture of the software system is
created. This includes defining the system’s overall structure, including major
components, their interactions, and the data flow between them.
3. Detailed design: This phase involves creating detailed specifications for each
component of the system. It breaks down the system design into detailed descriptions
of each module, including data structures, algorithms, and interfaces.
4. Module code and test: This involves writing the actual source code for each module
or component as defined in the detailed design. It includes coding the functionalities,
implementing algorithms, and developing interfaces.
5. Integration and test: This phase involves combining individual modules into a
complete system and ensuring that they work together as intended.
6. Cost Constructive model: The Constructive Cost Model (COCOMO) is a widely
used method for estimating the cost and effort required for software development
projects.
Types of COCOMO Model
There are three types of COCOMO Model:
 Basic COCOMO Model
 Intermediate COCOMO Model
 Detailed COCOMO Model

1. Basic COCOMO Model


 The Basic COCOMO model is a straightforward way to estimate the effort
needed for a software development project. It uses a simple mathematical
formula to predict how many person-months of work are required based on
the size of the project, measured in thousands of lines of code (KLOC).

2. Intermediate COCOMO Model


The basic COCOMO model assumes that the effort is only a function of the number of lines
of code and some constants evaluated according to the different software systems. However,
in reality, no system’s effort and schedule can be solely calculated based on Lines of Code.
For that, various other factors such as reliability, experience, and Capability. These factors are
known as Cost Drivers (multipliers) and the Intermediate Model utilizes 15 such drivers for
cost estimation.
3. Detailed COCOMO Model
Detailed COCOMO goes beyond Basic and Intermediate COCOMO by diving deeper into
project-specific factors. It considers a wider range of parameters, like team experience,
development practices, and software complexity. By analyzing these factors in more detail,
Detailed COCOMO provides a highly accurate estimation of effort, time, and cost for
software projects. It’s like zooming in on a project’s unique characteristics to get a clearer
picture of what it will take to complete it successfully.
Advantages of the COCOMO Model
1. Systematic cost estimation: Provides a systematic way to estimate the cost and effort
of a software project.
2. Helps to estimate cost and effort: This can be used to estimate the cost and effort of
a software project at different stages of the development process.
3. Helps in high-impact factors: Helps in identifying the factors that have the greatest
impact on the cost and effort of a software project.
4. Helps to evaluate the feasibility of a project: This can be used to evaluate the
feasibility of a software project by estimating the cost and effort required to complete
it.
Disadvantages of the COCOMO Model
1. Assumes project size as the main factor: Assumes that the size of the software is
the main factor that determines the cost and effort of a software project, which may
not always be the case.
2. Does not count development team-specific characteristics: Does not take into
account the specific characteristics of the development team, which can have a
significant impact on the cost and effort of a software project.
3. Not enough precise cost and effort estimate: This does not provide a precise
estimate of the cost and effort of a software project, as it is based on assumptions and
averages.

Putnam Resource Allocation Model


In software engineering, effective project management is crucial for delivering projects on
time and within budget. The Putnam Resource Allocation Model also known as the Putnam
Model is one of the models that are helpful in forecasting and resource distribution. Created
by Lawrence H. Putnam at the end of the 1970s, this model is used to define the rough order
of magnitude that has to be set as resources and schedule for a software development project.
It is founded on the dynamics of software project on the similar name, and it is especially
useful for large and intricate software projects.

What is the Putnam Model?


The Putnam Model is a formal tool used to quantify the cost, time, and effort required for
software project development. It operates on the principle that there is a trade-off between the
time available and the resources (effort) needed to complete a project. The model uses the
Rayleigh curve to illustrate how effort should be distributed over the project timeline.
The Rayleigh curve represents the distribution of effort over time, showing that effort
typically increases to a peak and then decreases as the project progresses. The core concept of
the Putnam Model is that the rate at which resources, including manpower, are applied to the
project impacts both the project’s costs and its delivery time.

Putnam’s Work Along with Equations


The basis for Putnam’s research is Rayleigh curve and Software Life Cycle Model (SLIM)
which he initiated. The SLIM model uses the following key equation, known as the Putnam-
Norden-Rayleigh (PNR) equation, to estimate effort: The SLIM model uses the following key
equation, known as the Putnam-Norden-Rayleigh (PNR) equation.

IMPORTANT QUESTIONS
5 Marks Questions
1. What is the purpose of the Constructive Cost Model (COCOMO) in software
engineering?
2. Explain the difference between COCOMO I and COCOMO II.
3. What are the main factors that affect software development costs in the
COCOMO model?
4. Define the Putnam Resource Allocation Model.
5. What is the significance of the effort multiplier in COCOMO?
6. Describe the basic formula for COCOMO.
7. How does the Putnam Resource Allocation Model allocate resources over the
course of a software project?
8. Explain the concept of scale drivers in COCOMO.
9. What is the purpose of the effort estimation in the COCOMO model?
10. Identify and explain one limitation of using the COCOMO model in estimating
software development effort.
10 Marks Questions
1. Compare and contrast the COCOMO model and the Putnam Resource
Allocation Model in terms of their approach to resource allocation and effort
estimation.
2. Describe the different levels of COCOMO and explain the types of projects
suitable for each level.
3. Explain the steps involved in applying the COCOMO model for effort estimation
in a software development project.
4. Discuss the importance of software cost estimation models like COCOMO and
Putnam in software project management.
5. How does COCOMO calculate the effort (person-months) required for a
project? Explain with the formula.
6. Discuss the concept of "Effort Multipliers" in the COCOMO model and give
examples of how they influence the estimation process.
7. Explain how the Putnam model allocates resources during the development life
cycle and how it influences the scheduling of activities.
8. What is the significance of the effort adjustment factors in COCOMO, and how
do they affect the estimation process?
9. How can COCOMO II be applied to modern software development practices,
and what adjustments does it make compared to the original COCOMO model?
10. Analyze the strengths and weaknesses of using COCOMO for estimating effort
in large-scale software projects.
15 Marks Questions
1. Critically analyze the applicability of the COCOMO model in agile software
development projects. Include a discussion on the challenges and how the model
can be adapted.
2. Explain the detailed workings of the Putnam Resource Allocation Model,
including its assumptions, equations, and how it differs from other software cost
estimation models.
3. Apply the COCOMO model to estimate the effort required for a software project
with a given set of parameters, including size, complexity, and environment.
Show all the steps involved in the estimation process.
4. Describe the various cost drivers in the COCOMO model. How do they impact
the final cost estimation of a software project? Provide examples of each cost
driver.
5. Discuss the role of the COCOMO model in software project risk management.
How does accurate effort estimation contribute to project success?
6. Evaluate the strengths and weaknesses of using the COCOMO and Putnam
models in estimating software costs for a large, distributed software development
project.
7. Using the Putnam Resource Allocation Model, discuss the concept of optimal
resource allocation during the lifecycle of a software project. How does this
influence project outcomes?
8. Discuss the evolution of COCOMO from its initial version (COCOMO I) to
COCOMO II, particularly focusing on the adjustments made to accommodate
newer software development methodologies and technologies.
9. Compare and contrast the COCOMO model's estimation process with that of
function point analysis. Which model is better suited for different types of
software projects?
10. Analyze a case study of a software development project where the COCOMO or
Putnam model was applied. Discuss the accuracy of the estimates, lessons
learned, and how the model helped or hindered the project's success.

You might also like