2016年12月15日星期四08:14

敏捷系列中的深潜模型:舞会森林模型,第6版

撰写者

这个简短的系列文章“敏捷中的深层次模型”为产品所有者社区提供了有价值的信息,以便他们在项目中使用其他良好实践。

在本系列的每篇论文中,我们将介绍敏捷中最常用的可视化模型之一,并说明如何创建模型以及如何使用它来帮助构建,修饰或阐述敏捷积压工作。

这是本系列文章的最后一篇,涵盖了舞会森林模型,其中包括舞会森林树和舞会森林表。本系列中的先前文章包括 工艺流程, 特征树, 业务目标模型, 业务数据图状态模型 .

什么是舞会森林模型?

舞会森林模型包括两个RML系统模型(舞会森林树和舞会森林表),它们详细描述了控制用户功能或决定系统在各种情况下将采取的操作的系统逻辑。

像状态模型一样,本文将这两个模型放在一起,因为它们以不同的格式显示相同的信息。通常,PO或BA会根据情况仅使用两个舞会森林模型中的一个或另一个。当PO或BA想要确保已探究适用舞会森林选择的每个排列时,都会使用舞会森林表。而舞会森林树更适合业务涉众使用,通常用于仅通过建模导致结果的舞会森林选择来显示舞会森林树的折叠视图。舞会森林模型非常适合任何需要系统执行逻辑的项目,甚至在某些情况下甚至可以作为用户故事的接受标准!

舞会森林表是舞会森林及其结果的表格格式,“舞会森林表”中的每一列代表系统中舞会森林的一种潜在排列。舞会森林表包含三个主要区域:条件(或舞会森林),结果以及在其中列出每个舞会森林选择的每个排列并标记有适当结果的列。垂直读取该模型(请参见下面的示例),因为用户将读一列并向下读取:“如果条件1为选择1a,条件2为选择2a,条件3为选择3a,则发生结果2、3和4 。每个垂直列代表系统的业务规则。

霍根森121416 1

像状态图一样,舞会森林树是一种更直观的方式,通过仅显示导致系统结果的舞会森林和选择组合,以分支树格式显示舞会森林逻辑。该模型非常适合与业务涉众验证系统逻辑分支。请参阅下面的舞会森林树示例:

霍根森121416 2

什么时候在敏捷项目上使用舞会森林模型?

敏捷项目的舞会森林模型有两个主要用例。一种是针对用户故事详细说明系统逻辑的特定部分。在这种情况下,将为用户故事识别并创建舞会森林模型,该舞会森林模型支持将要实施舞会森林逻辑的sprint之前的大约1-2sprint。PO或BA会识别出用户故事需要系统执行舞会森林为用户提供响应的逻辑。如果PO或BA听到诸如“如果用户执行X,则系统执行Y等”之类的单词,则可以由PO或BA识别。从那里,PO或BA将得出系统中发生的所有可能的舞会森林,并系统地遍历舞会森林表中的舞会森林选择的每种组合,以确保考虑到所有结果。可选地,可以创建舞会森林树来询问业务涉众的问题并完成系统逻辑。

在敏捷项目上使用舞会森林模型的替代用途是识别并表示接受标准。验收标准通常以“准时”的格式写成。 “给定系统中的某个先决条件,当发生某些触发时,系统将采取某些措施或显示某些响应。”这可以很好地与舞会森林表保持一致,因为前提条件和触发条件可以建模为舞会森林或条件,并且结果仍然是舞会森林表中的结果。这里要注意的一点是,如果书面验收标准已经存在“按时间给定”格式,则PO或BA通常不需要创建舞会森林表来为验收标准建模。此技术仅适用于前提列表或触发器列表较长(3-5)的较大故事,因此前提条件和触发器的组合数量更多。这样,PO或BA可以确保已对接受标准中的每条路径进行了探索,以找到任何所需的系统响应。

如何创建舞会森林模型?

