跳到正文

经典的软件开发模型

頻出约 26 分钟4 个术语过去问 13 题

本单元目标

  • 能按照“工序单向推进”还是“反复进行试制或一轮开发”,区分本单元的开发模型和方法。
  • 能说明在瀑布模型中,上游的错误到后期才被发现时,返工为什么会很大。
  • 能说出原型模型和螺旋模型各自反复的对象有何不同。
  • 能说出 RAD 是一种看重什么的方法。
术语总表(4 个)
术语一句话推进方式适合的开发
ウォーターフォールモデル从上游到下游依次推进各道工序单向推进,以不返回前道工序为前提需求明确、变更少的开发
プロトタイピングモデル让用户评估试制品,从而确定需求按试制、评估、确定需求的顺序需求模糊的开发
スパイラルモデル按部分反复进行一轮开发,逐步扩大范围一圈圈重复从计划到评估的过程需求容易中途变化的开发
RAD借助工具和试制,在短期内完成开发用户也加入人数不多的团队希望尽早投入使用的开发

术语

ウォーターフォールモデル瀑布模型

在术语表中打开 ウォーターフォールモデル

瀑布模型(ウォーターフォールモデル)把开发划分为多道工序,做完并确认前一道工序后才进入下一道,是一种单向推进的开发模型。

  1. 需求定义
  2. 设计
  3. 编程
  4. 测试
  5. 运行维护

测试结束后进入运行维护,开发宣告完成。

4 / 4

像需求定义这样靠近开发起点的工序称为上游工序(上流工程),像编程、测试这样靠后的工序称为下游工序(下流工程),后面的工序以前面工序的成果物(文档)为依据开展工作。工序之间界限清楚,计划和进展都便于管理,但由于以不返回前道工序为前提,很难应对中途的规格变更。上游的错误到后期才被发现、只好退回前面的工序重做,这叫作返工(手戻り)。

类比就像盖房子时按地基、柱子、屋顶的顺序施工。等屋顶都盖好了才发现地基有问题,重做起来就是大工程。

记法waterfall 在英语里是“瀑布”。把各道工序画成阶梯状,看起来就像水一级一级往下落。

考点

  • 常考每道工序都确认完成后才进入下一道,因此容易掌握开发推进到哪一步的进度(進捗)。
  • 常考上游工序(上流工程)的错误越是在靠后的工序才被发现,返工(手戻り)就越大,每处错误的修正成本也随开发推进而增加。
  • 常考这种模型适合需求一开始就已确定、之后不太会变化的开发。

该术语的过去问 3 题 ウォーターフォールモデル

プロトタイピングモデル原型模型

在术语表中打开 プロトタイピングモデル

原型模型(プロトタイピングモデル)在开发早期就制作试制品(原型),一边请用户确认,一边确定需求,是一种开发模型。

  1. 制作试制品
  2. 用户操作并评估
  3. 确定需求
  4. 开发正式系统

按照确定的需求开发正式系统。

3 / 3

用户能亲眼看到画面和操作再提意见,所以光靠文档难以传达的要求,在早期就会暴露出来。试制和评估有时要反复到意见统一为止,次数越多,花费的时间和费用也越多。

类比就像买房前先请客户参观样板间,听取他们对户型和使用便利性的想法。

记法proto- 是表示“最初的”前缀,prototype 就是“最先做出来的模子”。

考点

  • 常考制作试制品(試作品)的目的,是让用户尽早看到实物,消除需求的模糊之处以及与开发者(開発者)之间的认识偏差。
  • 常考需求定义阶段的原型(プロトタイプ),是用户能亲手操作、加以确认的简单软件。

该术语的过去问 3 题 プロトタイピングモデル

「瀑布模型」与「原型模型」的区别

比较点瀑布模型原型模型
关键确定需求的时间在最初的需求定义中确定,之后原则上不再改动在用户评估试制品的过程中逐步确定
用户看到能运行的东西的时间进入测试等下游工序之后在开发早期的试制品上
适合的开发需求明确、变更少的开发需求模糊、难以想象最终形态的开发

スパイラルモデル螺旋模型

在术语表中打开 スパイラルモデル

螺旋模型(スパイラルモデル)把系统分成若干部分,对每个部分反复进行从计划到评估的一轮开发,呈螺旋状逐步接近完成,是一种开发模型。

  1. 第 1 圈:开发核心部分
  2. 把评估用于下一轮计划
  3. 第 2 圈:追加部分
  4. 第 3 圈:继续追加,走向完成

每多转一圈,部分就多一些,系统也离完成更近一步。

4 / 4

每一圈都先制订计划、估计可能出问题的地方(风险,リスク),再进入设计和试制,并把评估结果用到下一圈的计划中。圈数每增加一次,开发范围就扩大一些,系统也一点点接近完成。

类比就像先在院子一角种花、看看长势,再根据结果把花坛扩展到下一块地,如此反复。

记法spiral 意为“螺旋”。想象每次从评估绕回下一圈的计划时,都向外扩一圈的形状。

考点

  • 常考每一圈的评估都会落实到下一圈的改进和功能追加上,因此也容易适应开发途中变化的需求。
  • 易混原型模型(プロトタイピングモデル)反复的是为确认需求而进行的试制和评估,螺旋模型(スパイラルモデル)反复的则是把系统的各个部分做出来的一轮开发。

该术语的过去问 1 题 スパイラルモデル

「原型模型」与「螺旋模型」的区别

比较点原型模型螺旋模型
关键反复的对象为确认需求而进行的试制和评估按部分进行的、从计划到评估的一轮开发
通过反复得到的东西确定下来的需求(之后再进入正式开发)每一圈都在增加的、已完成的系统部分

RADRAD(快速应用开发)

在术语表中打开 RAD

RAD(快速应用开发)(RAD)是一种开发方法,借助开发辅助工具、可复用的部件和试制,力求在短时间内把系统做出来。

用户也加入人数不多的团队,一边看试制品一边反复改进,直至完成。通常会事先划定开发期限,并在期限内完成系统。

类比就像用现成的零件和套件,一边和订货人商量一边组装,在短短几天内做好一件家具。

记法取自 Rapid Application Development 的首字母。Rapid 是“快速”的意思。

考点

  • 易混RAD 看重的是借助试制和工具在短时间内完成系统,原型模型(プロトタイピングモデル)则是为了确认并确定需求而制作试制品。

该术语的过去问 2 题 RAD

要点

  • 瀑布模型工序界限清楚、进度便于管理,但上游的错误发现得越晚,返工就越大。
  • 原型模型把试制品给用户看,尽早消除需求中的模糊之处。
  • 螺旋模型每多转一圈就扩大开发范围,也容易适应中途变化的需求。
  • RAD 借助开发辅助工具和试制,看重缩短开发期限。

确认题

从本单元的过去问中选 4 题

开始做确认题

查看这个领域的全部过去问