瀑布模型

Waterfall model

我正在考虑使用瀑布模型作为我的 CS 考试的主要开发方法。我有使用统一流程和敏捷方法(如 SCRUM 和 XP)的经验。所有这些都有清晰和结构化的方式来收集任务、用例或用户故事。但是我似乎找不到瀑布模型的等价物。

所以我的问题是,瀑布模型是否有任何特定的方式来收集您的“使用 cases/user 故事(或任何您可以称呼它们的故事)——或者我应该从 ex 那里借用一些。 UP,并处理用例?

瀑布、统一过程和敏捷方法在组织活动的方式上有所不同:

  • 他们都需要以某种方式涵盖软件开发活动的全部范围,例如收集需求、设计系统、实现其功能、测试结果并交付它。
  • 它们中的每一个都以不同的方式打包和组合这些活动:例如,敏捷支持将所有这些活动组合起来以交付软件增量的小迭代,直到一切都完成。在另一个极端,瀑布将这些活动一个接一个地分开,只有在出现重大问题时才进行最后的交付和迭代(返回到实现或返回到需求)。

在进行这些活动时,您可以使用一组实践来帮助您更有效地取得结果。实践有时会出现在一种方法的上下文中,但通常可以概括为在其他上下文中使用。例如:

Waterfall 上下文中,需求是预先写好的。仅当需求众所周知且不经常更改时,此方法才有效。如果是学习项目,你很可能会遇到这样的情况。

如今,此类需求已使用 Software Requirement Statements (SRS). Frequently, the functional part of this document is structured according to use-cases (not necessarily use-case diagrams). Moreover modern use-cases, the so-called Use-case 2.0 的 IEEE 标准进行记录,并演变成一种更灵活的实践,允许收集“用户故事”(用户叙述)来制作用例切片逐渐丰富一个用例。这种方法实际上与将叙述线分解为详细用户故事的用户故事映射(定义高级叙述线)非常相似。

所以是的,您可以借用这些技术中的任何一种,除了瀑布需要一切都预先准备好。由于用例既可以用于瀑布(传统用例)也可以用于敏捷(用例 2.0),因此它在您的上下文中无疑是一个很好的基础。对于学校作业,根据用例构建的 SRS 肯定会给人留下好印象。但是,如果您想要一种面向任务的方法,并且所有需求尚不清楚,我真的建议您使用用例 2.0 或用户故事映射,并避免瀑布。