background image

            软件工程中的需求分析

【摘要】我国的信息化已经走过了

20 多年的历程,但许多软件开发公司仍不得不在收集、

编写和管理产品需求中疲于奔命。而缺乏用户参与、不完整的需求及不断变更需求,是导致
信息技术项目不能按进度安排和资金预算完成全部功能的主要原因。
  需求分析是软件工程中的一个重要环节。是关乎软件项目开发成败的重要因素。现在的
软件项目中返工开销几乎占了总开发的一半,而导致返工的主要原因是需求分析不明确.
从而引发项目开发中的一系列更改。这些更改可能导致浪费大量资源、软件项目无法按时完
成等严重问题。

 

因此不难看出,需求分析是软件设计和实现的基础,是软件项目迈向成功的重中之重。

关键字:软件工程

   需求分析   

一、软件工程中的需求分析概述
  一个软件项目的开发主要分为五个阶段:需求分析阶段、设计阶段、编码阶段、测试阶段
和维护阶段。而需求分析阶段所得到的结果。是软件项目开发中其他四个阶段的必备条件。从
以往的经验来看,需求分析中的一个稍稍的偏差.就可能导致整个项目无法达到预期的效
果。需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代
价,最终形成开发计划的一个复杂过程。在这个过程中。用户的确是处在主导地位,需求分
析工程师和项目经理要负责整理用户需求,为之后的软件设计打下基础。需求分析阶段结束
后 . 要 求 得 到 :

1 . SRS 文 档 (System  Requirement  Specification) ; 2 . DRM 文 档 ; 3 

Acceptance Plan。从广义上理解需求分析则包括需求的获取、分析、规格说明、变更、验证、管
理的一系列需求工程。

          

  二、软件工程中的需求工作流程
  软件需求是指用户对目标软件在功能、行为、性能、设计约束等方面的期望。通过对问题
及其环境的理解与分析,为问题涉及的信息、功能及行为建立模型,将用户需求精确化、完
全化,最终形成需求规格说明,整个活动构成软件开发生命周期的需求分析阶段。在需要的
开发中,问题的获取包括业务需求、用户需求、功能需求。业务需求的参与者主要是业务流程
分析员,对企业目前的业务流程进行评估。确定进行何种程度的业务建模;用户需求重心是
如何收集用户需求,确定角色和用例,获取需求的方法倾向组织访谈会:功能需求依赖于
用户需求。是用户需求在系统上的一个映射,为用户做一个软件原型是一个很好的方法。
  三、软件工程中的需求分析
  需求分析包括提炼、分析和仔细审查已收集到的需求,以确保所有承担风险者都明白其
含义。能找出其的错误、遗漏等地方。分析员通过评价来确定是否所有的需求和软件需求规格
说明都达到了优秀需求说明的要求。分析的目的在于开发出高质量的需求。这样你能做出实
用的项目估算并可以进行设计、构造和测试。通常。把需求中的一部分用多种形式来描述.如
同时用文本和图形来描述。分析这些不同的视图将揭示出一些更深的问题,这是单一视图无
法提供的。分析还包括与客户的交流以澄清某些混淆,并明确哪些需求是更为重要的。其目
的是确保所有风险承担者尽早地对项目达成共识并对将来的产品有个相同而清晰的认识。
  

1 创建数据字典。数据字典是对系统用到的所有数据项和结构的定义,以确保开发人员

使用统一的数据定义。在需求阶段.数据字典至少应定义客户数据项以确保客户与开发小组
使用一致的定义和术语。分析和设计工具通常包括数据字典组件。
  

2 确定需求的优先级别。应用分析方法来确定使用实例、产品特性或单项需求实现的优

先级别。以优先级为基础确定产品版本将包括哪些特性或哪类需求。当允许需求变更时,在