浅谈需求分析

作者: 找一个地方随便写点东西 | 来源:发表于2017-12-25 15:42 被阅读78次

1.概念定义
2.需求层次
3.需求工程
4.实际需求工作

需求在wikipedia中的基本意义讲是需要与欲求的意思,也可以解释为了达到某一目标/诉求的欲望,而在软件工程当中软件需求可以定义为

用户解决某一问题或达到某一目标所需的软件功能。系统或系统构件为了满足合同、规约、标准或其他正式实行的文档而必须满足或具备的软件功能

需求分析(Requirement Analysis)可以理解为调查用户对实现某一需要和要求,结合实际的目标、现状、实力和技术等因素,通过深入分析,确定出可行性计划/实施方案,并且完整描述出来的一个过程。现实中目前更多应用在软件工程学科上(但不仅限于软件工程)。

软件需求主要包含三个不同的层次:

  1. 业务需求(Business Requirement)
    反映了组织机构或客户对系统、产品高层次的目标要求
  2. 用户需求(User Requirement)
    描述了用户使用产品必须要完成的任务
  3. 功能需求(Functional Requirement)
    定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求

用一张图来区分三者的区别。

需求层级

在软件项目生命周期中,需求分析前期重要的一环,尤其是在一些瀑布流式开发模型的项目中,前期更要投入大量时间和精力。

在需求工程中主要分为:

  1. 需求调研/获取
    由分析人员通过座谈、走访、问卷、召开座谈会、脑暴、场景和用例分析等形式,深入了解用户对建立信息系统的需要和要求。

关键词:计划 沟通

根据需求的层次不同,需求的主要调研对象和需求可以是

  • 业务代表、公司组织机构高层对系统所实现的愿景和目标的描述
  • 一线员工、用户对系统实现的功能,达到的效果的描述
  • 为满足市场而实现的主要需求
  • 竞品所具备而不可或缺的需求

在同业务方/用户进行调研前,建议首先构建好调研的计划及主要内容框架,建议(但不限于)可以采用5W2H方法,开始可以主要明确几方面
(1)目前业务实际情况是怎么样?主要的业务流程?
(2)需要产品/系统实现哪些业务目标?
(3)涉及的用户角色都有哪些?用户有什么特点?
(4)具体的业务场景?
(5)是否存在上下游系统对接等情况
(6)……

业务方/用户对自己理解的业务描述过程中,往往与自己实际需求方面有很大的差异,提供(陈述、表达)的需求往往不是真是的需求,所以在在调研前,建议首先熟悉下目标用户的业务,这样在调研过程中能够对需求有个整体方向的把握,结合己方当前实力、技术等方面,启发和引导用户发现实际业务中存在并要解决的问题,发现潜在需求,也能够使需求人员尽可能的用更少的精力对更全面的需求进行获取。

需要注意的是,这一阶段从用户获取的一定是最原始、不经过个人加工的需求。

  1. 需求分析
    需求分析是对获取的用户需求,通过综合考虑组织目标、现状、技术条件、投资能力等因素,从信息系统目标、结构、功能、性能、风险等方面进行深入分析,最终确定出合理、可行的信息系统需求。

关键词:完备 合理

需求分析阶段需要针对调研和获取的需求进行分析匹配,把抽象的业务具象化,提出一个可行性的方案,可以针对总体目标对需求进行拆解,由大结构出发,自上而下进行分析

目标拆解

针对产品/软件,可以从以下几个角度进行:
(1)总体目标
(2)业务流程
(3)功能点
(4)数据要求
(5)用户角色
(6)用例
(7)……

实际情况中,来自用户的第一手需求往往是不明确、片面的信息,需求分析阶段就是对需求进行合理化加工的过程,这一阶段通常和需求调研阶段是并行或往复的,对用户需求修改、补充的阶段会发现需要再次调研确认的情况,如果这一阶段需求出现了缺陷和漏洞,在后续的开发阶段问题可能会被放大,解决问题的代价成本也会增加,所以及时与业务方/用户进行沟通,以便于对需求有一个全面完备的了解,在前期尽可能的给出一个全面合理的可行性方案。

  1. 需求定义
    建立信息系统的需求说明文档,把需求分析的结果采用规范的形式描述出来,形成需求规格说明,作为下面开发工作的依据。

针对文档面向的用户不同,在编写会区别为客户需求文档供给客户/业务方,软件需求文档供给与开发人员,或是PRD等等形式,主要针对不同的人群在编写的侧重点和描述上有所差异。

  1. 需求确认
    由分析人员通过一定手段对初步确定的信息系统需求的正确性和可行性进行验证,以确定正确和可行的需求,排除不可行的需求。也可称作需求检验,需求人员如果在前期可以针对存在的问题进行纠正,就可以避免后期问题被放大的风险。

常体现在三种情况进行这一环节工作,
(1)自查
(2)需求评审
(3)用户审查

总结:在进行需求调研、分析时,要考虑到实际的业务场景,考虑到业务方具体的业务复杂程度,对于产品/业务系统来说,对业务的熟悉学习是开展需求的良好基础,所以在实际需求工作规划前,对业务进行充分的深入是开展需求工作的第一步。

相关文章

  • 浅谈软件需求2018-06-25

    微信+17031115530,拉测试微信群交流 浅谈软件需求 需求分析师师在需求调研分析工作中经常会用到各种分析方...

  • 需求管理篇-需求分析表

    背景:产品经理日常做的最多得是收集需求、分析需求、转为产品需求。 本文目标:本次主要是对需求分析这个环节浅谈下自我...

  • 浅谈需求分析

    1.概念定义2.需求层次3.需求工程4.实际需求工作 需求在wikipedia中的基本意义讲是需要与欲求的意思,也...

  • 浅谈测试需求分析

    原文:浅谈测试需求分析 - 知乎 (zhihu.com)[https://zhuanlan.zhihu.com/p...

  • B端产品需求分析浅谈

    B端产品需求分析浅谈,欢迎大神拍砖。 https://mp.weixin.qq.com/s/JDDXIPktr23...

  • 自动化测试相关

    浅谈AST(自动化测试)流程,欢迎大家多多指点,多提宝贵意见。 AST阶段一:需求收集——分析自动化测试需求 举行...

  • 【转】兼容多浏览器的js快速复制代码实现

    原文链接:浅谈 JS 复制 需求 点击按钮实现复制 用户名的功能 问题分析 使用 window.clipboar...

  • 浅谈需求分析师

    先来看一个老掉牙的故事:福特说,我在设计汽车之前,到处去问人们“需要一个什么样的更好的交通工具?”,几乎所有人的答...

  • 浅谈需求分析——明确用户

    作为一个产品小白来讲,要想吃透需求分析不是一个轻松的过程,这里面我们需要学习的东西很多,今天我就先来谈一谈“明确用...

  • 浅谈产品需求分析文档

    对于产品需求分析文档,不同项目和功能有不同的格式及内容,博主依据自己的工作经验,尝试输出一份通用化的需求分析文档。...

网友评论

    本文标题:浅谈需求分析

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