1、开发初期的需求定义只是用来确定软件的基本结构,这使得开发初期,用户只需要对软件需求进行大概的描述,而对于需求的细节性描述,则可以延迟到增量构件开发时进行,以增量构件为单位逐个地进行需求补充。这种方式有利于用户需求的逐渐明朗,能够有效适应用户需求的变更。 2、软件系统可以按照增量构件的功能安排开发的优先顺序,并逐个实现和交付使用。这不仅有利于用户尽早地用上系统,能够更好地适应新的软件环境,而且用户在以增量方式使用系统的过程中,还能够获得对软件系统后续构件的需求经验。这样能使软件需求定义越往后越顺利。 3、软件系统是逐渐扩展的,因此,开发者可以通过对诸多构件的开发,逐步积累开发经验。实际上,增量式开发还有利于技术复用,前面构件中设计的算法、采用的技术策略、编写的源码等,都可以应用到后面将要创建的增量构件中去。 4、增量式开发还有利于从总体上降低软件项目的技术风险。个别的构件或许不能使用,但这一般不会影响到整个系统的正常工作。 5、实际上,在采用增量模型时,具有最高优先权的核心增量构件将会被最先交付,而随着后续构件不断被集成进系统,这个核心构件将会受到最多次数的测试。这意味着软件系统最重要的心脏部分将具有最高的可靠性,这将使得整个软件系统更具健壮性。 比较瀑布模型、原型进化模型,增量模型具有非常显著的优越性。但是,增量模型对软件设计有更高的技术要求,特别是对软件体系结构,要求它具有很好的开放性与稳定性,能够顺利地实现构件的集成。在把每个新的构件集成到已建软件系统的结构中的时候,一般要求这个新增的构件应该尽量少地改变原来已建的软件结构。因此增量构件要求具有相当好的功能独立性,其接口应该简单,以方便集成时与系统的连接。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。