自考软件工程第3章知识点总结

上传人:小** 文档编号:61278752 上传时间:2018-11-27 格式:PPT 页数:40 大小:348KB
返回 下载 相关 举报
自考软件工程第3章知识点总结_第1页
第1页 / 共40页
自考软件工程第3章知识点总结_第2页
第2页 / 共40页
自考软件工程第3章知识点总结_第3页
第3页 / 共40页
自考软件工程第3章知识点总结_第4页
第4页 / 共40页
自考软件工程第3章知识点总结_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《自考软件工程第3章知识点总结》由会员分享,可在线阅读,更多相关《自考软件工程第3章知识点总结(40页珍藏版)》请在金锄头文库上搜索。

1、1,3.1 需求分析的任务 3.2 结构化分析方法 3.3 数据流图 3.4 数据字典 3.5 加工逻辑的描述 3.6 IDEF方法,第3章 软件需求分析,返回主目录,2,3.1 需求分析的任务,3.1.1 需求分析的概念 需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义, 再由需求定义转换到相庆的形式功能规约(需求规格说明)的过程。 需求分析虽处于软件开发过程的开始阶段,但它对于整个软件开发过程以及软件产品质量是至关重要的。,3,需求分析在软件开发中所处的地位愈加突出,从而也愈加困难,它的难点主要体现在以下几个方面: (1) 问题的复杂

2、性。 (2) 交流障碍。 (3) 不完备性和不一致性。 (4) 需求易变性。 软件需求分析与说明的方法的基本原则: (1) 必须能够表达和理解问题的数据域和功能域。 (2) 可以把一个复杂问题按功能进行分解并可逐层细化。 (3) 建模。,4,3.1.2 需求分析的基本任务 需求分析的基本任务是要准确地定义新系统的目标,为了满足用户需要,回答系统必须“做什么”的问题。在可行性研究和项目开发计划阶段对这个问题的回答是概括的、粗略的。 1. 问题识别 双方确定对问题综合需求。 这些需求包括: (1) 功能需求。 (2) 性能需求。 (3) 环境需求。 (4) 用户界面需求。,5,2. 分析与综合,

3、导出软件的逻辑模型 分析人员对获取的需求,进行一致性的分析检查,在分析、 综合中逐步细分软件功能,划分成各个子功能。,3. 编写文档 编写文档的步骤如下: (1) 编写“需求说明书。 (2) 编写初步用户使用手册。 (3) 编写确认测试计划。 (4) 修改完善项目开发计划。,6,3.1.3 需求规格说明书主要内容 需求规格说明书是需求分析阶段最重要的技术文档之一。 它提供了用户与开发人员对开发软件的共同理解,其作用相当于用户与开发单位之间的技术合同,是今后各阶段设计工作的基础, 也是本阶段评审和测试阶段确认与验收的依据。,7,3.2 结构化分析方法,结构化分析(Structured Analy

4、sis,简称SA),是面向数据流进行需求分析的方法。根据软件内部数据传递、变换的关系,自顶向下逐层分解,描绘出满足功能要求的软件模型。 3.2.1自项向下逐层分解的分析策略 面对一个复杂的问题,采取分解的策略,把一个复杂的问题划分成若干小问题,然后再分别解决。分解可分层进行,在分层过程中采用不同程度的“抽象” 级别。图8.1是自项向下逐层分解的示意图。,8,图 3.1 对一个问题的逐层分解,9,3.2.2描述工具 SA方法利用图形等半形式化的描述方式表达需求,简明易懂,用它们形成需求说明书中的主要部分。这些描述工具有以下几种: (1) 数据流图。描述系统的分解。 (2) 数据字典。定义了数据流

5、图中的数据和加工。 (3) 描述加工逻辑的结构化语言、判定表及判定树。,10,3.2.3 SA分析步骤 1. 了解当前系统的工作流程,建立当前系统的物理模型 2. 抽象出当前系统的逻辑模型 3. 建立目标系统的逻辑模型 4. 作进一步补充和优化,11,3.3 数据流图(DFD),数据流图(Data Flow Diagram, 简称DFD), 是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,是一种功能模型。 图3.2是一个飞机机票预订系统的数据流图,其功能为旅行社把预订机票的旅客信息(姓名、年龄、单位、身份证号码、 旅行时间及目的地等)输入机票预订系统

