欢迎来到天天文库
浏览记录
ID:39814330
大小:615.00 KB
页数:65页
时间:2019-07-11
《高级软件工程需求分析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、高级软件工程(3)3.1需求分析的任务需求分析的基本任务是准确地回答“系统必须做什么?”这一核心问题。3.1.1需求分析的概念需求分析是一种软件工程活动,使得系统分析员能够刻划出软件的功能和性能、指明软件和其他系统元素的接口、并建立软件必须满足的约束。需求分析是软件设计师进行软件分解的基础,需求分析建造了软件处理的数据模型、功能模型和行为模型。需求规约为软件设计师和客户提供了软件建造完后,进行质量评估的依据。1.软件需求的概念和分类比较权威的需求的定义来自于IEEE软件工程标准词汇表中的定义:l用户解决问题或达到目标所需要的条件。l系统或系统部件要满足合同、标准
2、、规范或其他正式规定的文档所要具有的条件。l反映上面两条的文档说明。需求一方面反映了系统的外部行为,另一方面反映了系统的内部特性,反映的方式是需求文档。比较通俗的需求定义如下:需求是指明系统必须实现什么的规格说明,它描述了系统的行为、特性或属性,是在开发过程中对系统的约束。需求分析的难点问题的复杂性交流障碍不完备性和不一致性易变性需求的类别功能需求:指定系统必须提供的服务,通过需求分析应该划分出系统必须完成的所有功能;性能需求:指定系统必须满足的定时约束或容量约束,通常包括速度(响应时间)、信息量速率、主存容量、磁盘容量、安全性等方面的需求;可靠性和可用性需求:
3、定量地指定系统的可靠性与可用性;出错处理需求:说明系统对环境错误应该怎样响应;接口需求:描述应用系统与其环境通信的格式,常见的接口需求有用户接口需求、硬件接口需求、软件接口需求和通信接口需求;约束:描述了应用系统应遵守的限制条件,常见的约束有:精度约束、工具和语言约束、设计约束、应该使用的标准、应该使用的硬件平台等;逆向需求:说明软件系统不应该做什么。理论上有无限多个逆向需求,我们应该仅选取能澄清真实需求且可消除发生误解的那些逆向需求;将来可能提出的要求:应该明确地列出那些虽然不属于当前系统开发范畴,但是据分析将来很可能会提出来的要求。另一种分类功能性需求产品的
4、范围功能与数据需求非功能性需求观感需求易用性性能限制条件操作需求可维护性和可移植性需求安全性需求文化与政策法律需求3.1.2.需求分析的任务需求分析的任务是借助于当前系统的物理模型导出目标系统的逻辑模型,解决目标系统“做什么”的问题。所要做的工作是深入描述软件的功能和性能,确定软件设计的限制和软件同其他系统元素的接口细节,定义软件的其他有效性需求。必须全面理解用户的各项要求,但只能接受合理的要求。要将软件的需求准确地表达出来,形成软件需求说明书。目标系统当前系统物理模型逻辑模型模型化抽象化物理模型逻辑模型具体化实例化理解需求表达需求导出怎么做做什么需求分析的任务
5、获得当前系统的物理模型:首先,分析、理解当前系统是如何运行的,并用一个具体的模型来反映自己对当前系统的理解。抽象出当前系统的逻辑模型:在理解当前系统“怎样做”的基础上,取出非本质因素,抽取出“做什么”的本质。建立目标系统的逻辑模型:分析目标系统与当前系统逻辑上的差别,明确目标系统要“做什么”,从而从当前系统的逻辑模型中,导出目标系统的逻辑模型。对目标系统逻辑模型进行补充:具体内容如用户界面、启动和结束、出错处理、系统输入输出、系统性能、其他限制等等。3.1.2需求获取软件需求分析中需要很好的的相互沟通,沟通总是要在两方或多方间进行。客户和系统分析员之间最常用的交
6、流方式,是通过预备会议或访谈进行的。获取用户需求的主要方法是调查研究。做好准备制定调研计划准备调研资料访谈用户写调研报告评审需求分析阶段的文档软件需求说明书初步的用户手册修改、完善与确定软件开发实施计划3.1.4需求规格说明软件需求规格说明是分析任务的最终产物,美国国家标准局、IEEE(标准号830-1984)以及美国防部门均已提出了软件需求规约(以及其他软件工程文档)的候选格式。软件需求规格说明必须正确地定义所有的软件需求;除了设计上的特殊限制之外,软件需求规格说明中一般不描述任何设计、验证或项目管理的细节。需求必须描述的基本问题功能——所设计的软件要做什么;
7、性能——软件功能在执行过程中的速度、可使用性、响应时间、各种软件功能的恢复时间、吞吐能力、精度、频率等等;强加给实现的设计限制——在效果、实现的语言、数据库完整性、资源限制、操作环境等等方面所要求的标准;属性——可移植性、正确性、可维护性及安全性等方面的考虑因素;外部接口——与人、硬件、其他软件和其他硬件的相互关系。软件需求规格说明的大纲1前言1.1目的1.2范围1.3定义、缩写词、略语1.4参考资料2项目概述2.1产品描述2.2产品功能2.3用户特点2.4一般约束2.5假设和依据3具体需求3.1功能需求3.1.1功能需求13.1.1.1引言3.1.1.2输入3
8、.1.1.3加工3.1.
此文档下载收益归作者所有