What is the formula of effort in Cocomo model for organic project?

COCOMO model | How to calculate effort, staffing and Duration of Project from Navjyotsinh Jadeja

COCOMO Model For Effort Estimation from grandhiprasuna

COCOMO or Constructive Cost Estimation Model is a model that estimates the effort and time taken to complete the model based on the size of the source code. It includes 15 multiplying factors from different attributes of the project, and finally calculates time and effort using this information. 

The COCOMO model first divides the software based on its size. Let us first understand how each software is differentiated.

Software Project Type

The Cocomo model divides software projects into 3 types-

  • Organic
  • Semi-detached
  • Embedded

Let us learn about them one by one.

ORGANIC – A software development project comes under organic type if the development team is small, the problem is not complex, and has been solved before. Also, a nominal experience of team members is considered. Some of the projects that can be organic are- small data processing systems, basic inventory management systems, business systems.


SEMIDETACHED –  A software project that is in-between the organic and embedded system is a semi-detached system. Its characteristics include – a middle-sized development team, with a mix of both- experienced and inexperienced members, and the project complexity is neither too high nor too low.

The problems faced in this project are a few known and a few unknown, which have never been faced before. Few such projects are- Database Management System(DBMS), new unknown operating system, difficult inventory management system.


EMBEDDED – A project requiring a large team with experienced members, and having the highest level of complexity is an embedded system. The members need to be creative enough to be able to develop complex models. Such projects include- air traffic models, ATMs, complex banking systems, etc.


Types of COCOMO Model

The different types of COCOMO models define the depth of cost estimation is required for the project. It depends on the software manager, what type of model do they choose. 

According to Boehm, the estimation should be divided into 3 stages-

  • Basic Model
  • Intermediate Model
  • Detailed Model

Boehm had set different expressions to calculate effort and development time through KLOC (Kilo line of code). All these calculations are roughly correct and not exact because of the absence of sufficient factors.

Basic Model – This model is based on rough calculations thus, there is very limited accuracy. The whole model is based on only lines of source code to estimate the calculation and other factors are neglected.

Intermediate Model – The intermediate model dives deeper and includes more factors such as cost drivers into the calculation. This enhances the accuracy of estimation. The cost driver includes attributes like reliability, capability, and experience.

These cost drivers can be classified under-

  1. Product attributes
    • size of the application’s database
    • the complexity of the product
    • software’s reliability extent

  2. Hardware attributes
    • Total turnabout time
    • Memory constraints
    • Run-time performance constraints

  3. Project attributes
    • software tools used
    • required development schedule

  4. Personnel attributes
    • Applications experience
    • Coding experience
    • Software developer’s capability
    • Analyst experience

Detailed Model – The detailed model or the complete model includes all the factors of the both-the basic model and the intermediate model. In the detailed model for each cost driver property, various effort multipliers are used.

The whole software is divided into smaller phases and then the COCOMO calculations or model is applied to them.  The effort is then estimated and then the sum of the efforts is calculated.

The software is divided into 6 different phases namely- 

  1. Planning and requirements
  2. System structure
  3. Integration and test
  4. Cost Constructive model
  5. Complete structure
  6. Module code and test

Calculation

The effort and the time taken to complete both are calculated through predefined equations.

The formula used is-

Effort(E)= a*(KLOC)^b  PM(Person month)
Time = c(E)d
Person Required = effort/time

Where, 
KLOC = size of the product i.e. no. of lines of code.
a, b, c, d are constants and have different values for different models.
Time is the time required to develop the product and the unit is months.
And the effort is the total effort calculated that will be required to complete the work calculated in PM (Person Months).

If the constants are replaced by actual values, then the equations will be- 

Organic-
E = 2.4(KLOC) 1.05 PM
T = 2.5(E) 0.38 Months

Semi-detached-
E= 3.0(KLOC) 1.12 PM
T = 2.5(E) 0.35 Months

Embedded-
E= 3.6(KLOC) 1.20 PM
T= 2.5(E) 0.32 Months

This is how the effort and time taken to complete the project are calculated.

Conclusion

Although neither of these calculations is precise still it gives a rough idea or estimation about the cost of the project and time taken to complete it. Considering these factors the model does help and keeps transparency between the client and the developers.

However, it comes with its disadvantages. Like, it does not consider factors like customer skills, cooperation, knowledge, and some other parameters. And as it is dependent on a few factors thus if the actual time taken is more than the calculation then it affects the project as a whole.

Thus it is always advised to be cautious while depending on any such practice or method.

What is the formula of effort in Cocomo model for organic project?

Kuldeep Rana

Kuldeep is the founder and lead author of ArtOfTesting. He is skilled in test automation, performance testing, big data, and CI-CD. He brings his decade of experience to his current role where he is dedicated to educating the QA professionals. You can connect with him on LinkedIn.

What is the formula to calculate effort in COCOMO?

Calculate the effort estimate by multiplying the initial estimate with all the multiplying factors i.e., multiply the values in step1 and step2.

What is the unit of effort in organic Cocomo model?

The Basic COCOMO 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.

How effort and development time is calculated in basic Cocomo?

Basic COCOMO Model It requires to calculate the efforts which are required to develop in three modes of development that are organic mode, semi-detached mode, and embedded mode. Where, E is effort applied in person-months. D is development time in months.

What are effort multipliers in Cocomo II model?

The value of n, the number of effort multipliers, EMi, is 16 for the Post-Architecture model effort multipliers, EMi, and 6 for the Early Design model. SFj stands for the exponential scale factors. The values of A, B, EM1, …, EM16, SF1, …, and SF5 for the COCOMO II.