原则14 渐进地扩展系统

GROW SYSTEMS INCREMENTALLY

渐进地扩展系统,是降低软件开发风险的最有效方法之一。从一个小的可用系统开始,只实现少数功能。然后逐步扩展,覆盖越来越多的最终功能子集。

这样做的好处是:(1)降低每次开发的风险;(2)看到一个产品版本,通常可以帮助用户想象出他们想要的其他功能。

这样做的缺点是:如果过早地选择了一个不合适的系统架构,则可能需要全部进行重新设计才能适应后续的变更。在开始增量开发之前,开发一次性原型(见原则11、12和13),可以降低这种风险。

Mills,H.,"Top-Down Programming in Large Systems," in Debugging Techniques in Large Systems,R.Ruskin,ed.,Englewood Cliffs,N.J.:Prentice Hall,1971.