0%

瀑布模型Waterfall

简介

瀑布模型,一个经典的软件生命周期模型,也叫预测型生命周期、完全计划驱动型生命周期。是比较传统一种开发模式,在传统企业经常见到他们的影子,特别一些大的项目或外包项目。

一般将软件开发分为可行性分析(计划)、需求分析、软件设计(概要设计、详细设计)、编码(含单元测试)、测试、运行维护等几个阶段。

如图:

优缺点

优点

  • 阶段清晰。从计划到开发最后到上线运行,阶段非常清晰,提供了按阶段划分的检查点。
  • 时间顺序。每个阶段顺序必须是从上到下,严格按照时间先后进行。
  • 环环相扣。在每一个阶段都必须有产出物然后才能进入到下一个阶段进行。
  • 黑盒模式。每个阶段都有各自的角色和分工,各自只关心自己的任务。

缺点

  • 需求隔离。由于各阶段的人员只能接触到自己工作范围内的东西,所以对客户需求的理解程度高低不等,开发人员更像是定义为流水线上的工人。
  • 变更代价大。既然叫做瀑布,就意味着不应该走回头路。否则如果出现返工,付出的代价会很大。需求变更,编码人员会很强的抵触情绪。
  • 束缚创造性。由于强调文档管理,所以管理人员会比较喜欢,但是他束缚了开发人员的创造性。
  • 测试不全面。测试人员往往最后面才开始介入测试,会因为没有充分的准备而导致测试的缺失和不够深入。
  • 周期漫长。整个开发持续的生命周期很长,需求和设计的时间会耗费特别多,有时候会占用三分之一甚至更多时间,这样整个周期就会变长,大都在半年到一年左右的时间,所以更适合需求相对稳定的大项目。

项目管理“铁三角”

从项目管理“铁三角”,项目管理四个最核心目标:

1
2
3
4
5
6
7
范围 SCOPE(需求是什么要做什么)

时间 TIME(什么时间做完这些事)

成本 COST(花多少钱做成这些事)

质量 QUALITY(什么程度客户才满意)

当“Fix Scope,Fix Cost”或者“Fix Scope,Fix TIME”,那么经常会听到BOSS一句话,压压时间呗或者压压成本呗。

概念

  • 项目执行计划

  • 人力资源计划

  • 项目实施方案

  • 工作说明书

  • 项目过程定义表

  • 联调计划

  • 联调跟踪表

  • 项目周报

  • 需求分析

  • 概要设计

  • 详细设计

  • 编码

  • 单元测试

  • 集成测试

  • 功能验收测试

  • 用户验收测试

  • 运行维护

layicr 微信

微信

layicr 支付宝

支付宝