Evolutionary development

  title={Evolutionary development},
  author={Tom Gilb},
  journal={ACM Sigsoft Software Engineering Notes},
  • T. Gilb
  • Published 1981
  • Computer Science
  • ACM Sigsoft Software Engineering Notes
For at least thirteen years, I have practiced a form of software syste m development that I would now call "evolutionary", but for which I ha d no name to begin with . In recent years, I have started to write abou t the method, to develop its methodology, and to try to expand m y understanding of its attributes [1,21 . In my international courses an d consultancy, I have been more and more amazed to note the followin g facts . 
Approach to a theory of software evolution
The author summarises his most recent results outlining a proof that every E-type program reflects an unbounded number of assumptions about the application implemented, supported or modelled by the program, and that some of these become invalid over time as a consequence of changes in the dynamic real world. Expand
Experience with evolutionary prototyping in a large software project
This paper first takes a broad look at the approaches to prototyping and then describes a large software project which employed an evolutionary prototyping approach, concluding that, in contrary to some previous suggestions, evolutionary prototypeing in not limited to small scale software and can cope with large projects as well. Expand
Rules and Tools for Software Evolution Planning and Management
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. Expand
Towards a theory of software evolution - and its practical impact
  • M. Lehman, J. F. Ramil
  • Computer Science
  • Proceedings International Symposium on Principles of Software Evolution
  • 2000
The need for such a theory, underlying concepts and the contribution that a theory could make to achieving greater software evolvability and improved planning and management for effective and responsive evolution are discussed. Expand
SERIOUS: Software Evolution, Refactoring, Improvement of Operational  and Usable Systems
The application of evolutionary software development resulted in changes in the state-of-practice, yielding reduced total development costs and increased product lifetimes for the participating business units. Expand
1. MOTIVATION Should the Waterfall model be dropped in favour of more modern approaches such as incremental development and eXtreme Programming? Many developers appear to show a preference for suchExpand
Agile management of uncertain requirements via generalizations: a case study
This paper uses quantitative process data to argue that the deliberate development of an evolvable design, based upon extensions and variations to the requirements, and the generality derivable from the implemented system, may provide agility within a more traditional development, showing that the two concepts are interchangeable, to some extent. Expand
A Taxonomy of Software Development Environments and their Applicabilities to Supporting Evolutionary Information Systems Development
  • M. Er
  • Computer Science
  • 1990
It is pointed out that the harmonious integration of the methodological tools provided by the evolutionary information systems development and the software maintenance problem caused by the evolution of software can be alleviated. Expand
Iterative and incremental developments. a brief history
Although many view iterative and incremental development as a modern practice, its application dates as far back as the mid-1950s. Prominent software-engineering thought leaders from each succeedingExpand
Software Engineering Processes for Self-Adaptive Systems
It is argued how the traditional software engineering process needs to be reconceptualized to distinguish both development-time and run-time activities, and to support designers in taking decisions on how to properly engineer such systems. Expand


Iterative enhancement: A practical technique for software development
The development and quantitative analysis of a production compiler for the language SIMPL-T is used to demonstrate that the application of iterative enhancement to software development is practical and efficient, encourages the generation of an easily modifiable product, and facilities reliability. Expand