你必须在这里改变你的思维过程。
用户故事是最终用户的日常或商业语言中的一个或多个句子,用于捕捉用户想要实现的目标。例如
作为前台代表,我想快速预订房间。
如您所见,它们是
- 从用户/角色(前台代表)的角度
- 目标导向(快速预订房间)
但是它们缺乏诸如各种流程(付款等)、验收标准、非功能性需求特定(例如故事中的快速意味着什么?)等细节。您创建子故事以提供更多详细信息。
什么是好故事?
投资:独立、可协商、有价值、可评估、可评估、可测试
是否有工具可以指导您如何成功地将 Web 应用程序(或移动应用程序)的想法转换为故事/迭代列表?
Rally 和 JIRA 等工具允许您组织故事、子故事、冲刺/迭代等。
某种状态、特性或功能(及其关系)的可视化表示,您可以在其中指定功能、非功能和技术规范,然后您就可以创建故事了吗?
这些工具提供了丰富的文本编辑器来帮助我们编写故事。有时你有一个不适合作为故事的需求
然后写点别的。像 JIRA 这样的工具可以提供附件。
那么在那之后你可以创造故事吗?
** 故事应该是应该发生的第一个活动。这就是重点。这不是事后的想法。故事是迫使您从用户和目标的角度思考的方式,因此您正在编写软件来满足用户目标。**
故事代表需求,它们不记录它们。- 雷切尔戴维斯
敏捷方法鼓励通过持续重构来实现足够的架构。
sprint 交付团队通常包括所有必要的利益相关者,如业务分析师、测试人员、架构师、dba、开发人员。他们共同负责完成一个故事/冲刺,并且在春季结束时,您将拥有一个生产就绪的可部署应用程序。想法是逐步添加功能。
正如您从团队组成架构师/负责人中看到的那样,每个 sprint 也参与其中。在团队的帮助下,他将为当前冲刺/迭代中的故事进行架构和设计(恰到好处的架构,紧急设计)。他们为第一个 sprint 选择的故事要么是高风险的,要么是具有重要架构意义的。
在设计方面,主要是头脑风暴和纸质或黑板。想法是尽可能使用代码作为参考文档,并通过结对编程等方式在团队中建立集体知识。
因此,您最终不会得到质量差的软件。实际上,您将拥有可以执行故事的最少代码库(您不是为将来的需求积累代码库,也不是很高兴拥有功能)。我在某处读到,只有 40% 的构建功能都被客户使用。