我正在开发一个项目,我们真的想尝试使用敏捷软件方法,并且正在编写我们的用户故事。这对我们来说是新的,尽管我们在编写成功的软件方面有很多经验。我的问题涉及当产品需要在多个平台上运行时如何编写故事...
让我们争辩说我们的用户故事是......
现在这需要在多个浏览器上运行,很可能在PC和Mac上都有几个版本的浏览器。
过去哪些方法适用于不同的团队,您是否在您希望支持的所有平台上测试故事,或者您是否已成功编写额外的用户故事,例如“还必须在Safari Version x.xx上工作”。我不喜欢后者的想法它没有很好的范围。
另一种选择可能是为这样的每个平台重复编写故事......
无论如何,真的只是寻找一些洞察力,并且有兴趣听听社区中其他团队的工作有用和无效。
感谢分享......
答案 0 :(得分:3)
如果需要以相同的优先级完成,并且浏览器兼容性并不难,我会这样做:
As a customer, I want to be able to login to the system, so that I can use the system
Exit criteria:
- xxxx
- yyyy
- be able to login on Safari, IE, Chrome, Firefox
答案 1 :(得分:1)
您可以创建Definition of Done(国防部)。
国防部通常是一份简明扼要的要求清单 软件增量必须坚持让团队称之为完整。
在你的国防部你应该包括每个故事必须的东西。
例如,当您实现一个故事时,您可能希望它能够在最广泛采用的浏览器上运行。包括您希望在DoD中支持的每个浏览器的功能的实现和测试。
您可能决定要添加对旧版浏览器的支持,但优先级要低得多,可以在以后完成。您可以将该工作单独包含为单独的产品待办事项(例如故事或错误)。然后可以根据需要对它们进行优先排序。
可以使用类似"As a user, I want"的故事模板编写这些项目。例如:
作为客户,我希望能够使用IE8登录
作为客户,我想从IE8重置密码
最后,您的团队决定在您的情况下最有效。这取决于您的客户想要什么!
答案 2 :(得分:0)
我会选择4个故事:
Users can Login with Safari
Users can login with IE
Users can login with Chrome
users can login with Firefox
然后,您可以创建验收标准,以测试每个主要平台的不同相关版本。
如果可以,我宁愿尽可能保持高水平的故事。 “用户需要能够登录”是灵活的(只要它不是太大)。通过浏览器拆分用户故事感觉很像混合非功能标准和用户故事。
答案 3 :(得分:0)
“编写一个额外的用户故事”也必须适用于Safari Version x.xx。我不喜欢后者的想法它没有很好的范围。“
你不喜欢被解雇的事实上是更好更正确的方式! “它也应该适用于其他浏览器...”应该是故事卡背面的UAC和功能。
这样您就可以为客户和主要故事添加BV。
支持UAC方式作为正确方法的另一个原因是“借助不推荐的做法消除” - 用户故事不应该是一个清单。
答案 4 :(得分:0)
我不会为每个平台创建故事,因为美国是“潜在可交付”的单位,应该为最终用户带来价值。
请注意,没有关于用户应该如何访问功能的内容,因此请问自己一个简单的问题 - 如果它在平台A上运行但在平台B上不起作用,您是否会将此功能提供给最终用户?
IMO为开发和测试而不是美国创建平台特定任务是有意义的,如果任务没有完成,你不能说美国已经“完成”。