6、。系统为旅客安排航班,打印出取票通知单(付有应交的账款)。 旅客在飞机起飞的前一天凭取票通知等交款取票, 系统检验无误,输出机票给旅客。,12,图 3.2 飞机机票预订系统,13,3.3.1基本图形符号 数据流图有以下 4 种基本图形符号: : 箭头, 表示数据流。 : 圆或椭圆, 表示加工。 =: 双杠, 表示数据存储。 : 方框, 表示数据的源点或终点。 1. 数据流 数据流是数据在系统内传播的路径,由一组成分固定的数据项组成。数据流应该用名词或名词短语命名。,14,2. 加工 加工也称为数据处理,它对数据流进行某些操作或变换。 每个加工也要有名字,通常是动词短语,简明地描述完成什么加工。

7、 在分层的数据流图中, 加工还应编号。 3. 数据存储 数据存储指暂时保存的数据,它可以是数据库文件或任何形式的数据组织。,4. 数据源点和终点 数据源点和终点是软件系统外部环境中的实体(包括人员、 组织或其他软件系统),统称外部实体。一般只出现在数据流图的顶层图中,表示了系统中数据的来源和去处。,15,3.3.2 画数据流图的步骤 要按照问题的层次结构进行逐步分解, 并以一套分层的数据流图反映这种结构关系。 1. 首先画系统的输入输出 画系统的输入输出即先画顶层数据流图。,图 3.3 飞机机票预订系统顶层图,16,2. 画系统内部 画系统内部即画下层数据流图。,图 3.4 飞机机票预订系统0

8、层图,17,3. 注意事项 (1) 命名要易于理解。 (2) 画数据流而不是控制流。 (3) 一般不画物质流。 (4) 每个加工至少有一个输入数据流和一个输出数据流, 反映出此加工数据的来源与加工的结果。 (5) 编号。如图3-5所示。 (6) 父图与子图的平衡。子图的输入输出数据流同父图相应加工的输入输出数据流必须一致。 如图3-6所示。 (7) 局部数据存储。 (8) 提高数据流图的易理解性。,18,图 3-5 父图与子图,图3-6 父图与子图的平衡,19,数据流图的另一套基本符号: : 表示数据流, 只能水平或垂直画。,编号,: 表示加工。,: 表示数据存储。,图 3-7 与图3-2等价

9、的DFD,20,3.3.3 实例销售管理系统(参见教材) 现以销售管理系统为例,采用SA方法来进行需求分析,建立功能模型。 采用SA方法画出的销售管理系统的分层DFD。 首先分析功能说明,先找出哪些是属于系统之外的外部实体, 然后画出顶层数据流图。 根据系统功能,在0层图上分解系统为5个加工,加工的名称及加工之间的数据流在功能说明中有动词和名词与之对应。 在 1 层图中分别对0层图的5个加工进行分解。,21,3.4 数 据 字 典 数据字典是用来定义数据流图中的各个成分的具体含义的。它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述,与数据流图共同

10、构成了系统的逻辑模型,是需求规格说明书的重要组成部分。,3.4.1数据字典的内容及格式 1. 数据流条目 数据流条目给出了DFD中数据流的定义,通常列出该数据流的各组成数据项。,22,定义数据流组成及数据项的例子。 例: 机票=姓名+日期+航班号+起点+终点+费用 姓名= 字母18 2 航班号=“Y7100” “Y8100” 终点=上海|北京|西安,23,别名: 无 简述: 顾客订货时填写的项目 来源: 顾客 去向: 加工1“检验订单” 数据流量: 1000份/每周 组成: 编号+订货日期+顾客编号+地址+电话+银行账号+ 货物名称+规格+数量,其中数据流量指单位时间内(每小时或每天或每周或每

11、月)的传输次数。,数据流条目主要内容及举例如下: 数据流名称: 订单,24,2. 数据存储条目 数据存储条目是对数据存储的定义, 主要内容及举例如下: 数据存储名称: 库存记录 别名: 无 简述: 存放库存所有可供货物的信息 组成: 货物名称+编号+生产厂家+单价+库存量 组织方式: 索引文件, 以货物编号为关键字 查询要求: 要求能立即查询,25,数据项名称: 货物编号 别名: G-No, G-num, Goods-No 简述: 本公司的所有货物的编号 类型: 字符串 长度: 10 取值范围及含义: 第1位: 进口/国产 第24位: 类别 第57位: 规格 第810位: 品名编号,3. 数据

