Annals of Software Engineering

, Volume 11, Issue 1, pp 15–44

Rules and Tools for Software Evolution Planning and Management

  • Meir M. Lehman
  • Juan F. Ramil

DOI: 10.1023/A:1012535017876

Cite this article as:
Lehman, M.M. & Ramil, J.F. Annals of Software Engineering (2001) 11: 15. doi:10.1023/A:1012535017876


When first formulated in the early seventies, the laws of software evolution were, for a number of reasons, not widely accepted as relevant to software engineering practice. Over the years, however, they have gradually become recognised as providing useful inputs to understanding of the software process. Now eight in number, they have been supplemented by the software uncertainty principle and the FEAST (Feedback, Evolution And Software Technology) hypothesis. Based on all these and on the further results of the FEAST research projects this paper develops and presents some fifty rules for application in software system process planning and management and indicates tools available or that could usefully be developed to support their application. The listing is structured according to the laws that encapsulate the observed phenomena and that lead to the recommendations. Each sublist is preceded by a textual discussion providing at least some of the reasoning that has led to the recommended procedures. The references direct the interested reader to the literature that records observed behaviours, interpretations, models and metrics obtained from industrially evolved systems, and from which the recommendations were derived.

assumptions E-type software FEAST feedback laws of software evolution software management process improvement rules for process planning and management software evolution 

Copyright information

© Kluwer Academic Publishers 2001

Authors and Affiliations

  • Meir M. Lehman
    • 1
  • Juan F. Ramil
    • 1
  1. 1.Department of ComputingImperial CollegeLondonUK

Personalised recommendations