A simple stand - alone software utility is to be developed in ’C’ programming by a team of software experts for a computer running Linux and the overall size of this software is estimated to be 20,000 lines of code. Considering (a, b) = (2.4, 1.05) as multiplicative and exponention factor for the basic COCOMO effort estimation equation and (c, d)=(2.5, 0.38) as multiplicative and exponention factor for the basic COCOMO development time estimation equation, approximately how long does the software project take to complete ?
11.52 months
This problem asks us to estimate the development time for a simple software utility using the Basic COCOMO (Constructive Cost Model) estimation model. COCOMO is a widely used model for estimating the effort, cost, and schedule for software projects.
The Basic COCOMO model provides equations to estimate Effort (in Person-Months) and Development Time (in Months) based on the estimated size of the software, typically measured in Kilo Lines of Code (KLOC).
The basic COCOMO formulas are:
Where:
First, let's identify the given information from the problem:
Step 1: Convert lines of code to KLOC.
The size is given as 20,000 lines of code. We need to convert this to KLOC.
KLOC = $\frac{\text{Lines of Code}}{1000}$
KLOC = $\frac{20,000}{1000} = 20$
So, the size of the software is 20 KLOC.
Step 2: Calculate the estimated Effort using the COCOMO effort equation.
Using the formula E = $a \times (\text{KLOC})^b$ with $a=2.4$, $b=1.05$, and KLOC $= 20$:
Effort = $2.4 \times (20)^{1.05}$
Let's calculate $(20)^{1.05}$. Using a calculator, $20^{1.05} \approx 23.23
Effort $\approx 2.4 \times 23.23$
Effort $\approx 55.752$ Person-Months
Step 3: Calculate the estimated Development Time using the COCOMO development time equation.
Using the formula D = $c \times (\text{Effort})^d$ with $c=2.5$, $d=0.38$, and Effort $\approx 55.752$:
Development Time = $2.5 \times (55.752)^{0.38}
Let's calculate $(55.752)^{0.38}$. Using a calculator, $55.752^{0.38} \approx 4.609
Development Time $\approx 2.5 \times 4.609$
Development Time $\approx 11.5225$ Months
Based on the Basic COCOMO model with the given parameters and estimated size of 20 KLOC, the approximate software project development time is 11.5225 months.
Comparing this result with the given options:
Our calculated development time of approximately 11.52 months closely matches one of the options.
| COCOMO Factor | Value | Description |
|---|---|---|
| KLOC | 20 | Software size in thousands of lines of code |
| a | 2.4 | Effort multiplicative factor (Basic COCOMO) |
| b | 1.05 | Effort exponentiation factor (Basic COCOMO) |
| c | 2.5 | Development Time multiplicative factor (Basic COCOMO) |
| d | 0.38 | Development Time exponentiation factor (Basic COCOMO) |
| Effort (E) | $\approx 55.75$ Person-Months | Total effort required for the project |
| Development Time (D) | $\approx 11.52$ Months | Calendar time required to complete the project |
The basic COCOMO model uses different sets of coefficients (a, b, c, d) depending on the complexity or "mode" of the software project. The three main modes in Basic COCOMO are:
The coefficients (2.4, 1.05) for effort and (2.5, 0.38) for development time provided in this problem correspond to the Organic Mode in the standard basic COCOMO model. This fits well with the description of developing a "simple stand-alone software utility" by "software experts".
COCOMO also has Intermediate and Detailed versions that include cost drivers, which are factors that influence effort and schedule, such as product attributes, hardware attributes, personnel attributes, and project attributes.
In ______ model, software is developed in a series of incremental releases.
In _______ model, software is developed in a series of incremental releases.
I. Spiral
II. Sequential
Among the following, which option describes a functional requirement?
A software development firm is planning a new project involving a data analytics tool. The project is estimated to have $25000$ lines of code. Using the basic COCOMO model, the firm wants to estimate the effort in person-months. For this project type, the multiplicative factor is given as $2.8$, and the exponentiation factor is $1.2$. What is the estimated effort in person-months?
COCOMO stands for _______