Analysis and Design in MSG.84: Formalizing Functional Specifications
IEEE Transactions on Software Engineering - Annals of discrete mathematics, 24
Hi-index | 0.00 |
Traditionally there have been two alternative strategies for software development: phased refinement or evolutionary enhancement. In phased refinement, all system functionality is specified in the first step of development, and subsequent implementation phases add proscribed design details. This is the standard for formalized methodologies, such as the waterfall model underlying Dod standards. The evolution model, conversely, assumes that system functionality cannot be specified correctly initially, and it provides for incremental build-up of functionality.The phased refinement approach is criticized for its high cost of maintenance, for poor motivation of system developers doing abstract tasks in early phases of development, and for complication of system integration. The evolutionary approach is criticized for producing poorly structured software, which can lead to problems in error handling, project management, and errors from modifications. This paper describes an evolution approach which seeks to avoid there pitfalls.