Skip to main content

Laws of software evolution revisited

  • Process Model Evolution Session
  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1149))

Abstract

Data obtained during a 1968 study of the software process [8] led to an investigation of the evolution of OS/360 [13] and and, over a period of twenty years, to formulation of eight Laws of Software Evolution. The FEAST project recently initiated (see sections 4–6 below) is expected to throw additional light on the phenomenology underlying these laws, to increase understanding of them, to explore their finer detail, to expose their wider relevance and implications and to develop means for their beneficial exploitation. This paper is intended to trigger wider interest in the laws and in the FEAST study of feedback and feedback control in the context of the software process and its improvement to ensure beneficial exploitation of their potential.

Numbered in order of formulation and publication. Over the years the names and detailed wording of some of the laws have been modified but the underlying understanding they reflect has remained essentially the same

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Baumol W J: Macro-Economics of Unbalanced Growth; The Anatomy Of Urban Cities. Am. Econ. Rev. June 1967, pp. 415–426.

    Google Scholar 

  2. Becker R S, Hall B, and Rustem B: Robust Optimal Control of Stochastic Nonlinear Economic Systems. J. of Economic Dynamics and Control, n. 18, 1994,pp. 125–148.

    Google Scholar 

  3. Belady L A and Lehman M M: An Introduction to Program Growth Dynamics. In Statistical Computer Performance Evaluation. W Freiburger (ed), Academic Press, New York, 1972, pp. 503–511.

    Google Scholar 

  4. Brooks F: The Mythical Man Month. Addison-Wesley, Reading, MA., 1975, 2nd ed. 1993, p. 206.

    Google Scholar 

  5. Chong Hok Yuen C K S: Phenomenology of Program Maintenance and Evolution. PhD Thesis, Dept. of Comp., Imp. Col., 1981.

    Google Scholar 

  6. M M Lehman (ed.): Preprints of the three FEAST Workshops, Dept. of Comp., ICSTM, 1994/5.

    Google Scholar 

  7. Lawrence M J: An Examination of Evolution Dynamics. Proc. Proc. 6th Int. Conf. on Softw. Eng., Tokyo, Japan, 13–16 Sep. 1982. IEEE Comp. Soc. ord. n. 422, IEEE cat. n.81CH1795-4, pp. 188–196.

    Google Scholar 

  8. Lehman M M: The Programming Process. IBM Res. Rep. RC 2722, IBM Res. Centre, Yorktown Heights, NY 10594, Sept. 1969.

    Google Scholar 

  9. Lehman M M: Programs, Cities, Students, Limits to Growth?, Inaugural Lecture, May 1974. Publ. in Imp. Col ofSc. Tech. Inaug.l Lect. Ser., vol 9, 1970, 1974, pp. 211–229. Also in Programming Methodology, (D Gries ed.), Springer, Verlag, 1978, pp. 42–62.

    Google Scholar 

  10. Lehman M M: Laws of Program Evolution — Rules and Tools for Programming Management. Proc. Infotech State of the Art Conf., Why Software Projects Fail, Apr. 1978, pp. 11/1 11/25.

    Google Scholar 

  11. Lehman M M: On Understanding Laws, Evolution and Conservation in the Large Program Life Cycle. J. of Sys. and Software, 1:3, 1980, pp. 213–221.

    Google Scholar 

  12. Lehman M M: Programs, Life Cycles and Laws of Software Evolution. Proc. IEEE Special Issue on Software Engineering, 68:9, Sept. 1980, pp. 1060–1076.

    Google Scholar 

  13. Lehman M M and Belady L A: Program Evolution — Processes of Software Change. Academic Press, London, 1985, pp. 538.

    Google Scholar 

  14. Lehman M M: Uncertainty in Computer Application and its Control Through the Engineering of Software. J. of Software Maintenance: Research and Practice, 1:1, Sept. 1989, pp. 3–27.

    Google Scholar 

  15. Lehman M M: Software Engineering, the Software Process and Their Support. IEE Softw. Eng. J. Spec. Iss. on Software Environments and Factories, Sept. 1991, 6:5, pp. 243–258.

    Google Scholar 

  16. Lehman M M: Process Improvement — the Way Forward. Proc. CAiSE 95, Jyvaskyla, June 1995, Lect. Notes in Comp. Sci., Springer Verlag, pp. 1–11.

    Google Scholar 

  17. Lehman M M, Perry D E and Turski W M: Why is it so hard to find Feedback Control in Software Processes? Invited Talk, Proc. of the 19th Australasian Comp. Sc. Conf., Melbourne, Australia, 31 Jan–Feb 2 1996. pp. 107–115.

    Google Scholar 

  18. Lehman M M and Stenning V: FEAST/1: Case for Support, ICSTM, March 1996.

    Google Scholar 

  19. Ould M A: Business Processes — Modelling and Analysis for Re-engineering and Improvement. Wiley, Chichester, 1995.

    Google Scholar 

  20. Scarrott G A: Private communication, June 1993.

    Google Scholar 

  21. W M Turski: Reference Model for Smooth Growth of Software Systems. U. of Warsaw, June 1996, Submitted for publication, available for perusal only from Prof. W M Turski, Dept. of informatics, University of Warsaw, Banacha 2, 00-903 Warsaw 59, Poland.

    Google Scholar 

  22. Wilkes M V, Wheeler D J and Gill S: The Preparation of Programs for an Electronic Digital Computer. Addison Wesley Press Inc., 1951, 167 pp.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Carlo Montangero

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lehman, M.M. (1996). Laws of software evolution revisited. In: Montangero, C. (eds) Software Process Technology. EWSPT 1996. Lecture Notes in Computer Science, vol 1149. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0017737

Download citation

  • DOI: https://doi.org/10.1007/BFb0017737

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-61771-6

  • Online ISBN: 978-3-540-70676-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics