A Brief Top-Down and Bottom-Up Philosophy on Software Evolution

  • Authors:
  • Markus Pizka;Andreas Bauer

  • Affiliations:
  • Technische Universität München, Germany;Technische Universität München, Germany

  • Venue:
  • IWPSE '04 Proceedings of the Principles of Software Evolution, 7th International Workshop
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

The decision on whether to proceed top-down or bottom-up during software development has a strong and underestimated impact on the quality of the final product including its later evolvability. Various examples for both strategies taken from such different domains as operating systems and computer games provide evidence that bottom-up developed systems are more suitable for future evolution. The reasons for this range from the increased compositionality of bottom-up developed artefacts at the technical level up to a greater independence from certain requirements which constitute the most transient part of a software system. Besides those advantages concerning evolvability, the negative effects of bottom-up orientation can not be ignored. Furthermore, proceeding bottom-up contradicts most conventional development processes. We regard this as a clear indication for the need of new development processesto improve the construction of evolvable software.