创建舞会森林模型的第一步是让PO或BA识别系统针对特定结果做出的所有舞会森林。这可以是“舞会森林表”中的列表,也可以是“舞会森林树”中的舞会森林菱形。通常,PO或BA将以舞会森林表开始,并根据需要移至舞会森林树。

在对系统中的舞会森林进行头脑风暴之后,PO或BA必须识别每个舞会森林的所有适用选择。舞会森林可以是二进制(Y / N)或非二进制。如果舞会森林是非二进制的,则PO或BA需要检查舞会森林选择是否是互斥和集体穷举(MECE)。这意味着所有选择均已考虑在内,并且选择中没有歧义(如果数字为非整数,则选择1、2-5和>5不能满足MECE,相反,PO或BA需要类似以下内容:<1, >=1 to <5, >= 5)。因此,许多PO / BA倾向于使用二进制舞会森林,但它会使表或树复杂化。

最后,PO或BA遍历舞会森林选择的每个组合,并为该舞会森林组合标识适当的系统结果。请参阅下面的示例舞会森林表:

霍根森121416 3

在这种情况下,如果听众选择不选择艺术家,则系统会取消电台创建,并且不会在意所选艺术家的数量。在舞会森林表中,决定或条件的选择无关紧要的情况可以显示为“-”。此外,舞会森林表可以通过在结果中使用数字(即1和2)来显示有序结果。例如,在电子商务站点中,当客户想要使用礼品卡付款时,系统可以首先(1)耗尽礼品卡上的所有资金,然后(2)询问是否采用第二种付款方式礼品卡不能支付订单的全部费用。

舞会森林树使用与过程流相同的元素以分支树格式显示此相同信息:步骤和舞会森林菱形,但这些步骤现在是系统采用结果形式的步骤。如上所述,通常在舞会森林表之后创建舞会森林树,以与业务涉众核实舞会森林逻辑。但是,如果PO或BA决定从舞会森林树开始,则创建过程本质上是相同的:1-头脑风暴舞会森林,2-识别选择,以及3-遍历舞会森林/选择组合以得出结果。请参阅以下示例:

霍根森121416 4

如何从舞会森林模型中得出用户故事?

舞会森林模型通常会补充用户故事,以确保确定所有路径,因此它们通常会导致其他接受标准。创建的每个舞会森林模型通常都是针对单个用户案例的,舞会森林和选择的每个排列都是一个接受标准。例如,如果我们有一个故事:

霍根森121416 5

具有以下接受标准:

霍根森121416 6

PO或BA可能会认为需要创建以上舞会森林模型,以确保考虑到所有接受标准,这将确定以下接受标准:

霍根森121416 7

这些模型非常适合用于识别缺少的接受标准(从而导致测试用例),这些条件可能会使敏捷团队崩溃,并导致在不考虑接受标准中的异常情况的情况下使故事“使冲刺失败”。

结论

舞会森林模型是POs或BA不确定时可以使用的出色模型,因为他们不确定它们已正确捕获故事的接受标准。这些模型使PO或BA以及业务利益相关者能够在故事被冲刺之前就系统逻辑和预期的系统行为进行调整,从而使PO或BA能够为敏捷团队提供更好的信息。

总结了敏捷系列的“深潜模型”。在六篇简短的论文中,我们涵盖了:流程,特征树,业务目标模型,业务数据图,状态模型和舞会森林模型。您在敏捷项目中最使用哪种视觉模型?

Candase Hokanson

Candase是Seilevel的高级产品经理,也是PMI-Agile认证的从业者,他在敏捷方法方面为产品所有者,scrum管理员和业务分析人员提供培训和教练,并为客户推荐这些角色中的产品。她与团队合作,围绕实现交付业务价值的共同最终目标团结每个团队成员,以节省多达数百万美元的开发成本,以解决那些无法使用或无法为预期业务价值做出贡献的功能。她还与客户合作,帮助他们将敏捷实践的规模扩展到一个团队或一名飞行员到整个组织。

©BA Times.com 2020

麦格雷戈徽标白色网站