12、项条目 数据项条目是不可再分解的最小数据单位, 其定义格式及举例如下:,26,4. 加工条目 加工条目是用来说明DFD中基本加工的处理逻辑的, 由于上层的加工是由下层的基本加工分解而来,只要有了基本加工的说明,就可理解其他加工。加工条目的主要内容及举例如下:,加工名: 确定能否供货 编号: 1.2 激发条件: 接收到合格订单时 优先级: 普通 输入: 合格订单 输出: 可供货订单、 缺货订单 加工逻辑: 根据库存记录,27,IF 订单项目的数量 该项目库存量的临界值 THEN 可供货处理 ELSE 此订单缺货, 登录, 待进货后再处理 ENDIF 数据字典中的加工逻辑主要描述该加工“做什么”,

13、 即实现加工的策略, 而不是实现加工的细节,它描述如何把输入数据流变换为输出数据流的加工规则。,28,3.4.2数据字典的实现 1. 手工建立 手工建立数据字典的内容用卡片形式存放。 2. 利用计算机辅助建立并维护,29,3.5 加工逻辑的描述 常用的描述方法是结构化语言、 判定表及判定树。,3.5.1 结构化语言 结构化语言是介于自然语言(英语或汉语)和形式语言之间的一种半形式语言。 3.5.2 判定表 (应用:会按照步骤要求画出判定表、判定树) 判定表能够清楚地表示复杂的条件组合与应做的动作之间的对应关系。,30,例如, 某数据流图中有一个“确定保险类别”的加工, 指的是申请汽车驾驶保险时

14、,要根据申请者的情况确定不同的保险类别。加工逻辑为: 如果申请者的年龄在21岁以下,要额外收费;如果申请者是21岁以上并是26岁以下的女性,适用于A类保险;如果申请者是26岁以下的已婚男性,或者是26岁以上的男性, 适用于B类保险; 如果申请者是21岁以下的女性或是26岁以下的单身男性, 适用于C类保险。除此之外的其他申请者都适用于A类保险。,31,按以下步骤构造判定表 : (1) 提取问题中的条件:条件是年龄、 性别及婚姻。 (2) 标出条件的取值: 为绘制判定表方便, 用符号代替条件的取值, 见表3 - 2。 (3) 计算所有条件的组合数N: N=mi=322=12。 (4) 提取可能采取

15、的动作或措施: 适用于A类保险、 B类保险、C类保险和额外收费。 (5) 制作判定表:如表3 - 3所示。,32,33,(6) 完善判定表: 初始的判定表可能不完善, 表现在两个方面。 第一, 缺少判定列中应采取的动作。第二,有冗余的判定列。,34,合并后的规则还可进一步合并,如图3.10所示,图中“Y”表示逻辑条件取值为“真”,“N”表示逻辑条件取值为“假”,“”表示与取值无关。,图 3.10 动作相同的规则合并,35,3.5.3 判定树 判定树是判定表的变形,一般情况下它比判定表更直观, 且易于理解和使用。图3-11是与表3 - 3功能等价的判定树。,上述三种描述加工逻辑的工具各有优缺点,

16、对于顺序执行和循环执行的动作,用结构化语言描述;对于存在多个条件复杂组合的判断问题,用判定表和判定树。 经过需求分析,确定了目标系统的功能, 定义了系统的数据,描述了处理这些数据的基本策略,最后需求说明书。,36,图 3-11 判定树,37,3.6 IDEF 方 法,IDEF方法是在结构化分析与设计技术的基础上提出来的。IDEF方法分为三部分: (1) IDEF0: 用来描述系统的功能活动及其联系, 建立系统的功能模型。 反映系统“做什么”的功能。 (2) IDEF1:用来描述系统的信息及其联系,建立系统的信息模型。,(3) IDEF2: 用来进行系统模拟, 建立系统的动态模型。,38,3.6.1 IDEF0的图形表示 IDEF0功能模型,描述系统在不同层次上的功能。在该方法中,将系统功能称为活动,将表示系统功能的图形称为活动图形。,图 3.12 一个活动图形,39,3.6.2 建立功能模型的基本方法 1.

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

当前位置:首页 > 商业/管理/HR > 管理学资料

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