一个产品成功的基础是客户满意度,而客户满意度的基础是客户需求的分析质量。但是长期以来,许多产品苦于没有找到一套系统化、结构化的需求分析方法,备受需求分析质量不高的困扰。而“需求实例化”是一种系统化、结构化地进行需求分析的指导方法,可以有效地解决需求分析过程面临的困难,质量不高的难题。
但是,一种好方法的推广使用,不是一蹴而就的事情,也需要一个系统化的思路和法则来推动它落地起效。如何在一个产品项目中分阶段、有策略地推进“需求实例化”,以解决产品需求分析质量的痛点,转变需求分析参与人员的观念,为产品的客户满意度提升提供源源不绝的动力。PDCA循环是一个管理学的通用模型,是一种可以灵活运用的持续改善过程。基于PDCA循环的原则,从Plan(计划)、Do(实施)、Check(评估)和Action(改进)这四个维度来开展具体的行动,最终达成“需求实例化”落地生效的预期目标。
1、「以终为始的PDCA循环」保障需求澄清和沟通的质量
实例化需求活动上,业务、开发和测试人员通过实例澄清小批量的需求,澄清过程通常符合金字塔结构,在目标、操作和业务规则这三个层面,逐渐明晰,解决相应的挑战:
-目标层面:目标是什么?不做这个需求会怎么样?
-操作层面:通过哪些操作来实现这些目标?操作步骤合理吗?还可以更简化吗?
-业务规则层面:和操作相关的业务规则都考虑了吗?特殊情况,异常或错误处理包含了吗?是否涵盖了不同的业务、数据和接口类型?
解决以上问题,保障了需求目标的清晰、交互流程的简单合理、业务规则的完整覆盖,并让业务、开发和测试对需求形成一致理解。特别是基于共同领域模型的沟通,静态和动态视图相互印证进一步确保了需求的质量。
2、「以终为始的PDCA循环」的需求拆分是实例化需求的核心产品
作为核心产品,实例化需求还起到了需求拆分的作用。在实施精益敏捷产品开发过程中,需求拆分是许多团队面临的难题。之所以需求拆分困难,是因为它要做到:
-足够小:这样才能保障迭代或持续交付。
-端到端,这样才能保证交付有意义的价值。
-相对独立,这样才便于迭代和交付的灵活安排。
-拆分完还能看到整体的结构。
采用「以终为始的PDCA循环」的实例化需求,以上要求往往能顺便达成,需求会被自动的分解成一个个小的独立的操作,从用户角度的分析也保证了这些拆分后的需求是端到端且可交付的。
3、「以终为始的PDCA循环」通过“需求实例化”我们可以得到的收益
做到「以终为始」,实例化需求落实到位,验收测试驱动开发则水到渠成。正如前面实例化需求的概念三角中所表达的:
-在就绪队列填充前,团队通过实例化需求活动产生实例。
-实现过程中,团队将这些实例自动化,功能实现和自动化测试开发同步完成。
-实现完成后,团队用已经完成的自动化测试来验收这些需求。这个循环就是验收测试驱动开发循环。