An examination of issues related to the implementation of evolutionary development and DOD-STD-2167A in software development:a practitioners view
The author of this report has long been interested in the process of developing software. Commonly referred to as "software engineering", the definition and standardization of the process has been a subject of concern throughout the software industry. As early as 1972, Frederick P. Brooks likened large system programming efforts to the La Brea Tar Pits; the muck, mire and tar of software development delays and cost overruns eventually defeating even the most skillful and experienced developers.  This report is intended to provide another stepping stone through the tar.
The author was fortunate to be provided the opportunity to develop two similar software projects, in like hardware environments, using different development approaches. The first project was developed using an Evolutionary Development approach, the later system utilized the current government standard, DOD-STD-2167A. This report outlines the lessons learned in applying these development approaches.
This report does not intend to criticize either the Evolutionary Development or DOD-STD-2167A approaches to developing software. Rather this analysis seeks to identify factors and issues which software developers should consider in implementing either of these approaches.