本文通过需求调研、需求分析两个工作,讲解需求的挖掘、筛选和分析。需求调研前的准备工作需求调研前要做好准备工作,做足功课。准备工作越充足,调研效果越好。需求调研的类型根据项目所处的阶段,售前需求调研可以分为四种类型:1、首次接触需求调研:当公司获得一个项目线索,目标客户首次提出见面交流后进行的调研;2、深度参与阶段需求调研:当客户选择公司作为主要建设方,需要协助客户进行招标前工作,如提供项目申报材料、技术规范书等时进行的调研。也包括单一来源采购项目的立项前调研。3、实施阶段整体需求调研:在签单后进行的整体调研,如在深度参与阶段已进行调研,本阶段只需对一些部分进行细化。否则需对整体项目进行实施前详细调研。4、功能模块需求调研:对于客户实施阶段未明确功能、或客户新增功能的需求调研。明确调研目的目的就是方向,明确了目的才知道去做什么。在做需求调研前,售前要先明确调研的目的。以下仅指出四类型需求调研的一般目的:1、首次接触需求调研的目的:尽可能多的了解项目的背景、阶段、竞争对手、期限、预算、核心价值、主要诉求等情况,为技术交流等后续工作做准备。2、深度参与阶段需求调研的目的:明确建设范围、主要建设内容、业务流程、业务场景等,在满足时间要求下,调研越细致越好。3、实施阶段整体需求调研的目的:明确合同所有模块的建设细节,尽量把项目边界最小化。4、功能模块需求调研的目的:明确功能模块的需求范围、建设思路、功能细节、数据、规则、操作界面要求等。项目背景调查通过和线索提供人、客户经理等人了解情况,并结合上网查询等方式进行项目背景调查。主要适用于首次接触需求调研,别的类型适用部分。1、项目概况:包括项目建设的提出方或具体个人;项目的建设动机,为什么要建设本项目?要解决哪些业务问题?能带来哪些价值?客户对项目的关键预期,技术选型要求、建设周期等。2、客户情况:包括客户名称、所处行业、行业位置、组织结构、人员规模、主营业务等。3、项目现状:包括项目的前期建设情况,项目的建设阶段,信息化水平等。4、行业调查:包括行业的基本情况、行业内本业务相关解决方案、行业发展方向等。5、竞对调查:包括竞对公司对本项目的参与情况、竞对在客户单位的现状、竞对的产品或方案等。以上信息在准备阶段不一定能全部收集到,未明确内容可在需求调研阶段进行。演示材料准备(可选)若公司有本需求相关的产品介绍手册、建设方案PPT、演示模型等,可以准备好用于给客户演示。问题准备通过前面背景调查、资料准备的过程,结合其他项目调研工作经验(可参考下节“调研要收集的内容”),梳理调研要明确的问题。提不出问题,就得不到结果。要带着疑问去调研,这一点至关重要。如何做好需求调研需求调研方法常用的需求调研方法如下:1、访谈:与客户通过交谈、提问的方式获取需求,这是售前最常用的调研方式;2、参观:参观客户工作场所、工作流程、设备等;3、调查问卷:采用纸质、电子的调查问卷;4、参考现有产品;5、从标准、规划文件中获取;6、网上查找相关信息;调研要收集的内容不同类型的项目调研要收集的内容不同,下面以软件系统需求调研为例。1、业务场景:宏观上了解客户要解决哪些业务场景的问题;详细了解每个业务场景要解决的业务问题、线下业务工作方式;2、业务流程:调研每个业务场景的业务流程是什么,每个业务流程有哪些环节、路径,异常情况如何处理;3、系统用户:调研系统有哪些用户,用户有什么权限;每个业务环节有哪些用户;4、系统功能:调研系统要具备哪些功能;每个业务环节要实现哪些功能;每个环节的用户要进行哪些操作;5、数据:每个功能、业务环节要使用和操作哪些数据;数据源是什么,数据产生的时间段、时间粒度是什么;确定数据的类型和范围;数据接口调研;6、规则:调研数据生成的规则,指标的计算规则;7、非功能需求,主要为:①界面要求:收集客户对系统界面风格、版式、颜色的偏好和需求;②性能需求:评估每个功能的业务处理量,对系统性能的影响等;③环境需求:对系统将来使用的硬件、操作系统、网络情况、中间件等进行了解;④安全需求:客户对于系统安全、数据隐私等的特殊要求;⑤架构需求:客户对架构的特殊要求;⑥其他需求8、项目约束:①进度约束:如项目申报、领导参观、集团巡视等时间限制要求;②预算约束:可以直接问,也可以通过其经营规模、客户数量、历史同行投入推导③资源约束:如建设场地、大型设备等;④其他约束:法律法规、技术标准、社会文化等需求调研的技巧1、认真仔细倾听,及时记录。可以使用录音帮助记录2、不要使用太技术的语言与客户交流3、根据客户类型应对。以下是部分类型,仅提供一些个人应对建议。①强势型:强势型客户经常会提一些超出合同范围的需求,既要让客户满意,又要有理有据的拒绝。②随和型:随和型客户的需求容易掌控,标准不是很高,容易合作和达成共识。③啥都不懂型:需求容易掌控,但是往往提不出合理的建议,需要多做引导,挖掘潜在需求。④业务专家型:该类客户会很明确提出自己的想法,甚至是系统实现方式。不能止步于客户提出的功能,要考虑如何实现合理。⑤IT专家型:IT专家往往会提出一些技术选型等非功能需求,售前应该顺应客户的合理需求;⑥懒惰型:懒惰型客户需要售前人员主动推进。4、先了解宏观需求,再了解细节需求5、挖掘客户潜在需求。多考虑:客户想要什么?客户要这干什么用?他为什么这么想?会不会有别的想法?6、即时画草图与客户进行确认,从而明确是否符合客户的想法,即时改进问题;7、规避客户不合理的要求和较难实现的要求8、警惕不明确因素9、注意需求调研的覆盖面,防止需求不具代表性10、避免片面听取了某些客户需求而忽视其他客户的需求11、留下联系人方式,便于需求调研后解决疑问或遗漏问题12、明确调研后要落实的工作,一般要输出方案再次汇报,要明确完成时间;13、与同行人员相互沟通,进一步理解客户需求14、及时总结整理已经完成的调研内容需求调研常见问题需求调研容易出现以下问题,应当注意避免:1、需求调研不完备:通过对照准备的问题,查看调研是否完备。如果不完备,可以再找客户沟通。2、对需求理解有偏差:对需求的理解与客户的想法有偏差。在需求调研时,可通过给客户复述、画草图的方式,让客户判断是否符合想法。3、需求调研不明确:需求调研不够细致,很多细节不清楚、不明确。需要再次调研不明确部分。4、未挖掘到潜在需求:需求流于表面,未深刻掌握客户的需求;5、建设内容超出预算:要建设的内容远超出客户的预算。6、存在不可控风险:因为一些技术难点,或对客户的承诺无法实现,从而导致项目失败。造成问题的原因1、需求调研前的准备工作不充分:对项目概况、客户情况、行业情况等背景没有去查找,没有准备调研问题。2、售前技能欠缺①对产品、项目不够熟悉:需要通过自己操作系统、查阅资料,或与产品或项目负责人请教,了解产品或项目。②对客户业务不够熟悉:需要通过自学、与客户沟通等方式提升。③IT技术欠缺:通过查找资料、自学、项目历练,掌握自己领域的IT技术。④需求技能欠缺:需求工作不熟练,不会挖掘需求、不会引导客户。需要多学习、多锻炼。3、工作不及时工作不及时是造成需求调研的一个原因,如未即时提出疑问、未即时进行沟通、未即时整理材料、未即时反馈等。而售前工作讲究一个“快”字,快才能抢得先机。需求分析需求分析是开发人员经过深入细致的调研和分析,准确理解用户和项目的功能、性能、可靠性等具体要求,将用户非形式的需求表述转化为完整的需求定义,从而确定系统必须做什么的过程。需求分析要实现以下目标:1、准确理解并描述客户需求2、帮助客户挖掘需求3、分析客户需求的可行性4、剔除不合理的客户诉求5、将离散需求进行整合良好的需求分析有助于避免或尽早剔除项目早期错误,从而提高生产率、降低开发成本、改进系统质量。需求分析的过程1、明确建设目的明确客户建设IT系统或功能的目的是什么,明确了目的才能明确方向和范围。2、识别功能模块划分功能大块:明确客户要通过系统做哪几件事,对应的将需求划分为几个大功能模块;业务场景分析:分析每个功能模块都有哪些业务场景;3、需求识别本步骤是将客户提出的需求点进行评估和分拣,分类纳入功能模块、业务场景中。包括需求评估、需求分拣两个任务。需求评估:评估哪些需求能做,哪些不能做。不能做的需求主要有这几种情形:①无用需求:包括用户提的非系统实现功能等;②逻辑不符:逻辑与整体功能矛盾、不符;③技术上无法实现:现有技术无法实现或实现成本非常大;④超出范围或边界:超出约定范围或使用频率小、不重要但开发难度大。需求分拣:①按功能模块分拣、归类功能性需求;②将非功能性需求单独列出,如性能要求、可靠性要求、安全要求等。4、功能模块分析将需求点归类到功能模块、业务场景后,每个模块、场景就有了基本的需求要素和轮廓。此时需要先识别功能模块的类型——是一个子系统、APP,还是一个业务流程、统计报表?功能类型不同,采用的分析方法不同。常用的分析方法如下:①功能分解法:最常用的方法,按照经验将功能进行逐层分解。这种方法可以快速输出需求文档,但缺点也很多:如容易遗漏需求、需求有机结合程度低、对开发不友好等。②快速原型法:适合重视界面的需求,如软件系统、APP,优点是可以形象的与客户进行需求明确,缺点是输出难度大、无法取代文档、与底层数据逻辑未关联。③建模分析法:针对不同的功能类型,借助流程图、UML统一建模语言等工具,分析出需求的参与者、用户、数据流动、状态、操作等信息,提升需求分析效果。同一个功能,可以借助不同的工具,从多个视角进行分析。这类方法的缺点是费时费力。通过选用以上方法对功能模块逐一分析,要进一步剔除客户不合理需求,发现并补充调研阶段未想到的需求。5、需求组织将每个模块或场景分析后的需求进行梳理、简化、整合等处理,组织成有机整体,最后综合成系统的解决方案。建模分析方法本节简要介绍两个常用的软件建模分析方法。(要掌握这两个方法需读者成体系的学习和练习。相关资料可在网上查找,“IT售前圈”粉丝也可通过公众号获取)面向对象分析法面向对象分析 OOA(Object- Oriented Analysis)采用UML进行建模,是一种非常接近开发思想的分析方法。常用的有9种模型,可根据不同需求层次、类型进行选用。OOA需求分析步骤如下:①确定系统范围和系统边界;?②确定系统的约束(环境和条件);??③定义活动者;④确定系统的综合要求(功能、性能、运行);?⑤确定系统的数据要求(名称、范围、类型、数量、特点)⑥建立USE?CASE模型、绘制USE?CASE图;??⑦绘制主要交互图;?结构化分析法结构化分析法SA(Structured Analysis),采用自顶向下,逐层分解的方式分析系统,用数据流图(Data Flow Diagram,DFD)、数据字典(Data Dictionary,DD)描述系统。其基本策略是研究问题域中数据如何流动以及在各个环节上进行何种处理, 从而发现数据流和加工。问题域被映射为由数据流、加工以及文件、端点等成份构成的数据流图, 并用数据字典对数据流和加工进行详细说明。这种方法的关键是动态跟踪数据流动,也叫“数据流法”。SA法容易迷失在数据流细节,不适合做需求宏观理解,建议与OOA搭配使用。SA需求分析步骤如下:①画出数据流图。②决定哪些部分需要计算机化和怎样计算机化??③描述数据流细节,大型软件可以使用数据字典描述所有数据元素;??④定义处理逻辑(加工逻辑:每个加工处理做什么);??⑤定义数据存储,即定义每个存储的确切内容及其表示法(格式);??⑥定义物理资源:如是文件需指定:文件名、组织结构(排序、索引等)、存储介质和记录;如是数据库需指定每个表的相关信息;??⑦确定输入输出规格说明,如输入内容、输入屏幕、打印输出格式、输出长度等;⑧确定硬件所需有关数值,如输入量、打印频率、CPU、记录大小、数据量大小、文件大小等等;??⑨确定软硬件接口和环境需求。?以上两种模型可采用Visio、EdrawMax等图示工具绘制。需求分析与设计的界限需求分析阶段的目的是分析系统在功能上需要“做什么”,而不是考虑“怎么做”,后者是设计阶段的事。但在实际工作中,需求分析和设计的界限比较模糊,那么该如何进行界定呢?设计有三种类型:功能设计、界面设计、技术实现设计;①功能设计:如系统业务流程、操作、功能的设计等,这部分应由产品经理完成;②界面设计:UI设计,应由美工完成;③技术实现设计:包括系统架构、数据模型、技术实现方式等的设计,应由研发人员完成。在分工完全的公司或部门,从业务前线往后端应配备售前(或需求分析师)、产品经理、美工、研发,可以依照以上分工进行。但很多公司或部门缺少产品经理或美工,那么此时:功能设计一般由售前完成,界面设计则根据实际情况 ,由售前代劳或研发“脑补”了。
创业项目群,学习操作 18个小项目,添加 微信:923199819 备注:小项目!
如若转载,请注明出处:https://www.zodoho.com/140876.html
