当前位置:文档之家› 软件工程中的需求分析

软件工程中的需求分析

关于软件工程需求分析探究
来源:
[摘要]我国的信息化已经走过了20多年的历程,但许多软件开发公司仍不得不在收集、编写和管理产品需求中疲于奔命。

而缺乏用户参与、不完整的需求及不断变更需求,是导致信息技术项目不能按进度安排和资金预算完成全部功能的主要原因。

[关键词]用户软件开发软件工程
需求分析是软件工程中的一个重要环节。

是关乎软件项目开发成败的重要因素。

现在的软件项目中返工开销几乎占了总开发的一半,而导致返工的主要原因是需求分析不明确.从而引发项目开发中的一系列更改。

这些更改可能导致浪费大量资源、软件项目无法按时完成等严重问题。

所以,需求分析是软件设计和实现的基础,是软件项目迈向成功的重中之重。

一、软件工程中的需求分析概述
一个软件项目的开发主要分为五个阶段:需求分析阶段、设计阶段、编码阶段、测试阶段和维护阶段。

而需求分析阶段所得到的结果。

是软件项目开发中其他四个阶段的必备条件。

从以往的经验来看,需求分析中的一个稍稍的偏差.就可能导致整个项目无法达到预期的效果。

需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。

在这个过程中。

用户的确是处在主导地位,需求分析工程师和项目经理要负责整理用户需求,为之后的软件设计打下基础。

需求分析阶段结束后.要求得到:1.SRS文档(System Requirement Specification);2.DRM文档;3 Acceptance Plan。

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

二、软件工程中的需求工作流程
软件需求是指用户对目标软件在功能、行为、性能、设计约束等方面的期望。

通过对问题及其环境的理解与分析,为问题涉及的信息、功能及行为建立模型,将用户需求精确化、完全化,最终形成需求规格说明,如图1所示,整个活动构成软件开发生命周期的需求分析阶段。

在需要的开发中,问题的获取包括业务需求、用户需求、功能需求。

业务需求的参与者主要是业务流程分析员,对企业目前的业务流程进行评估。

确定进行何种程度的业务建模;用户需求重心是如何收集用户需求,确定角色和用例,获取需求的方法倾向组织访谈会:功能需求依赖于用户需求。

是用户需求在系统上的一个映射,为用户做一个软件原型是一个很好的方法。

三、软件工程中的需求分析
需求分析包括提炼、分析和仔细审查已收集到的需求,以确保所有承担风险者都明白其含义。

能找出其的错误、遗漏等地方。

分析员通过评价来确定是否所有的需求和软件需求规格说明都达到了优秀需求说明的要求。

分析的目的在于开发出高质量的需求。

这样你能做出实用的项目估算并可以进行设计、构造和测试。

通常。

把需求中的一部分用多种形式来描述.如同时用文本和图形来描述。

分析这些不同的视图将揭示出一些更深的问题,这是单一视图无法提供的。

分析还包括与客户的交流以澄清某些混淆,并明确哪些需求是更为重要的。

其目的是确保所有风险承担者尽早地对项目达成共识并对将来的产品有个相同而清晰的认识。

1创建数据字典。

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

在需求阶段.数据字典至少应定义客户数据项以确保客户与开发小组使用一致的定义和术语。

分析和设计工具通常包括数据字典组件。

2确定需求的优先级别。

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

以优先级为基础确定产品版本将包括哪些特性或哪类需求。

当允许需求变更时,在特定的版本中加入每一项变更.并在那个版本计划中做出需要的变更。

3.分析需求可行性。

在允许的威本、性能要求下。

分析每项需求实施的可行性,明确与每项需求实现相联系的风险,包括与其它需求的冲突,对外界因素的依赖和技术障碍。

4.使用质量功能调配。

质量功能调配是一种高级系统技术,它将产品特性、属性与对用户价值联系起来。

该技术提供了一种分析方法以明确哪些是客户最为关注的特性。

质量功能调配将需求分为三类:期望需求,即客户或许并未提及。

但如若缺少会让他们感到不满意;普通需求和兴奋需求,即实现了会给客户带去惊喜,但若未实现也不会受到责备。

5.衡量需求稳定性。

记录基本需求的数量和每周或每月的变更数量(添加、修改、删除)。

过多的需求变更“是一个报警信号”意味着问题并未真正弄清楚,项目范围并未很好的确定下来或是政策变化较大。

6.绘制系统上下文示意图。

这种示意图是用于定义系统与系统外部实体问的界限和接13的简单模型。

同时它也明确了通过接口的信息流和物质流。

7.作为功能需求的补充。

软件需求规格说明还应包括非功能需求.它描述了系统展现给用户的行为和执行的操作等。

它包括产品必须遵从的标准、规范和合约;外部界面的具体细节;性能要求;设计或实现的约束条件及质量属性。

软件需求分析中的关键就是展开分析、发现问题、征服问题。

所有的一切都是为了能够将软件中的错误和漏洞在需求分析和需求工程阶段发现并解决,这样才能使软件开发的成本收益比达到最大,使得软件在其生命周期中的维护费用降到最低,这也是我进行软件需求分析方法研究的目的.希望可以通过上述的软件需求分析的方法研究为以后软件的开发打下一个良好的基础。

本mpa论文来自专业的mpa论文网,如需转载请保留连接:建筑硕士论文
参考文献:
【1】郑人杰等:实用软件工程(第2版),北京:清华大学出版社,1997
【2】史济民等:软件工程一原理、方法和应用,北京:高等教育出版社.2(X)2
【3】're s sinail:软件工程一实践者研究方法(第4版).北京:机械工业出版社.1 9 99
【4】张龙祥:UML与系统分析设计.北京:人民邮电出版社,2007Is]-t,l、家广:软件工程——理论、方法-5实践,高等教育出版社。

相关主题