第2篇-第4章 需求分析演示教学

上传人:yuzo****123 文档编号:141551236 上传时间:2020-08-10 格式:PPT 页数:41 大小:1.14MB
返回 下载 相关 举报
第2篇-第4章 需求分析演示教学_第1页
第1页 / 共41页
第2篇-第4章 需求分析演示教学_第2页
第2页 / 共41页
第2篇-第4章 需求分析演示教学_第3页
第3页 / 共41页
第2篇-第4章 需求分析演示教学_第4页
第4页 / 共41页
第2篇-第4章 需求分析演示教学_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《第2篇-第4章 需求分析演示教学》由会员分享,可在线阅读,更多相关《第2篇-第4章 需求分析演示教学(41页珍藏版)》请在金锄头文库上搜索。

1、2020/8/10,曲阜师范大学计算机科学学院,1,第4章结构化需求分析,本章的主要目标是介绍软件需求分析的相关工作。读完本章,你将了解以下基本内容: 需求分析的基础。 结构化面向数据流的需求分析。 结构化需求分析常用工具。,2020/8/10,曲阜师范大学计算机科学学院,2,第4章结构化需求分析,4.1需求分析基础 4.2 面向数据流的结构化需求分析方法 4.3其他图形工具,2020/8/10,曲阜师范大学计算机科学学院,3,4.1需求分析基础,软件需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望 ,最终形成需求规格说明 。 需求分析阶段是介于系统分析和软件设计阶段间的重要

2、桥梁。,2020/8/10,曲阜师范大学计算机科学学院,5,4.1.2 需求初步获取技术 4.1.2.1 访谈与会议 4.1.2.2 深入用户工作环境 4.1.2.3 用户与开发人员一同参与 4.1.2.4 需求实例,2020/8/10,曲阜师范大学计算机科学学院,6,4.1.2.4 需求实例 问题描述: 家庭保安市场正以每年40%的速度增长。现希望建立一种基于微处理器的家庭保安系统,它能够识别异常事件并采取相应的防护措施。这些异常事件应包括非法进入、火灾、水淹等等。一旦异常情形被相应的传感器探测出来,系统应自动通过电话向监控中心报警。此外,系统还应该允许户主对其行为实施程序式控制。 针对此问

3、题,软件研发联合小组首先制定工作制度:每次会议开始前必须有确定的议程,参加者需要针对各项议程进行充分的准备,这种准备不仅是思想上的,还应成形于文字。,2020/8/10,曲阜师范大学计算机科学学院,7,最后,初步分析活动应形成结论性文档,该文档将作为后续分析活动的基础。经过初步分析后,“家庭保安系统”的部分需求文档(不包括约束条件和测试标准)如下: “家庭保安系统”的软件允许用户在安装时进行系统配置,实施对传感器的监控并通过控制面板与用户进行信息交互。 配置操作包括: (1)指定每一传感器的种类和编号; (2)设置开、关机密码; (3)指定报警电话号码; (4)指定报警延迟和电话重拨延迟时间(

4、以秒为单位)。 当软件系统接收到传感器发出的数据后,判断是否出现异常事件。若是,则在指定的延迟时间内拨报警电话,拨号操作将按照重拨延迟反复进行,直至电话接通。然后软件系统负责报告时间、地点和异常事件的性质。 开机后,软件系统负责显示当前工作状态,接收并处理用户指令。,2020/8/10,曲阜师范大学计算机科学学院,8,4.1.3 需求建模 软件目标系统可通过模型刻画所涉及的信息、处理功能及实际运行时的外部行为。 建立软件模型是分析活动的焦点 。,2020/8/10,曲阜师范大学计算机科学学院,9,4.1.4 问题抽象、问题分解与多视点分析 抽象方法要求分析人员在分析过程中善于捕捉用户描述或问题

5、本身所固有的一般特殊关系,首先关注一般问题的解决途径,进而指导特殊问题的求解。 问题分解也是普遍适用于分析各阶段的一般性方法。 与问题分解相对应,还有一种“视角分解”方法广泛应用于需求分析活动, 这就是所谓的“多视点分析”。,2020/8/10,曲阜师范大学计算机科学学院,10,4.1.5 支持需求分析的快速原型技术 一旦确定采用快速原型技术后,分析人员不妨遵循以下步骤: 利用各种分析技术和方法,生成一个简化的需求规格说明; 对前述需求规格说明进行检查、修订后,生成设计规格说明。 一般情况,为了快速生成原型,软件的设计只关心软件的总体结构、用户界面和数据设计,不注重过程内部的控制流程设计。 在

