如何通过UML提升B端需求分析及挖掘的能力?

Posted 辛克派

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通过UML提升B端需求分析及挖掘的能力?相关的知识,希望对你有一定的参考价值。

产品经理的工作主要是需求方面的工作,而需求方面可以分为需求分析和需求管理两部分。简单地说,需求分析主要是如何全面、准确地获取需求;需求管理主要是对需求的处理(如范围控制、需求确认、需求变更等)及如何以需求驱动进行工作。作为B端产品经理,对客户反馈的需求进行分析并深度挖掘客户的本质需求,是其主要职责之一。但在具体的需求分析和管理工作中,普遍存在一些问题:客户需要的是A,产品经理了解到的是B,开发人员做出来的是C,测试人员以为的是D,各种角色所理解的需求不一致;客户今天想要X,明天改变主意要Y,但后天呢突然又说还是X好,到最后他想要Z,客户的需求变来变去,无法准确把握客户的需求;客户不愿意确认需求,先让你做出来看看效果,然后慢慢提意见等等。笔者认为,如何快速、全面、准确地把握客户的真正需求,是解决前述问题的根本途径。UML可以帮助我们提升B端的需求分析及挖掘能力,让我们更容易获取客户的本质需求。

 

一、什么是UML


UML,全称Unified Modeling Language(统一建模语言),UML作为软件开发界的一套标准,不仅可以用于软件设计,也可以用于需求分析。UML包含很多种图(如下图所示)


二、关联角色及特点


B端产品,一般都会涉及到客户(甲方)和服务方(乙方),对两者相关角色的清楚认识,有助于我们更有针对性地做好需求分析的工作。(如下图所示)

如何通过UML提升B端需求分析及挖掘的能力?

如何通过UML提升B端需求分析及挖掘的能力?

客户(甲方)的总倾向是希望自己少花钱,让服务方(乙方)多做事情;而服务方(乙方)的总倾向是希望多拿客户的钱,尽量少做事情或者不多做事情。影响各角色对需求理解的主要因素有两方面:一是角色的思考倾向;二是人的需求分析能力。每个人嘴巴上说的需求和心目中的需求总是存有差异的,受个人的表达能力所限,不是每个人都能完整准确地表达自己的想法。


三、对需求的理解对比


客户的想法总是在不断变化,让我们觉得很不舒服,究其原因是因为我们对需求理解的进步程度不如客户(如下图所示)。随着项目时间的发展,客户对需求的理解越来越深,尽管我们对需求的理解同样越来越深,但我们对需求的认识总是落后于客户。这样的需求分析工作肯定会陷于被动,总会被客户“牵着鼻子走”。极易出现互相责怪的局面:客户责怪我们水平差,而我们也会责怪客户需求总是变来变去。

如何通过UML提升B端需求分析及挖掘的能力?

要想打破上图的尴尬局面,我们在对需求的理解程度上一定要超过客户(如下图所示)。项目在刚开始时,客户对需求的理解程度确实比我们强,如果我们想在短时间内超越客户对需求的认识,我们应具备超强的业务学习能力,深入理解客户的真正需要,为客户规划出真正符合其需要的系统产品。

 

四、UML需求分析过程


需求分析核心的问题就是客户到底想要什么的问题,客户往往只会有朦胧大概的想法,他们提出来的需求只是表面的、部分的,甚至是互相矛盾的,我们需要透过其表面需求获取到本质需求。全面深入理解客户的业务,才能帮忙我们准确地把握客户的需求。而在理解客户业务的同时,我们往往需要做业务流程再造的工作。提供一套系统,并不是手工工作转变为信息化这么简单,会涉及到工作模式、工作习惯、管理思想等一系列的改变,也会涉及到很多人的利益及利益关系发生变化。我们可以利用结构型的UML图对客户业务进行结构建模,即对业务概念等静态结构进行系统化的梳理和提炼;利用行为型的UML图进行行为建模,即对业务流程等动态内容进行系统化的梳理和提炼。这些建模活动可以帮助我们更好地认识客户的业务和做好业务流程再造的工作。(如下图所示)


五、最后小结


需求分析的首要任务是保证产品的价值,保证我们做出来的产品是符合客户利益的。需求分析的工作是一项复杂度很高的工作,如果我们获取不到客户的真正需求,就很可能导致前期付出巨大成本仍然不能满足客户的利益。作为服务方,我们不应该只将自己定位在系统软件的制造者,而应该是软件价值的创造者。我们不应该被动地接受客户需求,而应该主动出击,帮助客户找出真正的需要,整理出符合客户需要的需求规格。我们不是为客户提供一套简单的软件系统,而是提供一套能提升客户价值的产品服务。

以上是关于如何通过UML提升B端需求分析及挖掘的能力?的主要内容,如果未能解决你的问题,请参考以下文章

UML-需求分析的利器

B端产品经理常用的几种UML图

02《UML大战需求分析》阅读笔记之二

好书推荐:《火球:UML大战需求分析》,UML入门经典

《UML大战需求分析》阅读笔记04

产品经理必看:常用的UML建模详解