Project Estimate Using COCOMO II
The COCOMO II model can be used in developing estimates for various functions such as performing tradeoffs and in transaction processing. COCOMO II provides individuals with a wide variety of techniques and technologies. COCOMO II provides the much needed support for business software and also in object-oriented software application. The most important use of the COCOMO II model is in estimating the number of individuals who can successfully develop and implement a project. Cost estimation is important since it helps the management to make informed decisions. It helps in establishing competitive bid contracts and also in determining a reliable budget (Cook, David, & Leishman, 2004).
Estimation models can be generated simply by assessing particular characteristics of past projects such as team size, duration, disk usage, and cost. Small projects can be modelled as follows: EFFORT = a*Size + b (Cook, David, & Leishman, 2004). The magnitude in this case is given by linear function which gives the size of the project. This can be applied in projects that can be handled by a maximum of three persons. The early design model in COCOMO II can be used to make rough estimates in the early stages of its architecture development. This employs a range of new cost drivers and estimating equations. COCOMO II comprises of 17 cost drivers. In order to set up each cost driver, a user is supposed to carefully assess the development environment, assess the project, and the entire team to implement the project. Cost drivers show the multiplicative ability of the entire project in terms of costs. For instance, if the team is to develop a type of software that controls flight on an airplane, then the cost driver’s required software reliability would be very high. For example, an effort multiplier of about 2.6 would be used.
The COCOMO II model makes it possible to estimate the required effort. This is measured in the number of persons-months (Musilek et al., 2002). This is based primarily on the estimate of the software project size which is given or measured per thousand Source Lines of Code (SLOC). Effort = 2.94*EAF*(KSLOC)E. EAF simply refers to Effort Adjustment Factor that is obtained from cost drivers. ‘E’ is the exponent that is obtained from a maximum of five scale drivers. For instance, it is common to assign an Effort Adjustment Factor of 1.00 for a project will all Scale Drivers and Nominal Cost Drivers. The exponent for this can be taken as 1.0997. The assumption here is that the project will have 2,000 source lines of code. COCOMO II projection is that the entire project requires 6.3 Person-Months of effort. The equation can be written as:
Effort = 2.94 x 1.0 x 21.0997 = 6.3.
Efffort Adjustment Factor is taken to be the product of effort multipliers that are in accordance to thee cost drivers of the entire project. In projects which are rated very high in terms of complexity (1.34 as the effort multiplier), with low tools and language experience (1.09 as the effort multiplier), and with nominal cost drivers (1.00 as the effort multiplier), then the EAF is taken as the product of both effort multipliers. Effort Adjustment Factor = 1.34 x 1.09 = 1.46. Effort = 2.94 x (1.46) x (2)1.0997 = 99.2 Person-Months. The schedule equation can be used to analyze the number of months it would take to complete the entire project. The project duration is given by effort projected by the effort equation (Musilek et al., 2002). The COCOMO II calculations are based on the projections of the project size as given by the Source Lines of Code. Source lines included in the project are those delivered as a component of the product itself. Support software and test drivers are thus excluded. In addition, the source lines recognized are those made by thee project stuff. This excludes those generated by applications.
COCOMO II model also tries to give a sufficient size estimate. This can be difficult especially if the only data available is one which involves effort. The new code must be included in the calculations in order to give an accurate estimate. The normal application development entails the use code reused from places (can be modified or used as it is), new code development, or automatically translated code. Adjustment factors enable the programmers to capture alteration in codes and testing and the quantity of design. This also takes into consideration the programmers’ familiarity or knowledge of code and their general understanding. COCOMO II model assumes a number of aspects especially in relation to the application size in KSLOC (Cook, David, & Leishman, 2004).
Cook, D., David, A., & Leishman, T. R. (2004). Lessons Learned From Software Engineering Consulting. The Journal of Defense Software Engineering, 17(2), 4-6.
Musilek, P., Pedrycz, W., Nan, S., & Succi, G. (2002). On the sensitivity of COCOMO II software cost estimation model. Proceedings of the Eighth IEEE Symposium on Software Metrics.