Title :
A brief top-down and bottom-up philosophy on software evolution
Author :
Pizka, Markus ; Bauer, Andreas
Author_Institution :
Inst. fur Informatik, Technische Univ. Munchen, Munich, Germany
Abstract :
The decision on whether to proceed to 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 processes to improve the construction of evolvable software.
Keywords :
software maintenance; software quality; bottom-up philosophy; evolvable software; software development; software evolution; software quality; software system; top-down philosophy; Collaborative software; Java; Operating systems; Process planning; Programming; Project management; Quality management; Software performance; Software quality; Software systems;
Conference_Titel :
Software Evolution, 2004. Proceedings. 7th International Workshop on Principles of
Print_ISBN :
0-7695-2211-4
DOI :
10.1109/IWPSE.2004.1334777