agile - 业务规则集成到用户故事

标签 agile requirements business-rules user-stories

我有一组用户故事和一组业务规则(主要是约束我的合规要求的法律)。在敏捷 SDLC 中,我不确定这些“规则”附加到我的用户故事的何处。

例如,用户故事如下:

As a doctor I want to add patient information in order to create a new patient file.

规则如下:

The following information must be entered in the record of each patient: (a) patient: (i) name and given name; (ii) address; (iii) date of birth; and (iv) sex;

这两个显然是在一起的,但我如何将它们联系起来?作为我的用户故事中的测试验收定义?另一个用户故事?

最佳答案

我见过几种不同的处理方式:

  1. 创建一个工件来保存业务规则,并将其存储在所有规则的某个中央存储库中,以便整个开发团队都知道这一点,并维护一个知识库。这可能会变得丑陋,因为在构建应用程序的短短几年内可能会有数百条规则。

  2. 规则可以放在用户故事中的单独卡片上。因此,虽然用户故事只是一行,但可能有 6-8 张卡片组成了要完成该故事的所有任务。例如,必须创建一个新的患者表格,对表格进行验证等。因此,不难看出这种裁剪在卡片上作为跟踪需求的一种方式。这对我来说是最自然的,尽管这并不是 100% 写下具体列表的地方,因为卡片可能是“确保表单上的某些字段是必填字段。”

  3. 没有明确的链接,而是规则是 QA 或 BA 需要注意的,以便用户验证表单是否强制执行此规则。这与一个类似,但问题是开发人员在这方面的责任是什么。在这种情况下,可能是 QA 而不是开发人员来跟踪的。

用户故事旨在引发讨论,而不是需求的全面列表。在我看来,当开发人员与用户讨论如何创建新的患者文件时,应该会出现该规则。

<小时/>

我喜欢在故事完成后保留卡片进行几次冲刺的想法,但我确实看到卡片最终会被销毁的一点。同时,应该有代码在适当的区域实现规则。要使用您发布的示例,可能会在某些地方注意到必填字段列表,因为 UI 层必须显示字段,可能还显示错误消息,但也应该有一些业务逻辑层具有这样的逻辑,可以在尝试创建新的患者文件之前查看某些字段已专门完成。正在构建的系统也将以某种形式容纳规则。

关于agile - 业务规则集成到用户故事,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3452980/

相关文章:

tfs - 用什么工具接收客户需求

c# - 对 'legacy' WPF 应用程序进行单元测试

mysql - 在数据库中存储业务逻辑

project-management - 将项目的第一个用户故事分解为任务

c# - 该术语表示花在理解遗留应用程序代码上的时间

build-process - 谁在敏捷环境中修改受影响的组件?

attributes - 如何在 XSD 中定义所需属性组?

version-control - 您的敏捷工作流程是什么样的,特别是发布频率和源代码控制管理?

requirements - 收集问题,改进,想法的好工具

sql-server-2005 - 数据驱动的业务规则。