The desire to build quality software systems has been the focus of most software developers and researchers for decades. This has culminated in the design of practices that promote quality in the designed software. Originating from the inception of the traditional software development life cycle (SDLC), through to the object-oriented methods, Iterative development, and now the agile methods, these practices have persisted through different periods. Such practices play the same quality role regardless of the perspective of the software development process they are part of. In this paper we review three software development methods representative of the software development history, with the aim of i) identifying key quality practices, ii) identifying the quality role played by the practice in the method, and iii) noting those quality practices that have persisted through the software development history. The identified quality practices that have persisted throughout the history of the software development processes include prototyping, iterative development, incremental development, risk-driven development, phase planning, and phase retrospection. These results would be useful to method engineers who seek to design high-quality software development methods as these practices serve as candidates for inclusion in their development processes. Software development practitioners seeking to design quality software would also benefit from adopting these practices in developing their software.
翻译:数十年来,大多数软件开发者和研究人员一直希望建立高质量的软件系统,这最终导致设计了提高设计软件质量的做法。从传统软件开发生命周期(SDLC)的开始到面向目标的方法,迭代式开发,现在的灵活方法,这些做法在不同时期一直存在。无论软件开发过程的视角如何,这些做法都具有同样的质量作用。在本文件中,我们审查了三个代表软件开发历史的软件开发方法,目的是:(一) 确定关键的质量做法,(二) 确定该方法中的做法所起的质量作用,以及(三) 注意到在软件开发历史中持续存在的那些质量做法。在软件开发过程的整个历史中,已经查明的高质量做法包括原型设计、迭代式开发、增量开发、风险驱动开发、阶段规划以及阶段反演。这些结果将有助于对设计高质量软件开发方法的工程师进行方法,因为这些做法是其开发过程的候选者。软件开发从业人员在开发这些软件时,也会从采用这些做法中受益。