在设计后端系统时,你通常给你的故事和任务赋予什么粒度?
创建故事和任务的大多数示例通常以 GUI 应用程序为中心,故事是用户可以做的事情(例如,通过 ISBN 搜索一本书),每个任务都围绕启用此 GUI 功能。
在设计后端系统时,即没有用户界面而只是一堆与数据库、中间件等对话的服务时,您如何提出任务和故事?
在设计后端系统时,你通常给你的故事和任务赋予什么粒度?
创建故事和任务的大多数示例通常以 GUI 应用程序为中心,故事是用户可以做的事情(例如,通过 ISBN 搜索一本书),每个任务都围绕启用此 GUI 功能。
在设计后端系统时,即没有用户界面而只是一堆与数据库、中间件等对话的服务时,您如何提出任务和故事?
基本上,我尝试将我的用户故事的大小保持在 1 到 10 个工作日的范围内。这使我无法将 Mike Cohn 所称的“史诗”或“主题”作为用户故事传递给开发人员,另一方面,我的用户故事会变得如此具体以暗示解决方案(他们应该描述问题,不是应该如何解决)。
就内容而言,我确保我的故事只包含商业价值——它从不描述我(应该)如何满足需求,也不“需要”非用户领域的知识来理解。
很好的例子:作为内容管理员,我希望所有用户在写回话之前都必须登录,以拒绝他们发送垃圾邮件的能力。
不好的例子:将验证码添加到网站。
另一方面,任务是解决解决方案的步骤——它们描述了需要添加/修改的组件和功能。这就是“添加验证码”解决方案的用武之地。就大小而言,我尝试让每个任务的大小在每天 1/2 到 2-3 天之间。
任务还包括一组适用于每个功能/要求/问题/错误的标准任务,例如:
希望这会有所帮助,阿萨夫。
只要您有用户,用户故事就可以围绕用户可以做的事情。如果您为其他开发人员提供 API,那么他们就是您的用户。届时事情将变得更加技术性(即用户可以更新员工记录)
我的故事基于类的公共接口。对于任务粒度,我会争取半天到两天的工作量。
用户/参与者可以是一个系统,不一定是一个人。您的服务将具有 API、预期的输入和结果以及服务级别协议(非功能性要求)。所有这些都可以在故事卡中指定。
最重要的是,您的故事卡应指定验收标准。验收标准将有助于推动开发人员测试 Deiven 开发单元测试、自动化功能测试和自动化性能测试。如果满足接受标准,则该卡被产品所有者接受和批准。