6、现有工具或环境的帮助下快速生成可运行的软件原型并进 行测试、完善和改进。可用的主要工具有可重用的软部件库、用户界面自动生成器等快速原型支持工具; 将原型提交给用户评估并征询改进意见; 上述过程将反复迭代进行,直到用户完全认可为止。,2020/8/10,曲阜师范大学计算机科学学院,11,4.1.6 需求规格说明与评审 4.1.6.1 需求规格说明书的目标和内容 它必须服务于以下目标: 便于用户、分析人员和软件设计人员进行理解和交流。 支持目标软件系统的确认。 控制系统进化过程。 需求规格说明书的主体内容包括功能与行为需求描述以及非行为需求描述两部分。 需求规格说明书基本构架和内容见计算机软件文档

7、编制规范(GB/T8567-2006)。,2020/8/10,曲阜师范大学计算机科学学院,12,4.1.6.2 需求评审 衡量需求规格说明书质量的标准按重要性次序排列为正确性、无歧义性、完全性、可验证性、一致性、可理解性、可修改性和可追踪性。 正确性。需求规格说明书中的功能、行为、性能描述必须与用户对目标软件产品的期望相吻合。 无歧义性。对于用户、分析人员、设计人员和测试人员而言,需求规格说明书中的任何语法单位只能有唯一的语义解释。 完全性。需求规格说明书不能遗漏任何用户需求。 可验证性。对于规格说明书中的任何需求,均应该对技术和 经济上的可行性手段进行验证和确认。,2020/8/10,曲阜师

8、范大学计算机科学学院,13,一致性。需求规格说明书的各部分内容之间不能相互矛盾。 可理解性。追求上述目标不应妨碍需求规格说明书对于用户、设计人员和测试人员的易理解性。 可修改性。需求规格说明书的格式和组织方式应保证能够比较容易地接纳后续的增删改,并使修改后的说明书能够较好地保持其他各项属性。 可追踪性。需求规格说明书分析后获得的每项需求必须与用户的原始需求项清晰地联系起来,并为后续开发和其他文档引用这些需求项提供便利。,2020/8/10,曲阜师范大学计算机科学学院,14,4.2 面向数据流的结构化需求分析方法 结构化分析方法的雏形出现于20世纪60年代后期。直到1979年才由DeMarco将

9、其作为一种需求分析方法正式提出。20世纪80年代中后期,Ward & Hatley和Hatley & Pirbhai在结构化分析方法中引入了实时系统分析机制,Harel等人研制了面向复杂实时反应式系统的开发环境STATEMATE 。 结构化需求分析过程是通过建立三种模型来诠释,它们分别是数据模型、功能模型和行为模型。,2020/8/10,曲阜师范大学计算机科学学院,15,4.2.1 实体-联系图 在数据模型中包含三种相互关联的信息:数据对象、数据对象的属性及数据对象彼此间相互连接的关系。 4.2.1.1 数据对象 数据对象可以是外部实体(例如产生或使用信息的任何事物)、事物(例如报表)、行为(

10、例如打电话)、事件(例如响警报)、角色(例如教师、学生、经理、雇员等)、单位(例如会计科)、地点(例如仓库)或结构(例如文件)等。总之,可以由一组属性来定义的实体都可以被认为是数据对象。 数据对象彼此间是有关联的,例如,教师“教”课程,学生“学”课程 。 数据对象只封装了数据而没有对施加于数据之上的操作加以引用,这是数据对象与面向对象范型中的“类”或“对象”的显著区别。,2020/8/10,曲阜师范大学计算机科学学院,16,4.2.1.2 属性 属性定义了数据对象的性质。 应该根据对所要解决问题的理解,来确定特定数据对象的一组合适的属性。,2020/8/10,曲阜师范大学计算机科学学院,17,

