瀑布模型详解

2023-03-02 19:24:48 浏览数 (4)

waterfall开发模式大家都耳熟能详,而我要是问,你能解释一下么,有哪些具体内容呢?

你是不是就愣了一下, 对!就因为太熟悉了,反而灯下黑。

而且,对瀑布的深刻理解有助于对敏捷的理解。

瀑布模型(Waterfall Model)是Royce在1970年提出的,他把大型软件开发分为:分析与编程,象工厂流水线一样把软件开发过程分成各种工序,并且每个工序可以根据软件产品的规模、参与人员的多少进一步细分成更细的工序。该模型非常符合软件工程学的分层设计思路,所以成为软件开发企业使用最多的开发模型。

在Royce的原始设计中,瀑布模型包含一下6个阶段:

  1. System and software requirements: captured in a product requirements document
  2. Analysis: resulting in models, schema, and business rules
  3. Design: resulting in the software architecture
  4. Coding: the development, proving, and integration of software
  5. Testing: the systematic discovery and debugging of defects
  6. Operations: the installation, migration, support, and maintenance of complete systems

Thus the waterfall model maintains that one should move to a phase only when its preceding phase is reviewed and verified.

瀑布模型的创意来自于制造业和建筑业, 在开发阶段任何的改变都会带来高昂的成本。

瀑布模型的特点:

1、强调文档,前一个阶段的输出就是下一个阶段的输入,文档是个阶段衔接的唯一信息。所以很多开发人员好象是在开发文档,而不是开发软件,因为要到开发的后期,才可以看到软件的“模样”。

2、 没有迭代与反馈。瀑布模型对反馈没有涉及,所以对变化的客户需求非常不容易适应,瀑布就意味着没有回头路。一方面市场带动需求变化,另一方面初期客户对需求描述不清楚。

而后期的需求更改成本是开始的10倍基数。

所以瀑布模型的管理框架:

  1. 线性工序,上一阶段的输出是下一阶段输入
  2. 文档驱动
  3. 下一阶段有缺陷,必须回到上一阶段

1 人点赞