Skip to main content
Log in

COCOMO-Based Effort Estimation for Iterative and Incremental Software Development

  • Published:
Software Quality Journal Aims and scope Submit manuscript

Abstract

Incremental software development and delivery have been used in software projects in many ways for many years. Justifications for incremental approaches include risk amelioration, the management of evolving requirements, and end-user involvement. Incremental development, including iterative, incremental delivery, has become a norm in many sectors. However, there has been little work on modelling the effort in such development and hence a dearth of comparative analyses of cost models for incremental development/delivery. We attempt to rectify this by proposing a COCOMO-style effort model for incremental development/delivery and explore the relationship between effort and the number of increments, thereby providing new insights into the economic impact of incremental approaches to software projects.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Basili, V.R. and Turner, A.J. 1975. Iterative enhancement?a practical technique for software development, IEEE Transactions on Software Engineering SE-1-4: 390–396.

    Google Scholar 

  • Beck, K. 2000. Extreme Programming Explained, Reading, MA, Addison-Wesley.

    Google Scholar 

  • Bennington, H.D. 1995. Production of large computer programs, Annals of the History of Computing 5(4): 350–361.

    Google Scholar 

  • Berrisford, T. and Wetherbe, J. 1979. Heuristic development: A redesign of systems design, MIS Quarterly 3(1): 11–19.

    Google Scholar 

  • Boehm, B.W. 1981. Software Engineering Economics, Englewood Cliffs, NJ, Prentice-Hall.

    Google Scholar 

  • Boehm, B.W., Abts, C., Brown, A.W., Chulani, S., Clark, B.K., Horowitz, E., Madachy, R., Reifer, D., and Steece, B. 2000. Software Cost Estimation with COCOMO II, Upper Saddle River, NJ, Prentice-Hall.

    Google Scholar 

  • Boehm, B. 2002. Get ready for agile methods, with care, IEEE-CS Computer 35(1).

  • Booch, G. 1996. Object Solutions: Managing the Object Oriented Project, Reading, MA, Addison-Wesley.

    Google Scholar 

  • Brooks, F.P. 1975. The Mythical Man-Month, Reading, MA, Addison-Wesley.

    Google Scholar 

  • Brooks, F.P. 1987. No silver bullet: Essence and accidents of software engineering, IEEE Computer 20(4): 10–20.

    Google Scholar 

  • Capers Jones, T. 1998. Estimating Software Costs, New York, McGraw-Hill.

    Google Scholar 

  • Clark, B., Devnani-Chulani, S. and Boehm, B. 1998. Calibrating the COCOMO II post-architecture model, Proceedings of ICSE 1998, IEEE Press.

  • Constantine, L.L. and Yourdon, E. 1978. Structured Design, Englewood Cliffs, NJ, Prentice-Hall.

    Google Scholar 

  • Cusumano, M.A. and Selby, R.W. 1995. Microsoft Secrets: How the World's Most Powerful Company Creates Technology, Shapes Markets, and Manages People, New York, Free Press.

    Google Scholar 

  • Cusumano, M.A. and Yoffle, D.B. 1999. Software development in Internet time, IEEE Computer 32(10): 60–69.

    Google Scholar 

  • Dalcher, D. 2002. Life cycle design and management, In Project Management Pathways: A Practitioner's Guide, ed. M. Stevens, The Association for Project Management, High Wycombe, APM.

    Google Scholar 

  • Elbaum, S.G. and Munson, J.C. 1998. Code churn: A measure for estimating the impact of code change, Proc. IEEE-CS International Conference on Software Maintenance, Bethesda, IEEE Press, pp. 24–33.

    Google Scholar 

  • Elssamadisy, A. and Schalliol, G. 2002. Recognizing and responding to “Bad Smells” in extreme programming, Proc. ICSE 2002, Orlando, IEEE Press, pp. 617–622.

    Google Scholar 

  • Giddings, R.V. 1984. Accommodating uncertainty in software design, Communications of the ACM 27(5): 428–434.

    Google Scholar 

  • Gilb, T. 1997. EVO: The Evolutionary Project Managers Handbook, unpublished manuscript.

  • Gilb, T. 1988. Principles of Software Engineering Management, Wokingham, Addison-Wesley.

    Google Scholar 

  • Goldberg, A. and Rubin, K. 1995. Succeeding with Objects, Reading, MA, Addison-Wesley.

    Google Scholar 

  • Graham, D.R. 1989. Incremental development: Review of nonmonolithic life-cycle development methods, Information and Software Technology 31(1).

  • Graham, D.R. 1992. Incremental development and delivery for large software systems, IEEE Computer 25(11): 1–9.

    Google Scholar 

  • Hess, W. 1996. Theory and practice of the software process-a field study and its implications for project management, Proc. Software process Technology, 5th European Workshop, WESPT 96, Lecture Notes in Computer Science, Vol. 1149, Berlin, Springer, pp. 241–256.

    Google Scholar 

  • Krutchen, P. 2000. The Rational Unified Process, London, Longman.

    Google Scholar 

  • Krzanik, L. 1988. Enactable models for quantitative evolutionary software processes, Proc. the 4th International Software Process Workshop on Representing and Enacting the Software Process, April 1988, ACM SIGSOFT Software Engineering Notes, Vol. 14, p. 4.

  • Lehman, M.M. 1969. The programming process, IBM Research Report RC2722M. IBM Research Centre, Yorktown Heights, September 1969, In Program Evolution-Processes of Software Change, eds. M.M. Lehman and L.A. Belady, London, Academic Press, 1985.

    Google Scholar 

  • Lehman, M.M. 2000. Rules and tools for software evolution planning and management, FEAST2000, Imperial College, London, July, pp. 53–68.

    Google Scholar 

  • Lehman,M.M. and Ramil, J.F. 2001. An approach to a theory of software evolution, Proc. International Workshop on Principles of Software Evolution-IWPSE 2001 (Keynote) Vienna.

  • Mills, H.D. 1971. Top-down programming in large systems, In Debugging Techniques in Large Systems, ed. R. Ruskin, Prentice-Hall, pp. 41–55.

  • Mills, H.D. 1976. Software Development, IEEE Transactions on Software Engineering SE-2(6): 265–273.

    Google Scholar 

  • Mills, H.D. 1980. Incremental software development, IBM Systems Journal 19(4).

  • Mills, H.D., Dyer, M. and Linger, R.C. 1987. Cleanroom software engineering, IEEE Software 4(3): 19–24.

    Google Scholar 

  • Musa, J.D. 1993. Operational profiles in software-reliability engineering, IEEE Software 10(2): 14–32.

    Google Scholar 

  • Parnas, D.L. 1979. Designing software for EASE of extension and contraction, IEEE Transactions on Software Engineering SE-5(2): 128–138.

    Google Scholar 

  • Podalsky, J.L. 1977. Horace builds a cycle, Datamation, November: 162–168.

  • Royce, W. 1998, Software Project Management, A Unified Framework, Reading, MA, Addison-Wesley.

    Google Scholar 

  • Royce, W.E. 1990. TRW's Ada process model for incremental development of large software systems, Proc. 12th International Conference on Software Engineering, ICSE 12, IEEE Press, pp. 2–11.

    Google Scholar 

  • Royce, W.W. 1970. Managing the development of large software systems, Proc. IEEE WESCON 1970, IEEE Press.

  • Royce, W.W. 1990. Pragmatic quality metrics for evolutionary software development models, Proc. the ACMConference on TRI-ADA '90, Baltimore, pp. 551–563.

  • Stapleton, J. 1997. DSDM Dynamic Systems Development Method, Wokingham, Addison-Wesley.

    Google Scholar 

  • Zahran, S. 1997. Software Process Improvement, Harlow, England, Addison-Wesley.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Benediktsson, O., Dalcher, D., Reed, K. et al. COCOMO-Based Effort Estimation for Iterative and Incremental Software Development. Software Quality Journal 11, 265–281 (2003). https://doi.org/10.1023/A:1025809010217

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1025809010217

Navigation