软件开发模型介绍(一)

1.增量模型

增量模型又称为渐增模型,把待开发的软件系统模块化,将每个模块作为一个增量组件,分批次地分析、设计、编码和测试这些组件,开发人员不需要一次性的把整个软件产品提交给用户,而是可以分批次地进行提交。


增量模型的特点:

1)将待开发的软件系统模块化,分批次的提交软件产品,用户可以及时了解到软件项目的进展。

2)以组件为单位进行开发降低了软件开发的风险,一个开发周期内的错误不会影响到整个系统。

3)开发顺序灵活,开发人员可以最组件的实现顺序进行优先级排序,先完成核心的组件,当优先级发生变化时,也可以及时的调整开发顺序。

2.瀑布模型

瀑布模型采用结构化的分析与设计方法将逻辑实现与物理实现分开,将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护六个基本活动,并且规定了它们自上而下,相互衔接的固定次序,如同瀑布一样,逐级下落。

瀑布模型的特点:

1)为项目提供了按阶段划分的检查点。

2)当完成一阶段后,只需要关注后续阶段。

3)提供了一个模板,使得分析、设计、编码、测试和支持的方法可以在该模板下有一个共同的指导。

4)各个阶段划分完全固定,阶段之间产生大量的文档,极大的增加了工作量。

5)不能适应客户需求的变化。

3.(快速)原型模型

在开发真实的系统前,构造一个工作原型,该原型能够模拟执行目标系统的部分功能,获取用户的反馈,使开发出的软件能够真正反映用户的需求,之后在该原型基础上逐步完善,最终满足用户的需求。

原型模型的特点:

1)此模型适合预先不能确切定义需求的软件系统的开发,减少了由于软件需求不明确带来的开发风险。

2)缩短了开发周期,加快了工程进度。

3)快速建立起来的系统结构加上连续的修改可能会导致产品质量低下。

4)原型被建造仅是为了定义用户需求,之后便部分或全部抛弃,最终的产品应充分考虑质量和可维护性。

原型模型的类型:

1)探索性原型:

        主要用于开发的需求分析阶段,目的是弄清用户的需求,探索各种方案的可行性。

2)实验型原型:

        主要用于设计阶段,考核实现方案是否合适,若对设计方案没有把握时,可通过该原型来证实设计方案的正确性。

3)演化型原型:

        主要用于及早向用户提交一个原型系统,该原型系统或包含系统的框架,或包含系统的主要功能,在得到用户的认可后,将原型系统不断扩充演变为最终的软件系统,将原型的思想扩展到软件开发的全过程。





猜你喜欢

转载自blog.csdn.net/zai_xia/article/details/80686031