我一直在努力学习软件工程原理的基础知识,但我遇到了一个问题,我无法找到足够的细节来回答,任何帮助都会受到赞赏:
对于每个流程模型(即瀑布式,增量式,原型设计) ,螺旋),模型如何处理需求的重大变化 发展?
提前致谢。
答案 0 :(得分:1)
我认为这个问题可以简化 - 一般来说,有两种类型的软件开发生命周期:
Scrum和极限编程等迭代(或敏捷)方法。
顺序(或“大型设计前期”)方法,如瀑布。
迭代方法依赖于项目内的经验反馈。在Scrum中,sprint审查提供了有关在下一个sprint中可以实现的内容的指导,并且对产品backlog的审查可以将最新要求提升到优先级列表的顶部。在迭代方法中,增量的评估阶段可以提供给下一次迭代的计划。
这两个例子清楚地表明了这些方法可以适应新的要求并做出反应。
除了这个广泛的笔划解释之外,当然还有一些具体的细节。例如,Scrum团队实际上不会在sprint结束之前改变范围 - 除非sprint被完全放弃。因此,在新要求开始实施之前可能会有一点延迟。
使用瀑布等更传统的方法,适应性更加困难,因为您受到一系列阶段当前阶段的约束。为了适应要求,可能会涉及非优化设计和实施,因为改变的性质是用螺栓固定的。如果要求的变化足够大,则可以放弃并重新开始整个开发。至少对于您已经开发或实际发布的敏捷方法,可以增加一些商业价值。