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