敏捷方法和 Scrum,我如何才能完成这个文档模板?

Agile Method and Scrum, how I can complete this document template?

我正在为大学做一个项目(网站)。 现在我在冲刺 1。 在我老师提供的模板中,我有两个部分:用户故事和产品设计。在这两个部分的每一部分中,我都有小节:"Class diagram" 和 "sequence diagram"。你能告诉我这两个部分之间以及同一个 SPRINT 的不同部分中的两个图表之间有什么区别吗?他们不应该是同一件事吗?非常感谢

我假设你的模板是这样的(如果我错了请纠正我):

  • 用户故事
    • Class图表
    • 序列图
  • 产品设计
    • Class图表
    • 序列图

首先,

  • Class图用于描述静态方面(结构)
  • 序列图用于描述动态方面(行为、交互)

例如定义类A和B。A有methodA,B有methodB。那就是您在类图中描述的结构。在时序图中描述行为,例如A.methodA调用B.methodB,以实现故事中描述的功能。

您可以在设计和实施过程的各个阶段(即需求分析期间或解决方案设计期间)使用这两个图表,因此您可以同时使用它:描述故事和描述设计。

其次,

我假设家庭作业是围绕一种称为“Object Oriented Analysis and Design”的方法展开的,该方法将问题分解为各个方面(结构化分析)并得出适当的设计(面向对象设计),这两个步骤都使用了UML.

故事可以使用面向对象的分析进行结构分解,产品设计可以使用面向对象的设计来创建。

所以让我们假设您有一个用户故事 "As a teacher I want to conduct exams to check the knowledge of my students"。

您有一个参与者 "teacher"、一个用例 "conduct exams" 和一个参与者 "students"。你可以从中推导出一个分析模型:

  • Class老师
    • 进行考试()
  • Class 学生
    • testKnowledge()

Teacher.conductExam() -> Studen.testKnowledge()

从这个分析模型中你可以推导出一个设计模型

  • 老师
  • 试卷
  • 学生
  • 学生测试
  • 得分
  • ...

以及您还需要描述问题解决方案的任何内容。

实际方法来自 Rational Unified Process (RUP),不一定来自 "agile" 开发,后者在 如何 您实际开发解决方案方面的结构要少得多。 UML 及其所有元素是一组标准化的视觉元素,具有定义的语义。然而,上面提到的方法是一种解释你的任务的方法,我相信还有很多其他方法。

A class 或序列图在两种上下文中是相同的;所以,你必须为用户故事制作一些图表,为产品设计制作其他图表,这没有任何意义……你只有一个产品(软件),而这些图表必须代表该产品。

此外,我们在这里讨论的是完全不同的话题:这些图表与 UML 有关,UML 是一种抽象和表示软件设计概念的通用语言。用户故事通常与 SCRUM(或任何其他敏捷方法)相关,用于提供一种正式的软件开发方法。

两张图都是与产品设计(软件)相关的概念。这些只是以抽象方式表示您产品的一些概念的工具。

用户故事用于表示为完成您的产品而需要完成的要求或工作。例如,用户故事可以是 "Create a view where a visitor could create an account"、"create a login view for registered users" 或 "Create the class diagram to represent the relationship between entities in your product" 和 "create a sequence diagram to represent the interaction"。你现在看到了吗?

在我看来,您必须制作 class 和序列图(一次),当然,这是产品设计阶段的一部分,但由于您使用用户故事来表示任务要完成您的产品,您将有两个用户故事,内容如下:

  • 为产品创建 class 图
  • 为产品创建序列图
  • 为我的项目创建其他内容。

我支持 Thisisalexis。它们是 2 个不同的主题 UML 和 Scrum。用户故事只不过是用户叙述中需求的简明扼要的表示。敏捷让事情变得有趣,因此变得轻巧有趣。敏捷最好的方面。

虽然 Class 图和序列图都应该属于产品设计。 用户故事描述可以参考一个或多个产品设计模板,由Class和/或序列图组成。

我尽量保持简短。希望这有帮助:)