《软件工程导论 第3章 需求分析34368.docx》由会员分享,可在线阅读,更多相关《软件工程导论 第3章 需求分析34368.docx(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第三章 软件需求分析虽然在可行性研究阶段已经粗略了解了用户的需求,甚至还提出了一些可行的方案,但是可行性研究的基本目的是用较小的成本在较短的时间内确定是否存在可行的解法。因此许多细节被忽略了。然而在员终的系统中却不能遗漏任何一个微小的细节,所以可行性研究并不能代替需求分析,它实际上并没有准确地回答“系统必须做什么?”这个问题。需求分析的任务还不是确定系统怎样完成它的工作,而仅仅是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。软件需求分析是一个不断进行揭示和判断的过程。3.1 需需求分析析的任务务3.1.11 确定定系统的的综合要要求1 功能需需要划分出系统统必须完
2、完成的所所有功能能2 性能需需要系统必须满满足的定定时约束束或容量量约束速度(系统统的响应应时间)信息速率主存容量磁盘容量安全性3.1.22 分析析系统的的数据要要求任何一个软软件系统统其本质质上都是是一个信信息处理理系统,系系统必须须处理的的信息和和系统应应该产生生的信息息在很大大程度上上决定了了系统的的概貌,同同时也对对软件设设计有着着深远的的影响。分分析系统统的数据据要求,这这是软件件需求分分析的一一个重要要任务。分分析系统统的数据据要求通通常采用用建立数数据模型型的方法法系统的数据据来源和和去处一一般含如如下几个个方面:(1)从系系统以外外来,再再到系统统以外去去;(2)从系系统以外外
3、来,再再到系统统内部去去;(3)从系系统内部部来,再再到系统统内部去去;(4)从系系统内部部来,再再到系统统外部去去。3.1.33导出系系统的逻逻辑模型型用数据流图图、实体体-关系系图、状状态转换换图、数数据字典典、主要要的处理理算法描描述逻辑辑模型。3.1.44修正系系统开发发计划准确地估计计系统的的成本及及进度,修修正以前前我们所所制定的的开发计计划。 3.2 与用户户沟通获获取需求求的方法法3.2.11 访访谈情景分析技技术就是是分析对对用户将将来使用用目标解解决问题题的方法法某个具具体问题题的方法法和结果果进行分分析。3.22 面向向数据流流自顶向向下求精精3.23 简易易的应用用规格
4、说说明技术术3.24 快速速建立软软件原型型3.3 分分析建模模与规格格说明3.3.11 分析析建模1 建模:是为了了理解事事物而对对事物做做出的一一种抽象象,是对对事物的的一种无无歧义的的书面描描述。模模型由一一组图形形符号和和组织这这些符号号的规则则组成2 模型与与工具数据模型实体-关系图图功能模型数据流流图行为模型状态转转换图3.3.22 软件件需求规规格说明明用自然语言言完整、准准确、具具体描述述系统的的数据需需求、功功能需求求、性能能需求、可可靠性和和可用性性要求、出出错处理理需求、接接口需求求、约束束、逆向向需求、将将来可能能提出来来的需求求3.4 实实体-关系图图3.4.11 数
5、据据对象数据对象:是对软软件必须须理解的的复合信信息的抽抽象。复复合信息息是指具具有一系系列不同同性质或或属性的的事物,仅仅有单个个值的事事物不是是数据对对象。数据对象可可以是外外部实体体、事物物、行为为、事件件、角色色、单位位、地点点、结构构数据对象彼彼此间是是有关联联的,它它只封装装了数据据,没有有对数据据的操作作3.4.22 属性性定义了数据据对象的的性质,属属性用标标识符表表示3.4.33 联系系数据对象彼彼此之间间相互连连接的方方式称为为联系,也称为关系系。联系系分为33种类型型。(1)一对对一联系系(1:1)例如,一个个部门有有一个经经理,而而每个经经理只在在一个部部门任职职,则部
6、部门与经经理的联联系是一一对一的的。(2)一对对多联系系(1:N)例如,某校校教师与与课程之之间存在在一对多多的联系系“教”,即每每位教师师可以教教多门课课程,但但是每门门课程只只能由一一位教师师来教。(3)多对对多联系系(M:N)例如,表示示学生与与课程间间的联系系(“学”)是多多对多的的,即一一个学生生可以学学多门课课程,而而每门课课程可以以有多个个学生来来学。3.4.44 实体体-关系图图的符号号实体-关系系图简称称ER图 3.5 数据规范化化为减少数据据冗余,避避免出现现插入异异常或删删除异常常,简化化修改数数据的过过程,通通常需要要把数据据结构规规范化。通常用“范范式”定义消消除数据
7、据冗余的的程度。第第一范式式数据冗冗余程度度最大,第第五范式式数据冗冗余程度度最小。但但是,范范式的级级别越高高,存储储同样数数据就需需要分解解成更多多张表,因因此,存储自自身的过程程也就越越复杂。第二,随着着范式级级别的提提高,数数据的存存储结构构与基于于问题域域的结构构间的匹匹配程度度也随之之下降,因因此,在在需求变变化时数数据的稳稳定性较较差。第三,范式式级别提提高则需需要访问问的表增增多,因因此性能能(速度)将下降降。从实实用角度度看来,在在大多数数场合选选用第三三范式都都比较恰恰当。下面给出第第一、第第二和第第三范式式的定义义:(1)第一一范式:每个属属性值都都必须是是原子值值,即仅
8、仅仅是一一个简单单值而不不含内部部结构。(2)第二二范式:满足第第一范式式条件,而而且每个个非关键键宇屑性性都由整整个关键键字决定定(而不是是由关键键字的一一部分来来决定)。(3)第三三范式:符合第第二范式式的条件件,每个个非关键键字属性性都仅由由关键字字决定,而而且一个个非关键键字属性性不能仅仅仅是对对另一个个非关键键字局性性的进一一步描述述(即一个个非关镑镑字属性性值不依依赖于另另一个非非关键字字属性值值)。3.6 状态转转换图状态转换图图(简称称状态图图)通过过描绘系系统的状状态及引引起系统统状态转转换的事事件,来来表示系系统的行行为。此此外,状状态图还还指明了了作为特特定事件件的结果果
9、将做哪哪些动作作。因此此,状态态图满足足了行为为建模的的机制。3.1 状态状态是任何何可以被被观察到到的系统统行为模模式,一一个状态态代表系系统的一一种行为为模式。状状态规定定了系统统对事件件的响应应方式。系统对事件的响应,既可以做一个(或一系列)动作,也可以是仅仅改变系统本身的状态,还可以是既改变状态有改变动作。状态图既可可以表示示系统循循环运行行过程,也也可以表表示单程程生命期期。3.6.22 事件件事件是在某某个特定定时刻发发生的事事情,它它是对引引起系统统做动作作或从一一个状态态转换的的另一个个状态的的外界事事件的抽抽象。事件就是引引起系统统做动作作或转换换状态的的控制信信息。3.6.
10、33 符号号3.6.44 例子子3.7 其其他图形形工具3.7.11 层次次方框图图层次方框图图是用树树形结构构的一系系列多层层次的矩矩形框描描绘数据据的层次次结构。树树形结构构的顶层层是一个个单独的的矩形框框,它代代表完整整的数据据结构。下下面各层层的矩形形框代表表这个数数据的子子集,最最低层的的各个框框代表组组成这个个数据的的实际数数据元素素(不可再再分割)。描绘绘一家计计算机公公司全部部产品的的数据结结构图如如下。3.7.22 Waarniier图图Warniier图图是由法法国计算算机科学学家J.D.WWarnnierr提出的的表示信信息层次次结构的的另外一一种图形形工具。在Warnn
11、ierr图中花花括号用用来区分分数据结结构的层层次,在在一个花花括号内内的所有有名字都都属于同同一类信信息;符符号表示示在其上上、下方方的名字字中的一一个名字字;名字字右边圆圆括号中中的符号号表示这这个名字字在信息息类中重重复出现现的次数数。3.7.33 IPPO图IPO图是是输入/处理/输出图图的简称称,它是是由美国国IBMM公司发发展完善善起来的的一种图图形工具具,可以以方便地地表示输输入数据据、数据据处理和和输出数数据三者者之间的的关系。3.8 验验证软件件需求3.8.11验证软软件需求求的途径径与方法法一致性:在在所有需需求中,任任何一条条需求不不能和其其他需求求互相矛矛盾。形形式化描
12、描述完整性:软软件规格格说明书书必须包包括用户户需求的的每一个个功能或或性能。原原型现实性:指指定的需需求应该该是用现现有的硬硬件技术术和软件件技术基基本上可可以实现现的。仿仿真和模模拟有效性:软软件需求求确实能能解决用用户所面面对的问问题。原原型3.8.33 用于于需求分分析的软软件工具具PSLPPSA系系统用描描述符从从系统信信息流、系系统结构构、数据据结构、数数据导出出、系统统规模、系系统动态态、系统统性质和和项目管管理等八八个方面面描述信信息系统统。一旦用PSSL对系系统做了了完整描描述,就就可以调调用PSSA产生生一组分分析报告告,其中中包括所所有修改改规格说说明数据据库的记记录,用
13、用各种形形式描述述数据库库信息的的参照报报告(包括图图形形式式的描述述),关于于项目管管理信息息的总结结报告,以以及评价价数据库库持性的的分析报报告。借助PSLLPSAA系统可可以边对对目标系系统进行行自顶向向下的逐逐层分解解,边将将需求分分析过程程中遇到到的数据据流、文文件、处处理等对对象用PPSL描描述出来来并输入入到PSSLPSAA系统中中。PSSL将对对输入信信息作一一致性和和完整性性检查,并并且保存存这些描描述信息息。PsLPP5A系系统的主主要优点点是它改改进了文文档质量量,能保保证文档档具有完完整性、一一致性和和无二义义性,从从而可以以减少管管理和维维护的费费用。分析追踪数据流图
14、用户复查无补充修正细化数据流图不需分解有补充修正需要分解图3.1 面向数据流自顶向下求精过程职称职务姓名教工号性别教师教1成绩学号姓名性别系年级学生学N课程N M课名学时学分课程号图3.2 某校教学管理ER图初始事件状态1状态变量1活动表1事件表达式状态2状态变量2活动表2结束事件图3.3 状态图中使用的主要符号挂断电话闲置拿起听筒拨号音timer=0do/想拨号音且增加timer超时超时do/响蜂鸣音存储的信息do/播放信息无效号码拨号数字接通中do/试接通有效号码已接通振铃do/振铃受话人回话通话断线受话人挂断电话信息播完占线忙音do/响忙音挂断电话数字图3.4 电话系统的状态图产品软件硬件处理机处理机处理机服务软件服务硬件维修培训系统软件应用软件操作系统编译程序软件工具图3.5 层次方框图的一个例子软件产品系统软件应用软件操作系统(P1)编译程序(P2)软件工具编译程序(P3)测试驱动程序(P4)设计辅助工具(P5)有效的主纪录有效的事务纪录更新后的主文件旧的主文件事务文件1校验主纪录2校验 事务纪录3更新 主纪录输入处理输出图3.7 IPO图的一个例子IPO表系统: 作者: 模块: 日期: 编号: 注释:被调用:调用:输入:输出:处理:局部数据元素:图3.8 改进的IPO图的形式