高质量需求

作者: JackMA杰黑马 | 来源:发表于2019-05-26 22:15 被阅读4次

        作为一个BA,我不时思考,怎样的需求才是高质量的需求,或者算是好的需求。从学习中接触到以下,在不同情景中的方法或标准,在此归纳和总结。

        1、SMART,描述目标的通用标准。回答什么是需求的一个简单的公式是:需求 = 预期 - 现状。现状就在那里,需要我们分析好,在编写描述的时候会更注重预期,也就是目标的描述。所以我认为“SMART”也可以作为需求描述的通用标准。复习一下SMART的定义:

    Specific:明确性,清晰简洁的描述。

    Measurable:可测量性,在软件开发中可以替换为明确的测试用例或验收条件。

    Achievable:可达成性,技术、架构、团队效能的考虑。

    Relevant:相关性,相关的故障或业务价值。

    Time-Bound:时限性,明确的交付时间。

        2、在Scrum中,Product Backlog是需求的重要组成部分。一个良好的,健康的PB应该符合以下的标准(DEEP):

    Detailed appropriately:作为敏捷架构的Scrum,同样强调“工作的软件高于面面俱到的文档”。而这里强调详细适中,重点不在于文档,而在于理解。对于在下一个Sprint要做的需求,我们要通过PBR(Product Backlog Refinement)对需求有更好的理解。而其他的则可以略过。

    Estimated:被评估过的。同样,从敏捷的角度,对需求应该有一个估算,从体量、技术复杂度,需求复杂度三方面做一个相对的估算。当然范围也是,下一个Sprint的需求。

    Emergent:紧急性,PB是动态变化的。PO可以增加,删除和重新排序PB里的需求。

    Prioritized:PB里的需求应该是按业务价值优先级排序的。

        3、敏捷中,需求以用户故事的形式出现。好的用户故事应该符合INVEST标准。

    Independent:独立性,避免故事之间的依赖。

    Negotiable:可协商,用户故事不是合约,实现的程度和方式应该是可协商的。

    Valuable:有价值,同样强调商业价值。

    Estimatable:可估计,能估算的,尤其保证开发者在业务、技术和工作量三方面能对故事有把握作出估算。

    Small:小规模,或许这里用Sized appropriately更合适,不是太大也不是太少。也许,能在一个迭代中完成是一个衡量的标准。

    Testable:可测试,每个故事应该独立的验证。

        4、PBA(商业分析实战指南)中认为高质量需求有以下的特点:

    Unambiguous:明确性,大家对需求的理解应该没有歧义的,如有,应该重新表述和记录。

    Precise:精确性,渐进明细,逐步细化尽量精确的描述需求。

    Consistent:一致性,避免需求重复和矛盾,使用术语表,形成共同、惯用语言。

    Correct:正确性,随着信息的获取,逐渐明细,确保解决方案正确的解决问题。

    Complete:完整性,收集足够,适当的信息,需求要能被完整的描述和理解。

    Measurable:可测量,每项需求要求是可以独立测量的。

    Feasible:可行性,运行,技术,成本效益,时间等方面的可行性。

    Traceable:跟踪性,往前可以追索到需求的起源,往后可以跟踪到解决方案的实现。

    Testable:可测性,以易于测试的方式描述。

        杂七杂八的汇集了一些方法和标准,有机会再继续补充,也请各位看官指教。

    相关文章

      网友评论

        本文标题:高质量需求

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