美文网首页@产品
软件需求定义原则—由INVEST原则启发

软件需求定义原则—由INVEST原则启发

作者: 胡凤凤0104 | 来源:发表于2020-04-23 21:14 被阅读0次

之前在文章测试工程师的修炼:识别需求中提到,再传统的软件开发生命周期中,关于需求的定义原则部分,我们说过软件需求定义的四条原则:

正确性Correct

完整性Complete

一致性(内部、外部)Consistent

可测试性Testable

相对于传统软件开发,敏捷软件开发中关于用户故事的划分,Bill Wake也曾经提出过INVEST原则:

Independent独立的:用户故事相对于其他用户故事来说,应该是独立的。用户故事的依赖性可能导致任务估算的困难,进而影响计划的制定。通常情况下,可以使用组合或拆分用户故事的方式减少其相互之间的依赖性。

Negotiable可协商的/便于沟通的:一个用户故事的卡片应该包含故事详情的简短描述,详情通过讨论阶段完成。一张包含足够详情的用户故事卡片实际上是减少了和客户的沟通。

Valuable有价值的:每个用户故事都应该对客户有价值。一个让用户故事有价值的方法就是让客户写下来。一旦一个客户意识到一个用户故事并不是一个契约而是可协商的,用户将非常乐意写下他们。

Estimate-able可估算的:开发者应该可以估算用户故事,以确定优先级或进行故事规划。一些阻止开发人员估算的障碍包括:缺乏领域知识(这时应进行更多的沟通)、故事太大了(这时应对用户故事进行拆分)。

Small粒度合适的:一个用户故事应该在工作量上短小,且不超过2–3人周的工作量。超过这个范围,将会在范围划分和估算上出现问题。

Testable可测试的:用户故事只有可测试才可以确认何时完成。如,“软件应易于使用”,这个用户故事是不可测试的,因而开发和测试时也缺少明确的完成标准。


这五条特性中,独立性、价值性、可估算性、可测试性,都是对于传统软件需求划分也适用的。这样结合起来,软件需求也应该满足如下原则:

正确性

完备性

独立性

价值性

可估算性

粒度合适

可测试性

将这七点直接凑在一起,也有些不合逻辑,貌似是在从不同的层面上讨论需求的定义原则。使用下图可以对其分类整理,可以从内容、粒度、价值属性、可测试性四个维度对其进行约束。

图1 软件需求定义原则

内容维度:正确、完整且相互独立无依赖;

粒度维度:粒度合适,可估算(不存在无法估算或估算可能极其不准确的需求);

价值属性:对用户有价值的需求,才值得实现;

可测试性:可测试性定义了需求实现的判定准则和工作范围,如果无法判断是否实现,即缺少明确的工作范围定义,后期可能导致项目的范围蔓延。


相关文章

  • 软件需求定义原则—由INVEST原则启发

    之前在文章测试工程师的修炼:识别需求中提到,再传统的软件开发生命周期中,关于需求的定义原则部分,我们说过软件需求定...

  • 设计模式之设计原则

    软件设计原则(Software design principles) 开闭原则: 定义:一...

  • 用户故事

    好的用户故事应该遵循INVEST原则:-Independent-Negotiable-Valuable-Estim...

  • 用户故事的INVEST原则

    用户故事的INVEST原则 Independent 独立的 Negotiable 可讨论的 Valuable to...

  • 如何理解开闭原则

    开闭原则的英文全称是 Open Closed Principle,简写为 OCP。 开闭原则的定义:软件实体(模块...

  • SOLID 软件设计原则

    什么是软件设计原则? 软件设计原则是一组帮助我们避开不良设计的指导方针。这些设计原则是由 Robert Marti...

  • 七大软件设计原则

    七大软件设计原则 一、开闭原则(Open-Closed Principle) 定义:一个软件实体如类、模块和函...

  • Java设计原则

    开闭原则(Open Closed Principle,OCP) 开闭原则的含义是:当应用的需求改变时,在不修改软件...

  • scrum精髓(敏捷转型指南)第五章

    【目录】 需求与用户故事 好故事的INVEST原则 用户故事应该是独立的,至少也应该是相互间松散耦合的 故事细节应...

  • 面向对象设计五大原则(2)—— 开闭原则

    开闭原则的定义 开闭原则定义如下: 软件中的对象(类,模块,函数等等)应该对于扩展是开放的,但是对于修改是封闭的 ...

网友评论

    本文标题:软件需求定义原则—由INVEST原则启发

    本文链接:https://www.haomeiwen.com/subject/akuzihtx.html