SDLC - 瀑布模型



瀑布模型是第一个被引入的流程模型。它也被称为线性顺序生命周期模型。它非常容易理解和使用。在瀑布模型中,每个阶段必须在下一个阶段开始之前完成,阶段之间没有重叠。

瀑布模型是最早用于软件开发的 SDLC 方法。

瀑布模型以线性顺序流的方式展示了软件开发过程。这意味着开发过程中的任何阶段只有在上一阶段完成后才能开始。在这个瀑布模型中,各个阶段不重叠。

瀑布模型 - 设计

瀑布方法是最早广泛应用于软件工程的 SDLC 模型,以确保项目的成功。“瀑布”方法将整个软件开发过程划分为不同的阶段。在这个瀑布模型中,通常一个阶段的输出作为下一个阶段的输入,依次进行。

下图是瀑布模型各个阶段的表示。

SDLC Waterfall Model

瀑布模型中的顺序阶段如下:

  • 需求收集和分析 - 在此阶段捕获要开发的系统的所有可能需求,并在需求规格说明书中记录。

  • 系统设计 - 此阶段研究第一阶段的需求规格说明,并准备系统设计。此系统设计有助于指定硬件和系统需求,并有助于定义整体系统架构。

  • 实现 - 根据系统设计输入,系统首先开发成称为单元的小程序,这些小程序在下一阶段集成。每个单元都经过开发和功能测试,称为单元测试。

  • 集成和测试 - 在对每个单元进行测试后,将实现阶段开发的所有单元集成到系统中。集成后,对整个系统进行任何故障和错误的测试。

  • 系统部署 - 完成功能和非功能测试后,产品将部署到客户环境或投放市场。

  • 维护 - 客户环境中出现了一些问题。为了解决这些问题,会发布补丁。同样,为了增强产品,会发布一些更好的版本。维护是为了在客户环境中交付这些更改。

所有这些阶段都相互级联,进展情况像瀑布一样稳定地向下流经各个阶段。只有在先前阶段的既定目标实现并签字后,才开始下一个阶段,因此得名“瀑布模型”。在这个模型中,各个阶段不重叠。

瀑布模型 - 应用

每个开发的软件都不同,需要根据内部和外部因素选择合适的 SDLC 方法。瀑布模型最适合使用的一些情况是:

  • 需求非常充分地记录在案,清晰且固定。

  • 产品定义稳定。

  • 技术已了解且不动态。

  • 没有含糊不清的需求。

  • 有充足的具备所需专业知识的资源来支持产品。

  • 项目时间短。

Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

瀑布模型 - 优点

瀑布开发的优点在于它允许部门化和控制。可以设置一个带有每个开发阶段截止日期的日程安排,并且产品可以一个接一个地通过开发过程模型阶段。

开发从概念、设计、实现、测试、安装、故障排除,最终到运行和维护。每个开发阶段都严格按顺序进行。

瀑布模型的一些主要优点如下:

  • 简单易懂且易于使用

  • 由于模型的严格性,易于管理。每个阶段都有具体的交付成果和审查流程。

  • 各个阶段逐一处理和完成。

  • 适用于需求非常清晰的小型项目。

  • 阶段定义明确。

  • 里程碑清晰易懂。

  • 易于安排任务。

  • 过程和结果有据可查。

瀑布模型 - 缺点

瀑布开发的缺点是它不允许进行太多反思或修改。一旦应用程序进入测试阶段,就很难返回并更改在概念阶段没有充分记录或考虑的内容。

瀑布模型的主要缺点如下:

  • 直到生命周期后期才产生可运行的软件。

  • 风险和不确定性很高。

  • 不适合复杂的和面向对象的项目。

  • 不适合长期和持续的项目。

  • 不适合需求存在中等或高风险变化的项目。因此,此流程模型的风险和不确定性很高。

  • 难以衡量各阶段的进度。

  • 无法适应变化的需求。

  • 在生命周期中调整范围可能会终止项目。

  • 集成是在最后阶段作为“大爆炸”完成的,这使得无法尽早识别任何技术或业务瓶颈或挑战。

广告