Comoco Model

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 2

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 products, which are also an outcome of the
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.

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:

1. Planning and requirements


2. System design
3. Detailed design
4. Module code and test
5. Integration and test
6. Cost Constructive model

Phases of COCOMO Model


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 the constant to be used in
subsequent calculations. These characteristics of different system types are mentioned below.
Boehm’s definition of organic, semidetached, and embedded systems:
Importance of the COCOMO Model
1. Cost Estimation: To help with resource planning and project budgeting, COCOMO offers a
methodical approach to software development cost estimation.
2. Resource Management: By taking team experience, project size, and complexity into
account, the model helps with efficient resource allocation.
3. Project Planning: COCOMO assists in developing practical project plans that include
attainable objectives, due dates, and benchmarks.
4. Risk management: Early in the development process, COCOMO assists in identifying and
mitigating potential hazards by including risk elements.
5. Support for Decisions: During project planning, the model provides a quantitative foundation
for choices about scope, priorities, and resource allocation.
6. Benchmarking: To compare and assess various software development projects to industry
standards, COCOMO offers a benchmark.
7. Resource Optimization: The model helps to maximize the use of resources, which raises
productivity and lowers costs.

COCOMO-II is the revised version of the original Cocomo (Constructive Cost Model) and was
developed at the University of Southern California. It is the model that allows one to estimate the cost,
effort, and schedule when planning a new software development activity.
Sub-Models of COCOMO Model
COCOMO Sub-models
1. End User Programming
Application generators are used in this sub-model. End user write the code by using these application
generators. For Example, Spreadsheets, report generator, etc.
2. Intermediate Sector
COCOMO Intermediate Sector

● Application Generators and Composition Aids: This category will create largely
prepackaged capabilities for user programming. Their product will have many reusable
components. Typical firms operating in this sector are Microsoft, Lotus, Oracle, IBM, Borland,
Novell.
● Application Composition Sector: This category is too diversified and to be handled by
prepackaged solutions. It includes GUI, Databases, domain specific components such as
financial, medical or industrial process control packages.
● System Integration: This category deals with large scale and highly embedded systems.

3. Infrastructure Sector
This category provides infrastructure for the software development like Operating System, Database
Management System, User Interface Management System, Networking System, etc.
Stages of COCOMO II
Stages of COCOMO
1. Stage-I
It supports estimation of prototyping. For this it uses Application Composition Estimation Model. This
model is used for the prototyping stage of application generator and system integration.
2. Stage-II
It supports estimation in the early design stage of the project, when we less know about it. For this it
uses Early Design Estimation Model. This model is used in early design stage of application
generators, infrastructure, system integration.
3. Stage-III
It supports estimation in the post architecture stage of a project. For this it uses Post Architecture
Estimation Model. This model is used after the completion of the detailed architecture of application
generator, infrastructure, system integration.
Master Software Testing and Automation in an efficient and time-bound manner by mentors with real-
time industry experience. Join our Software Automation Course and embark on an exciting journey,
mastering the skill set with ease!

You might also like