行为驱动开发中的“功能”和“故事”有什么区别?

pic*_*rdo 2 bdd cucumber pivotaltracker

我正在开发一个产品,我正在使用 Pivotal Tracker 来编写用户故事,但我对 BDD 和 XP 还是很陌生,对 Cucumber 也比较陌生。所以我对术语有点困惑。故事和黄瓜特色有什么区别?两者都是由三部分组成的简单描述——参与者、行动和商业价值。对?因此,如果我已经在 Pivotal Tracker 中编写了一个故事,我是否应该直接将其复制到 Cucumber 功能中?一个故事可以有多个特点吗?

你怎么认为?

Lun*_*ore 5

一个功能是一个成熟的功能,准备上线。例如,一个功能可能是一个用户个人资料,包括注册页面、验证、图片等。

在 BDD 术语中,故事是功能特性的一小部分,我们可以获得反馈。例如,我们可能会在没有个人资料页面和没有验证的情况下生成注册。验证可能是另一回事。图片可以是另一个。

考虑到架构、新技术、领域学习等,生成一些更复杂的功能可能需要数周时间——所以一个故事让我们可以比这更快地获得反馈。

您可能有兴趣了解分析空间中的特征注入 - BDD。我们在故事和功能中大量使用该模板:

In order to <achieve a goal>
As <the stakeholder who wants the goal>
I want <something>
Run Code Online (Sandbox Code Playgroud)

只要我能尽快得到反馈,我就不会太担心我正在做的是一个功能还是一个故事。