Software Engineering-The Software Equation

The software equation is a dynamic multivariable model that assumes a specific distribution of effort over the life of a software development project. The model has been derived from productivity data collected for over 4000 contemporary software projects. Based on these data, an estimation model of the form

                       E = [LOC B0.333/P]3 (1/t4)     where
E = effort in person-months or person-years
t = project duration in months or years
B = “special skills factor”
P = “productivity parameter” that reflects:

Overall process maturity and management practices
The extent to which good software engineering practices are used
The level of programming languages used
The state of the software environment
The skills and experience of the software team
The complexity of the application

Typical values might be P = 2,000 for development of real-time embedded software; P = 10,000 for telecommunication and systems software; P = 28,000 for business systems applications. The productivity parameter can be derived for local conditions using historical data collected from past development efforts. It is important to note that the software equation has two independent parameters:
(1) an estimate of size (in LOC) and (2) an indication of project duration in calendar months or years.
To simplify the estimation process and use a more common form for their estimation model, Putnam and Myers  suggest a set of equations derived from the software equation. Minimum development time is defined as

                        tmin = 8.14 (LOC/P)0.43 in months for tmin > 6 months 
                        E = 180 Bt3 in person-months for E ≥ 20 person-months 
                        tmin = 8.14 (33200/12000)0.43
                        tmin = 12.6 calendar months
                        E = 180 0.28 (1.05)3
                        E = 58 person-months
Share this article :
Copyright © 2012. Best Online Tutorials | Source codes | Programming Languages - All Rights Reserved