需求分析(一)概念、方法、实践步骤

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

需求分析(一)概念、方法、实践步骤

1.概念、方法、实践步骤

需求分析阶段主要通过收集、分析、导出的方法,将客户、业务、用户的需求转换为对应的(软件)系统需求的过程。典型的工作产品:软件需求说明(Software Requirements Specifications,以下简称SRS)其主要包括系统基本概要、业务功能、系统功能(性能、安全性、信赖性、扩充性、移植性、多语言对应性等要求)、接口功能要求等内容。

1.1 需求分析阶段的主要活动

需求分析阶段的主要活动可以分为需求开发、需求管理2类:

需求开发通过对客户、业务、用户、原系统等调查获取原始的需求,经过需求分析逐步识别并使业务具体化,通过形成制作规格说明书(或SRS)使业务系统化,项目团队同客户、用户逐步达成共识对需求得以最终确认,其间可以通过系统建模、POC等方式评估需求的可实现性。

需求管理在需求开发过程中,通过需求范围认定、需求形式化记录、需求数据库建立、需求状态跟踪、需求变更分析和波动评估、需求评审控制等活动,通过使用需求管理工具等手段,实现对系统需求按基线进行控制和管理。其核心内容变更管理、版本管理以及需求跟踪。

1.2 需求开发的主要概念以及核心步骤

业务需求反映了企业或组织对(软件)系统的业务要求,通常也包含问题或机会的定义。问题是指企业或组织运作过程中遇到的问题,例如物资供应脱节、用户投诉量大、客户流失率较高等。机会是指抓住外部环境变化所带来的机会,以便为企业带来新的发展,例如电子商务、网上银行、基于即时通信的工作协同系统等。业务需求通常由管理人员提出,业务需求的解决往往要结合制度、(人员)能力、系统功能等多方面综合解决。另外,业务需求也反映了企业或组织对(软件)系统的高层次目标要求,就是系统的建设的目的以及目标。

用户需求是指描述用户使用(软件)系统需要完成什么任务,怎么完成的需求,通常是在问题定义(业务需求)的基础上进用户访谈、调查,对用户使用的场景进行整理,从而建立用户角度的需求。解决如何使用(软件)系统完成具体工作。

软件系统需求是在业务需求的指导下,对用户需求进行整理、分析、提炼,从而指导开发的、更精确的、规格化的需求。一般来说,软件需求可以作为软件验收依据与合同契约。软件系统需求可以分为业务功能需求、系统功能需求、设计约束等方面的内容。

业务功能需求:(软件)系统必须完成的业务功能,即为了向它的用户提供有用的

功能,产品必须执行的动作。这部分工作将分散的用户零散的需求采用结构化的

方法去定义,以便支撑后续的设计、开发、测试。

系统功能需求:(软件)系统必须具备的功能、性能、属性。包括系统性能(功能

速度、响应时间、恢复时间等等)、可靠性、易用性、安全性、移植、部署等方

面的内容需求。

设计约束的需求:影响系统实现的各种设计约束,包括开发语言、数据完整性方

针、资源的限制、运行的环境的要求等等。

2.主要流程

需求分析阶段的主要活动围绕需求开发进行,包括制定及修改需求开发计划、开展需求调查以及分析、需求验证、需求规则说明制作、需求确认几个步骤。

1.制定及修改需求开发计划包括建立需求团队的组织并授权、对需求分析阶段的WBS进行分解、协商并制定调查分析以及评审计划、评估工作量等等方面的内容,其目的是保证各项活动有序、可控的进行。

2.需求调查以及分析的过程,主要活动通过沟通、收集项目中的各级关系人的需求,形成需求调查报告。需求调查通过现场参观、开调查会、业务专家培训、询问沟通、设计调查表并调查、收集查阅记录等方式获取客户、用户各级组织对(软件)系统需求,分析并识别客户以及用户的需要、期望、业务要求,归纳整理后形成需求调查报告。

3.需求验证环节主要通过原型(Prototype)、POC(Proof of Concept)、用例(Use Case)或简单的功能列表的方式同客户、用户沟通逐步将业务需求、用户需求等转化为软件系统需求。

•原型(Prototype)模拟最终软件的屏幕显示,这样用户可以看到最终软件将是什么样,有些原型可以模拟实际的操作,对关键的输入输出数据也可以

一定程度的模拟。对于用户体验为主的系统往往可以起到很好的效果。

•POC(Proof Of Concept)原意是“为观点提供证据”。对于关键的技术或者业务模型,论证需求、设计的可实施性,评估和确认概念设计方案,POC的

评价可能引起需求和设计的调整。一般来说,进行POC的条件:1. 论证业

务中涉及到的模型或者算法的可行性。2. 论证技术模型实现的可行性、成本

等。

•用例(Use Case):对(软件)系统如何反应外界请求的描述,是一种通过用户的使用场景来获取需求的技术。每个用例提供了一个或多个场景,该场

景说明了系统是如何同最终用户或其它系统交互(interact)的,也就是谁可以

用系统做什么,从而获得一个明确的业务目标。

4.需求规则说明(SRS)制作:通过需求调查和初步的需求验证后,可以建立需求制作的准则,包括确认需求规则说明(SRS)的内容、制作方法、制作工具、质量标准等等。根据需求制作的准则制作需求规格说明(SRS),好的需求规格说明(SRS)应该遵循正确、无歧义、完备、一致、分级(重要性或稳定性)、可验证、可修改、可追踪的原则。

5.需求确认:通过组织各级评审对需求分析阶段的产物,尤其最重要的结果产物需求规格说明(SRS)进行确认,以确保相关人员理解一致。从评审方法来说,可以根据情况分为需求开发组组内评审、客户外部评审、关键关系人评审等等。

需求分析的流程往往因项目规模、作业人员、系统类型差异很大,因此必须根据实际的情况合理的裁减,以下举例几种不同情况下的具体流程:

例:简明的需求开发的流程

第1步:确定实现的目的、目标,基本业务需求、业务定义以及相关的评审。

从达到目的、目标的角度,重新评审业务定义,总结业务需求。(确认客户实施的业务要求)

第2步:使业务具体化,进行软件系统的定义(系统需求定义)。

从目的的角度,进行业务定义(功能,步骤),对系统结构进行讨论、对所要进行系统化或计算机化的功能、流程进行定义。

第3步:一边定义业务需求、系统需求、一边对运行上的相关要求(非功能需求)进行总结

运行时间,安全应对、访问权限等系统需求以及设计约束在业务需求的基础之上、考虑系统上的限制条件之后逐步形成。

相关文档
最新文档