11、4.2.1.3 联系 客观世界中的事物彼此间往往是有联系的。 数据对象彼此之间相互连接的方式称为联系,也称为关系。联系可分为以下三种: 一对一联系(1:1) 一对多联系(1:N) 多对多联系(M:N),2020/8/10,曲阜师范大学计算机科学学院,18,4.2.1.4 实体-联系图的符号 使用实体-联系图(Entity-Relationship Diagram)来建立数据模型。可以把实体联系图简称为ER图,相应地把用ER图描绘的数据模型称为ER模型。,2020/8/10,曲阜师范大学计算机科学学院,19,4.2.1.5 数据规范化 通常用“范式(Normal Forms)”定义消除数据冗余的

12、程度。第一范式(1 NF)数据冗余程度最大,第六范式(6 NF)冗余程度最小。从实用角度来看,在大多数场合选用第三范式比较恰当。 第一范式 无重复的列。 第二范式 完全依赖于主键消除非主属性对主键的部分函数依赖。 第三范式 不依赖于其它非主属性消除传递依赖。,2020/8/10,曲阜师范大学计算机科学学院,20,4.2.2 状态转换图 状态转移图(简称为状态图)通过描绘系统的状态及引起系统状态转换的事件来表示系统的行为。 4.2.2.1 状态 状态是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。状态规定了系统对事件的响应方式。 在状态图中定义的状态主要有:初态(即初始状态)、

13、终态(最终状态)和中间状态。在一张状态图中只有一个初态,而终态则可以有0至多个。 4.2.2.2 事件 事件是在某个特定时刻发生的事件,它是对引起系统做动作或(和)从一个状态转换到另一个状态的外界事件的抽象。,2020/8/10,曲阜师范大学计算机科学学院,21,4.2.2.3 符号 在状态图中,初态用实心圆表示,终态用一对同心圆(内圆为实心圆)表示,中间状态用圆角矩形表示,可以用两条水平横线分成上、中、下3个部分。上面部分为状态的名称,这部分不能缺省;中间部分为状态变量的名字和值,此部分可选;下面部分是活动表,这部分也是可选。 活动表的语法格式为:事件名(参数表)/动作表达式 状态图中两个状

14、态之间带箭头的连线称为状态转换,箭头指明了转换方向。 事件表达式的语法:事件说明警戒条件/动作表达式 图4.2是状态图中使用的主要符号表征。,2020/8/10,曲阜师范大学计算机科学学院,22,4.2.2.4 举例,2020/8/10,曲阜师范大学计算机科学学院,23,4.2.3 数据流图 数据流图(Data Flow Diagram,DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程所经受的变换。 如图4.4(a)所示,数据流图有4种基本符号:正方形(或立方体)表示数据的源点或终点;圆角矩形(或圆形)代表变换数据的处理;开口矩形(或两条平行横线)代表数据存储;箭头表示数据流

15、,即特定数据的流动方向。注意,数据流与程序流程图中用箭头表示的控制流有本质不同,不可以混淆。,2020/8/10,曲阜师范大学计算机科学学院,24,处理并不一定是一个程序。一个处理框可以代表一系列程序、单个程序或者程序的一个模块;它甚至可以代表用穿孔机穿孔或目视检查数据正确性等人工处理过程。一个数据存储也并不等同于一个文件,它可以表示一个文件、文件的一部分、数据库的元素或记录的一部分等;数据存储和数据流都是数据,仅仅所处的状态不同。 数据流图的基本要点是描绘“做什么”,而不考虑“怎样做”。,2020/8/10,曲阜师范大学计算机科学学院,25,4.2.3.2 数据流层次 在分析的初始,整个信息

16、处理系统可以用图4.5所示的顶级(第0级)数据流图表示 :,2020/8/10,曲阜师范大学计算机科学学院,26,随着需求分析活动的逐渐深入,较高层抽象级别的复杂转换可以精化为一系列相互关联的数据流和子转换 。在进行逐层精化的过程中,必须维持层次间数据流图的平衡,被完成精化的转换的输入流、输出流必须与精化它的数据流子图的初始输入流和最终输出流保持严格一致 。,2020/8/10,曲阜师范大学计算机科学学院,27,4.2.3.3 数据字典 通常,数据字典的每一数据条目包含以下内容: (1)在数据流图中标识数据流、数据源或外部实体的名称与别名; (2)数据类型; (3)所有以它作为输入流或输出流的转换列表; (4)如何使用该数据条目的简要说明; (5)数据条目的解释性说明; (6)其他补充说明,例如取值范围与缺省值,有关的设计约束等。,2020/8/10,曲阜师范大学计算机科学学院,28,数据条目的定义必须遵循精确、简洁

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号