敏捷要求:不是矛盾

成人儿童。巨型虾。真的很有趣。我相信你认为这些表达是矛盾的自我矛盾的短语,通常具有讽刺意味。

我们应该将“敏捷要求”添加到列表中?敏捷发展是否适合传统的要求实践?如果是这样,怎么样?

再次进入违规行为

传统上,定义要求涉及仔细分析和记录和检查和重新检查以了解。它是文档支持的纪律方法,包括模型和规范。对于许多组织来说,这意味着数周或几个月的分析,最小的跨团队协作以及文件的射程。

相比之下,敏捷实践 - 瘦且健康的, 克鲁姆, XP. , FDD., 水晶等等,涉及 了解小型要求,并以眼睛为真理的测试开发它们。您可以通过向他们显示提供的软件片段来确认客户的需求。

但敏捷项目仍然产生要求和文档,它们涉及大量分析。在最佳敏捷项目中,要求实践结合速度,调整和协作的纪律,严谨和分析。因为软件开发是一个随着不断发展的“邪恶问题”,所以具有不断发展的要求, 使用迭代和敏捷实践不仅是常识,而且是经济上所需的.

实际上,敏捷要求在敏捷规划,开发和交付期间识别和提供价值。

规划

敏捷团队基础产品对业务价值的要求 - 例如,提高收入,降低成本,改善服务,遵守监管限制,并满足市场目标。如果您是敏捷的话,这意味着您将专注于产品或过程中的价值和抛弃物质,这是不有价值的。

规划涵盖不仅“现在 - 视图”(当前迭代),而且是“预测”(释放)和“大视图”(视觉和产品路线图),具有密切 注意非功能 以及功能要求。这 产品路线图 对保持奖品的眼睛至关重要,特别是在大型复杂的产品中。您不必知道每个特定路线,但必须清除整体方式。它由产品愿景驱动,并以行业事件,日期或关键特征为标志,必须沿着路线实现。

客户(或“产品所有者,Scrum术语”)推动敏捷规划,不断重现要求和评估风险和依赖性。关闭客户合作至关重要。其中一个原始的敏捷方法, DSDM., 具有 客户参与 作为第一个原则。

您的Agile Backlog或Catalog的产品需求不断变化 - 每当您进行规划时(例如,用于释放或迭代),或者如果您使用的是寻呼/流模型,每次准备就准备进入另一个要求。计划是基于决定建立什么,而何时。

敏捷的交付团队前进,准备开发和测试的要求。这 准备尽快提供价值,流动平滑,无延长或交付和测试中断。

发展

敏捷团队的工作是基于构建简洁,细粒度的要求(通常捕获为用户故事)。开发人员需要 小,夯实的要求 从事工作。具有明确的满足条件(捐赠)的小要求最大限度地减少风险。

该团队还可以绘制有机数据模型,状态图和接口样机。这些都是 像微观规格:“准备好”要求拉入交付。该团队足以估计,开发,测试和展示要求。

捐款是要求的关键方面。我写了关于“完成”的要求 在我的第一本书中 (2002):团队和客户需要知道他们什么时候了解足以建立和测试的要求。此概念通常在敏捷开发中使用,不仅指的是要求,还指的是构建,测试和发布过程。

交付

根据团队清楚地了解要求依赖性的要求,建立和发布,这也推动了架构权衡决策。当各自依赖于(并因此约束)时,要求彼此依赖。

聪明的敏捷团队 分析开发和交付依赖项 优化价值。传统的需求模型对于依赖性分析非常有用,并补充敏捷的轻量级要求(例如用户故事)。

都很好

“敏捷要求”不是矛盾的,尽管它可能是一点悖论 - 以同样的方式使得简洁使得能够复杂,但小的不完整性促进了完成,而且你必须 放慢加速。实际上,敏捷要求是敏捷规划,开发和交付的核心。

资源

敏捷, 合作, 敏捷分析, 价值
Response to “敏捷要求:不是矛盾”

发表评论

您的电子邮件地址不会被公开。 必需的地方已做标记 *