A modification was made in previously developed cost estimation models and new a model for cost estimation, called COCOMO II, was developed. This model was developed for estimating the cost in recent software systems. In the COCOMO technique the primary item needed is the system component which is generated from scratch and is also referred to as the new code. However, in COCOMO II, the primary requirement is a system component created from scratch but an alteration can be made based on the necessity that is referred to as reuse code.
If COCOMO II modeling of cannot be accomplished, then the pre-existing component’s source code is not accessed. The component is used as it is, only the executable file is accessed. At most, a surrounding component software shell for adopting its functionality is built. This model has three forms:
- (1) Application Composition.
- (2) Early Design.
- (3) Post Architecture.
The Post Architecture model found in this has the direct link with Constructive Commercial Off-the-Shelf Cost Model (COCOTS).
COCOMO II builds upon the basic modeling equation. Many models related to software estimation will depend on this model because this is termed as the standard model.
В refers to an exponential factor which deals with nonlinear diseconomies or economics of scale that might accumulate when the size of the software increases.
Size refers to the size of the software project that is to be developed (normally specified within the source code, however new measures were occasionally utilized, e.g., object points, function points, etc.
A refers to a multiplicative conversion constant that links the software program size with the development effort.
Effort refers to effort estimated in software development (generally assumed in person-months).
The Post Architecture model, as the name suggests, is typically used after the software architecture is well defined and established. It estimates the entire development life cycle of the software product and is a detailed extension of the Early Design model. This model is the closest in structure and formulation to the Intermediate COCOMO 81 and Ada COCOMO models. It uses Source Lines of Code and/or Function Points for the sizing parameter, adjusted for reuse and breakage; a set of 17
effort multipliers and a set of five scale factors that determine the economies/disec- onomies. The replacement of the developed COCOMO 81 model can be made with five scale factors as well as the improvement in the Ada COCOMO model.
Suppose a system for office automation is to be designed. It is clear from the requirements that there will be four modules of size 1.5 KLOC, 2.5 KLOC, 1.0 KLOC, and 3.0 KLOC respectively. The size of the application database is high (1.08), people working of virtual m/c have low experience (0.87) and software tools are intensively used in development (0.83). All other factors are of nominal rating. Use the COCOMO model to determine overall costand schedule estimates.
The size of the project will be the sum of all four modules, thus:
Since size is less than 50 KLOC, thus the mode of project will be Organic.
In the exercise, there are details about complexity factors, so to estimate the effort the intermediate COCOMO model will be applied.
The COCOTS was developed for the purpose of performing various highlights and conditions. The following are four basic conditions of COCOTS:
- (1) Calculating the candidate commercial off the shelf (COTS) component.
- (2) Tailoring the COTS component.
- (3) The design and evaluation of any sort of incorporation which is necessary for including the COTS component into a bigger system. This process is also referred to as “glue code”.
- (4) Because of volatility the level of programming and evaluation in software systems is enhanced.
Assessment: This is referred to the function in which the COTS components were chosen for utilization in the development of bigger systems.
Tailoring: This refers to the activity that is carried out for generating specified COTS programs for the purpose of utilization, the system in which it is involved will not be taken into account, even in case of a standalone operating system. The processes that come under this are setting up security protocols, specifying I/O screens or report formats, and initializing parameter values.
Glue code: The new code exterior to the COTS component will be designed and evaluated to include it in a larger system. For the specified context this determined code is distinctive within the COTS component. This process must not be correlated or confused with the above-mentioned tailoring process.
Volatility: The frequency at which the updated or newer version of COTS software is made in order to be effectively used in a larger system. The release of this larger system will be made through vendors in the event of the system’s subsequent deployment and development (Construx Software, ISBSG).