1.1需求调研(一) - 需求调研的目的

简介

需求调研是大多数数据分析师或数据挖掘师都要兼顾的工作。对一个项目来说,需求调研就像是铁路的轨道、飞机的航线,它同时定义了一个项目的核心思想与详细方案。同时需求也是风向标,整个项目的架构、开发、建模、测试将全部围绕着需求调研的结果展开。而需求本身,既可以是High Level的愿景,也可以是Detail Level的准则。需求分析的目的就是在不断的交流中,梳理出逻辑性、体系性强的需求框架,并用各个项目角色能理解的方式将其表述出来。

一句话解释版本:

需求调研的目的是整理出一条明确的树图,将需求从High Level到Detail Level的逻辑关系梳理出来。

数据分析与挖掘体系位置

严格来说,需求调研不算是数据分析挖掘框架的一部分。但是由于其对样本抽取、模型构建等过程影响实在很大,所以将其算为整个体系的首位。其在数据分析与数据挖掘中的位置如下图所示。

需求的定义与分类

需求调研是为了明确需求,那么什么是需求?在我的理解中,需求就是要明确:你想要什么?你想怎么要?

在工作中,我遇到的需求千奇百怪,要对其分类并不容易,所以我就将需求按照其明确程度进行了划分。

High Level Requirement

High Level的需求是最不明确的,它更像是一个愿景或者美好的设想。如果接触过Agile项目的人,会熟悉vision的概念。这种High Level的需求,在我看就像是一种愿景。

High Level的需求长什么样子呢?比如:

  • 想更好的管理系统中的数据。
  • 数据分析一直出不来结果,希望能把这里产出效率提升一下。
  • 营业额太低了,希望能想办法改变。
  • 数据很乱,不能监控。

这些需求,听上去就很大、虚、空、扯。即便得到了这个需求,你依然会有种二张和尚摸不着头脑的感觉。项目如何实施?有没有开发?分析什么数据?这些影响项目开支以及人员工作的信息完全在需求中体现不出来,这样的需求就是High Level的。

但是,这样的需求虽然对评估工时、模型选取、数据架构设计没什么贡献,但是它却是必须的。因为High Level的需求定义了整个项目的基调。由于它高度的抽象,并且极度凝练,所以在定义项目整体目标与方向时,High Level的需求就派上用场了。

当作为项目中的一员不确定自己的工作最终目的是什么的时候,就可以回顾High Level Requirement。因为不管你是做开发,还是做数据抽取,还是做建模,最终,都要服务与High Level Requirement。

所以,需求调研是需要有高度抽象并整合的High Lvel Requirement的。比如前举的那些例子就可以被凝炼为以下High Level需求:

  • 数据治理优化
  • 数据分析效率提升
  • 营业额提升
  • 数据监控功能实现

Detailed Level Requirement

需求如果有抽象、凝练的,相对应就有细节、琐碎的。这些需求特别的细致繁琐,它很想是一条条的规则或是标准。同样,熟悉Agile项目的话,会知道Story的概念,有时候细节性的需求比一个Story的粒度还要小。那么同样举几个我见过的Detailed Level需求。

  • 报表要用直方图呈现。
  • 管理员用户需要能自定义表格。
  • 表格名称均用英文大写。

这样的需求特点就是细致,它能够精准的定义项目中的各个细节。但是看完这个需求,我的感觉就是:我是谁?我在那儿?这什么情况?因为这种需求即便提了出来,我们也不知道怎么实施!因为没有整体的大环境,没有背景交代,没有项目工作介绍,只有这样detail的需求只能让人觉得一片散沙,没有章法。

但是,这样的需求却是能直接指导技术人员的开发。因为它足够细致,项目到了实施阶段,不细致的需求,只能让技术人员的开发工作更慢。

需求调研的目的

所以,需求调研,既要把握住High Level的需求,同时也要了解Detailed Level的需求。同时,最关键的是:

需求调研要梳理并明确High Level需求到Detailed Level需求中间的过程。

这是我觉得整个需求分析过程中最重要的事情:你要能够产出一个树形图,将客户的High Level需求愿景不断细化,直至Detailed Level需求。或者将Detailed Level需求不断抽象,直至归纳出High Level的需求。

所以,在你的需求分析结果中,从High到Detailed之间的那些中间需求,才是体现需求分析价值的地方。

当然,这里讨论的仅仅是我个人对于需求调研的理解,肯定有主观的因素以及考虑不全面的地方。

需求调研需注意的事

虽说我把需求的目标总结出来,但是实际工作中,需求绝不仅仅是从抽象到明细的梳理。

更多的时候,需求调研与一个项目的进程有紧密的关系。所以,在调研时我们除了关注“需求是什么?”,还需要考虑:项目目标与范围是什么?现有的项目到了什么阶段?这个需求是不是属于项目的范围?我们在这个时间段是否能够有足够的人员支持需求?

所以,在需求分析中,足够内部人员交流与沟通,保持项目目标与范围的明确,都是需求调研必不可少的。也是避免需求下来,开发人员准备板儿砖的良策。

猜你喜欢

转载自blog.csdn.net/Orange_Spotty_Cat/article/details/81355056