需求分析[]PPT课件_第1页
需求分析[]PPT课件_第2页
需求分析[]PPT课件_第3页
需求分析[]PPT课件_第4页
需求分析[]PPT课件_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章需求分析,需求分析基本任务是准确地回答“系统必须做什么?”这个问题。需求分析的任务是调查了解用户需求,把满足用户需求的新系统的逻辑模型用需求规格说明的特定形式表达出来。,1.功能需求:指系统必须完成的所有功能。2.性能需求性能需求指系统应满足的定时约束或容量约束。3.可靠性和可用性需求4.系统的数据要求:可使用实体-联系图5.其它需求:例如,安全性需求、接口需求、以及约束条件等,3.1需求分析的任务3.1.1确定对系统的综合要求,通常用数据流图、实体-联系图、状态转换图、数据字典和主要的处理算法描述这个逻辑模型。,3.1.2导出系统的逻辑模型,访谈是最早使用的获取用户需求的技术。当需要调查大量人员的意见时,向被调查人分发调查表也是一个十分有效的做法。3.2.2面向数据流自顶向下求精结构化分析方法就是面向数据流自顶向下逐步求精进行需求分析的方法。,3.2与用户沟通获取需求的方法3.2.1访谈及调查,需求分析过程应该建立3种模型,它们分别是数据模型、功能模型和行为模型。,3.3分析建模与规格说明3.3.1分析建模,实体-联系图,描绘数据对象及数据对象之间的关系,是用于建立数据模型的图形。数据流图是建立功能模型的基础。状态转换图描绘了系统的各种行为模式(称为“状态”)和在不同状态间转换的方式。状态转换图是行为建模的基础。,软件需求规格说明书(或称SRS)是需求分析阶段得出的最主要的文档。(注意:需求规格说明书有国家标准),3.3.2软件需求规格说明,为了把用户的数据要求清楚、准确地描述出来,通常建立一个概念性的数据模型。概念模型是一种面向问题的数据模型,它描述了从用户角度看到的数据。数据模型中包含:数据对象、数据对象的属性及数据对象彼此间相互连接的关系。,3.4实体-联系图,数据对象可以是外部实体、事物、行为、事件、地点等。3.4.2属性属性定义了数据对象的性质。3.4.3联系(1)一对一联系(11)例如,一个部门有一个经理(2)一对多联系(1N)例如,某校教师与课程之间存在一对多的联系。,3.4.1数据对象,(3)多对多联系(MN)例如,学生与课程间的联系(“学”)是多对多的。联系也可能有属性。例如,“成绩”是学生与课程之间的联系“学”的属性。,图3.2某校教学管理E-R图,为减少数据冗余,避免出现插入异常或删除异常,简化修改数据的过程,通常需要把数据结构规范化。,3.5数据规范化,通常用“范式(normalforms)”定义消除数据冗余的程度。第一范式(1NF)数据冗余程度最大,第五范式(5NF)数据冗余程度最小。但是,范式级别越高,存储同样数据就需要分解成更多张表,因此,“存储自身”的过程也就越复杂。范式级别提高则需要访问的表增多,因此性能(速度)将下降。从实用角度看来,在大多数场合选用第三范式都比较恰当。,(1)第一范式每个属性(或字段)值都必须是原子值。或者说每个字段不能有多个值。(2)第二范式满足第一范式条件,而且每个非主关键字属性都由整个主关键字决定。(3)第三范式符合第二范式的条件,每个非主关键字属性都仅由主关键字决定。即一个非关键字属性不能依赖于其它非关键字属性。第三范式表明主关键字是绝对“统帅”,所有属性(字段)必须由它直接“统帅”,不能再依赖其它属性(字段)。,下面,我们以实例来说明几个范式实例:考虑以下“配件-供应商-库存”结构显然,上述结构不满足1NF。这时可以把它分解成两个表:,表T1:,表T2:,显然两个表均满足INF。请问表T2是否满足2NF?,由于供应商地址只以赖于供应商编号,故表T2不满足2NF。我们把T2再分解成:*配件编号*供应商编号*供应商编号供应商地址厂价库存量占用资金显然,表T21和表T22均满足2NF。请问,表T21是否满足3NF?若不满足,如何办?,表T21,表T22,状态图提供了行为建模机制,它表示一个系统对象在它的生存周期内各阶段的状态和行为。,3.6状态转换图,在状态图中定义的状态主要有:初态、终态和中间状态。在一张状态图中只能有一个初态,而终态则可以有0至多个。,3.6.1状态,事件是在某个特定时刻发生的事情,它会引起系统做动作或(和)从一个状态转换到另一个状态。,3.6.2事件,在状态图中,初态用实心圆表示,终态用一对同心圆(内圆为实心圆)表示。中间状态用圆角矩形表示,(可以用一条水平横线把它分成上、下2个部分。上面部分为状态的名称,这部分是必须有的;下面部分是活动表,这部分也是可选的。),3.6.3符号,状态内部的事件:事件名(参数表)/动作表达式在状态内部经常使用下述3种标准事件:entry,exit和do。entry事件指定进入该状态的动作,exit事件指定退出该状态的动作,而do事件则指出在该状态下的活动。状态图中两个状态之间带箭头的连线称为状态转换,状态变迁通常是由事件触发的,在这种情况下应在箭头线上标出触发转换的事件表达式。,事件表达式的语法如下:事件说明守卫条件动作表达式其中,事件说明的语法为:事件名(参数表)。守卫条件是一个布尔表达式。如果同时使用事件说明和守卫条件,则当且仅当事件发生且布尔表达式为真时,状态转换才发生。动作表达式是当状态转换时执行的表达式。图3.3给出了状态图中使用的主要符号。,图3.3状态图中使用的主要符号,初态,简单的状态图的例子1:,简单的状态图的例子2:,下面的例子。(见书57页)是人们非常熟悉的电话线路系统的状态图。图中表明,没有人打电话时电话处于闲置状态;有人拿起听筒则进入拨号状态,到达这个状态后,电话的行为是响起拨号音并计时;这时如果拿起听筒的人改变主意不想打了,他把听筒放下(挂断),电话重又回到闲置状态;如果拿起听筒很长时间不拨号(超时),则进入超时状态;。,3.6.4状态图例子,实例1:绘制“打电话过程”电话线路的状态图。注:可设置如下状态:“Idle”,“Dialing”,“Connecting”,“Ringing”,“Connected”,“Disconnected”,“TimeOut”,“PlayMessage”,“BusyTone”(可以适当增减状态),参考答案:,实例2:绘制复印机工作的状态图,陈述如下:“未接到工作命令时复印机处于闲置状态。接到复印命令后,转入复印状态。完成复印后又回到闲置状态,等待命令。若复印时发现没纸,则进入缺纸状态,发出警告等待装纸。装纸完成后又进入闲置状态。若复印时发现卡纸,则进入卡纸(故障)状态,发出警告等待排除故障。故障排除后,又进入闲置状态。”,*3.7其他图形工具如:IPO图,IPO图是输入、处理、输出图的简称,它是美国IBM公司发展完善起来的一种图形工具(参见教科书P59).,大量统计数字表明,软件系统中15%的错误起源于错误的需求。为了提高软件质量,确保软件开发成功,必须严格验证这些需求的正确性。(参考教科书P60-P61)PSL/PSA是验证需求的有效工具。,3.8验证软件需求,PSL/PSA是美国密执安大学开发的需求分析工具:,传统软件工程方法学使用结构化分析技术,完成分析用户需求的工作。需求分析的任务是调查了解用户需求,把满足用户需求的新系统的逻辑模型用需求规格说明的特定形式表达出来。,3.9小结,为了

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论