版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 第八章第八章基于构件的软件工程 第五章系统设计 第五章系统设计第五章系统设计 2 4 3 软件设计阶段要解决软件设计阶段要解决“怎么做怎么做”的问题,的问题, 软件设计分为软件设计分为 总体设计和详细设计两个阶段。总体设计和详细设计两个阶段。 总体总体 设计设计 需求需求 说明书说明书 复审复审 软件软件 结构结构 修修 改改 详细详细 设计设计 可接受可接受 模块描述模块描述 复审复审 修修 改改 设计说设计说 明书明书 1、设计阶段结束要交付的文档是设计说明书,根据 设计方法的不同,有不同的设计文档。 2、每个设计步骤完成后,都应进行复审。 4 编码编码测试测试 设计设计 信息描述信息
2、描述 功能描述功能描述 行为描述行为描述 其他需求其他需求 总体结构设计总体结构设计 数据设计数据设计 过程设计过程设计 程序模块程序模块 集成并确集成并确 认的软件认的软件 软件开发阶段的信息流软件开发阶段的信息流 软件设计的过程软件设计的过程 5 任务:任务:确定系统的软件结构,分解模块确定系统的软件结构,分解模块 , 确定系统的模块层次关系。确定系统的模块层次关系。 目标:目标: 编写软件的编写软件的 “总体设计说明书总体设计说明书” 工具:工具:采用的工具采用的工具 数据流图数据流图 层次图层次图 HIPOHIPO图图 软件结构图软件结构图 总体设计的任务总体设计的任务 6 结构化设计
3、(结构化设计(SDSD)技术)技术 软件设计的目标 分层的分层的DFDDFD图图初始的结构图初始的结构图最终的结构图最终的结构图 转换转换优化优化 数据流图的特征数据流图的特征启发式规则启发式规则 1 1、确定系统的软件结构,分解模块、确定系统的软件结构,分解模块 ,确定系统,确定系统 的模块层次关系的模块层次关系 2、确定每个模块功能的算法、数据结构、确定每个模块功能的算法、数据结构 确定每个模块功能的算确定每个模块功能的算 法、数据结构法、数据结构 (事务型、变换型(特征)(事务型、变换型(特征) ) (层次图表示)(层次图表示) 7 软件设计分为: 结构设计 总体设计(概要设计) 过程设
4、计 详细设计 总体设计过程分两个阶段: 系统设计阶段:确定系统的具体设计方案; 结构设计阶段:确定软件结构(划分模块)。 8 设想供选 择的方案 选 取 合 理的方案 推荐最 佳方案 功能 分解 设计软 件结构 数据库 设 计 制订测 试计划 书写 文档 数据流图 系统流程图 组成系统的物理元素清单 成本/效益分析 实现系统的进度计划 系统说明 用户手册 测试计划 详细的实现计划 数据库设计结果 审查和 复 审 9 5.2 5.2 系统设计的基本原则系统设计的基本原则 10 5.2.1 5.2.1 软件设计原理软件设计原理 1 1、模块、模块 是由边界元素限定的相邻的程序元素是由边界元素限定的
5、相邻的程序元素( (例如,例如, 数据说明,可执行的语句数据说明,可执行的语句) )的序列,而且有一个总体标的序列,而且有一个总体标 识符来代表它。即识符来代表它。即能够单独命名并独立地完成一定功 能的程序语句的集合。 模块化:模块化:把程序划分成若干个模块,每个模块完成把程序划分成若干个模块,每个模块完成 一个子功能,把这些模块集成起来组成一个整体,一个子功能,把这些模块集成起来组成一个整体, 可以完成指定的功能,满足问题的功能。可以完成指定的功能,满足问题的功能。 过程、函数、子程序和宏等,都可作为模块。过程、函数、子程序和宏等,都可作为模块。 面向对象范型中的对象是模块,对象内的方法也是
6、面向对象范型中的对象是模块,对象内的方法也是 模块。模块是构成程序的基本构件。模块。模块是构成程序的基本构件。 11 根据前面的结论,我们可以得出下面的不等式:根据前面的结论,我们可以得出下面的不等式: E(P1E(P1P2)P2)E(P1)E(P1)E(P2)E(P2) 这个不等式表明:这个不等式表明:单独解决问题单独解决问题P1P1和和P2P2所需的工作量之和,所需的工作量之和, 比把比把P1P1和和P2P2合起来作为一个问题来解决时所需的工作量要少。合起来作为一个问题来解决时所需的工作量要少。 有两个函数:有两个函数:C(x)C(x)表示问题表示问题x x的复杂程度;的复杂程度;E(x)
7、E(x)表示解决表示解决 问题问题x x所需要的工作量(时间)。所需要的工作量(时间)。 对于两个问题对于两个问题P1P1和和P2P2,如果:,如果:C(P1)C(P1)C(P2)C(P2) 则:则:E(P1)E(P1)E(P2)E(P2) 另一个有趣的特性是:另一个有趣的特性是:C(P1C(P1P2)P2)C(P1)C(P1)C(P2)C(P2) 3、模块化原理、模块化原理 12 模块化和软件成本的关系模块化和软件成本的关系 M 软件总成本 成本或工作量 最小成本区 接口成本 模块数目 13 我们在考虑问题时,集中考虑和当前问题有关的我们在考虑问题时,集中考虑和当前问题有关的 方面,而忽略和
8、当前问题无关的方面,这就是抽象。方面,而忽略和当前问题无关的方面,这就是抽象。 或者说或者说抽象就是抽出事物的本质特性而暂时不考虑它抽象就是抽出事物的本质特性而暂时不考虑它 们的细节们的细节。 5.2.2 5.2.2 抽象抽象 5.2.3 5.2.3 逐步求精逐步求精 逐步求精是人类解决复杂问题时采用的基本技逐步求精是人类解决复杂问题时采用的基本技 术,也是许多软件工程技术术,也是许多软件工程技术( (例如,规格说明技术,例如,规格说明技术, 设计和实现技术、测试和集成技术设计和实现技术、测试和集成技术) )的基础。的基础。逐步逐步 求精定义为:求精定义为:“为了能集中精力解决主要问题而尽为了
9、能集中精力解决主要问题而尽 量推迟对问题细节的考虑。量推迟对问题细节的考虑。” 14 信息隐蔽指:信息隐蔽指:是指在设计和确定模块时,使得一个是指在设计和确定模块时,使得一个 模块内包含的信息模块内包含的信息( (过程或数据过程或数据) ),对于不需要这些,对于不需要这些 信息的其他模块来说,信息的其他模块来说, 是不能访问的;即将那些自是不能访问的;即将那些自 身的实现细节与数据身的实现细节与数据“隐藏隐藏”起来。起来。 信息局部化指:信息局部化指:局部化是指把一些关系密切的软件局部化是指把一些关系密切的软件 元素物理地放得彼此靠近。在模块中使用局部数据元素物理地放得彼此靠近。在模块中使用局
10、部数据 元素是局部化的一个例子。元素是局部化的一个例子。 信息隐蔽信息隐蔽 局部和的关系?局部和的关系? 5.2.4 5.2.4 信息隐蔽和局部化信息隐蔽和局部化 15 5.2.5 5.2.5 模块独立模块独立 模块独立概念是模块化、抽象、逐步求精和信息 隐藏等概念的直接结果,也是完成有效的模块设计 的基本标准。 模块的独立程度可以由两个定性标准来度量,这 两个标准分别称为内聚和耦合。耦合衡量不同模块 彼此间互相依赖(连接)的紧密程度;内聚衡量一个 模块内部各个元素彼此结合的紧密程度。以下分别 详细阐述。 16 耦合性是程序结构中各个模块之间相互关联的度量耦合性是程序结构中各个模块之间相互关联
11、的度量 它取决于各个模块之间接口的复杂程度、调用模块的方它取决于各个模块之间接口的复杂程度、调用模块的方 式以及那些信息通过接口。式以及那些信息通过接口。 低低 非直接非直接 耦合耦合 数据数据 耦合耦合 特征特征 耦合耦合 控制控制 耦合耦合 外部外部 耦合耦合 公共公共 耦合耦合 内容内容 耦合耦合 高高 弱弱 强强 耦合性耦合性 模块独立性模块独立性 模块间的耦合模块间的耦合 17 1、耦合 非直接耦合非直接耦合 数据耦合数据耦合 特征耦合特征耦合 控制耦合控制耦合 外部耦合外部耦合 公共耦合公共耦合 内容耦合内容耦合 弱耦合 中耦合 强耦合 模块1模块2 模块3模块4 数据耦合数据耦合
12、 通过简单变量通过简单变量 交换数据交换数据 特征耦合特征耦合 通过数据结通过数据结 构交换数据构交换数据 非直接耦合非直接耦合 模块之间没有信息传递模块之间没有信息传递 模块模块A 模块模块B模块模块C 模块模块D 模块模块L 模块模块N 全局性数据结构全局性数据结构 公共耦合公共耦合 Flag=1? S1S2 模块1 控制耦合控制耦合 模块之间传递模块之间传递 的是控制信息的是控制信息 TF 全全 局局 性简单变量性简单变量 外部耦合外部耦合 模块模块A 模块模块B 内容耦合内容耦合 访问其它模块的内部数据访问其它模块的内部数据 直接跳到其他模块内部执行直接跳到其他模块内部执行 18 设计
13、原则:尽量使用数据耦合,设计原则:尽量使用数据耦合, 少用控制耦合,限制公共环境耦合,少用控制耦合,限制公共环境耦合, 完全不用内容耦合。完全不用内容耦合。 19 内内 聚聚 低低 功能功能 内聚内聚 顺序顺序 内聚内聚 通信通信 内聚内聚 过程过程 内聚内聚 时间时间 内聚内聚 逻辑逻辑 内聚内聚 偶然偶然 性内性内 聚聚 高高 强强 弱弱 内聚性内聚性 模块独立性模块独立性 软件设计 20 2 2、内聚、内聚 内聚内聚:一个模块内各个元素彼此结合的紧密程度。:一个模块内各个元素彼此结合的紧密程度。 偶然内聚偶然内聚:一个模块完成一组任务,任务之间的关系很松散。公共语句。:一个模块完成一组任
14、务,任务之间的关系很松散。公共语句。 逻辑内聚逻辑内聚:若干个逻辑功能类似的任务组成一个模块。:若干个逻辑功能类似的任务组成一个模块。 时间内聚时间内聚:若干个任务必须在同一段时间内执行。如初始化工作。:若干个任务必须在同一段时间内执行。如初始化工作。 低内聚低内聚 中内聚中内聚 高内聚高内聚 过程内聚:模块内的处理元素是相关的,且必须以特定次序执行。过程内聚:模块内的处理元素是相关的,且必须以特定次序执行。 通信内聚:模块中所有元素都使用同一个输入数据,和通信内聚:模块中所有元素都使用同一个输入数据,和/或产生同一个或产生同一个 输出数据。输出数据。 顺序内聚顺序内聚:模块中所有处理元素和同
15、一个功能密切相关,且这些处理:模块中所有处理元素和同一个功能密切相关,且这些处理 必必 须顺序执行。须顺序执行。 功能内聚功能内聚:所有处理元素属于一个整体,完成一个单一的功能。:所有处理元素属于一个整体,完成一个单一的功能。 模块模块A模块模块B模块模块C S1; S2; 模块模块A 模块模块B模块模块C 模块模块A模块模块B模块模块C 模块模块D 21 5.3 5.3 启发式规则启发式规则 1改进软件结构提高模块独立性 合并和分解 2模块规模应该适中 一个模块的规模不应过大,通常能写在一 页纸内。从心理学角度研究得知,当一个模块 包含语句数超过30以后,模块的可理解程度迅 速下降。 22
16、3模块的深度、宽度、扇出和扇入应适当 深度:表示软件结构中的控制层数,它往往能粗略 的标志一个系统的大小和复杂度。 宽度:是软件结构内同一个层次上的模块总数的最 大值。 扇出:是一个模块直接控制的模块数。 扇入:一个模块的扇入表明有多少个上级模块直接 调用它。 宽 度 扇出 D ABC M T 扇入 深 度 23 尽可能减少高扇出结构,随着深度增大扇入尽可能减少高扇出结构,随着深度增大扇入。 如果一个模块的扇出数过大,就意味着该模块如果一个模块的扇出数过大,就意味着该模块 过分复杂,需要协调和控制过多的下属模块。过分复杂,需要协调和控制过多的下属模块。 应当适当增加中间层次的控制模块。应当适当
17、增加中间层次的控制模块。 24 4模块的作用范围应该在控制范围之内 作用范围:一个模块的作用范围指受该模块内一个 判定影响的所有模块的集合。 控制范围:一个模块的控制范围指模块本身以及其 所有下属模块(直接或间接从属于它的模块)的集合。 TOP AB C D EF (a) TOP AB C D EF (b) TOP AB C D EF (c) 图 模块的判定作用范围 (a) 差的结构图; (b) 不理想的结构图; (c) 理想的结构图 25 5.力争降低模块接口的复杂程度。 模块接口复杂是软件发生错误的一个主要原 因。 6设计单入口单出口的模块,避免“病态 连接” 7模块功能应该可以预测 。
18、防止模块功能过分局限 26 5.4 5.4 表示软件结构的图形工具表示软件结构的图形工具 27 5.4.1 5.4.1 层次图和层次图和HIPOHIPO图图 通常使用层次图描绘软件的层次结构。通常使用层次图描绘软件的层次结构。 1 1、层次图、层次图 层次图用来描绘软件的层次结构,很适于在自顶向下层次图用来描绘软件的层次结构,很适于在自顶向下 设计软件的过程中使用。设计软件的过程中使用。 在层次图中一个矩形框代表一个模块,框间的连线表在层次图中一个矩形框代表一个模块,框间的连线表 示调用关系示调用关系( (位于上方的矩形框所代表的模块调用位于位于上方的矩形框所代表的模块调用位于 下方的矩形框所
19、代表的模块下方的矩形框所代表的模块) )。 28 学生成绩管理系统层次图学生成绩管理系统层次图 29 HIPOHIPO图是美国图是美国IBMIBM公司发明的公司发明的“层次图加输入层次图加输入/ / 处理处理/ /输出图输出图”的英文缩写。为了使的英文缩写。为了使HIPOHIPO图具有可追图具有可追 踪性,在踪性,在H H图图( (即层次图即层次图) )里除了顶层的方框之外,每里除了顶层的方框之外,每 个方框都加了编号。个方框都加了编号。 2、HIPO图图 30 描绘描绘软件结构的图形工具软件结构的图形工具 在层次图(在层次图(H图)里除了最顶层的方框之外,每个方框都加编图)里除了最顶层的方框
20、之外,每个方框都加编 号。编号规则和数据流图的编号规则相同,例如,图加了编号后号。编号规则和数据流图的编号规则相同,例如,图加了编号后 得到图得到图0。像这样带编号的层次图称为。像这样带编号的层次图称为HIPO图(层次图加输入图(层次图加输入/ 处理处理/输出图的英文缩写)。输出图的英文缩写)。 图学生成绩管理系统HIPO图 31 图图4.6 IPO4.6 IPO图的一个例子图的一个例子 32 图图4.7 4.7 改进的改进的IPOIPO图图(IPO(IPO表表) )的形式的形式 33 方框代表模块,框内注明模块的名字或主要功能; 箭头表示模块的调用关系,为了简单起见,可以只 用直线而不用箭头
21、表示模块间的调用关系。 尾部是空心圆表示传递的是数据 实心圆表示传递的是控制信息 5.4.2 5.4.2 结构图结构图 结构图的基本符号 结构图和层次图类似也是描绘软件结构的图形工具。 34 方框代表模块,框内注明模块的名字或主要功能; 箭头表示模块的调用关系,为了简单起见,可以只 用直线而不用箭头表示模块间的调用关系。 尾部是空心圆表示传递的是数据 实心圆表示传递的是控制信息 5.4.1 5.4.1 结构图结构图 结构图的基本符号 结构图和层次图类似也是描绘软件结构的图形工具。 35 描绘软件结构的图形工具 结构图的组成结构图的组成 有有6 6种类型的模块:传入模块、传出模块、变换模块、协调
22、模种类型的模块:传入模块、传出模块、变换模块、协调模 块,如下图所示,还有两种:块,如下图所示,还有两种: 源模块:不调用其它模块的传源模块:不调用其它模块的传 入模块,只适用于传入部分的始端。最初的输入;入模块,只适用于传入部分的始端。最初的输入; 漏模块:漏模块: 不调用其它模块的传出模块,只适用于传出部分的末端。最后不调用其它模块的传出模块,只适用于传出部分的末端。最后 的输出。的输出。 系统结构图中的模块类型 36 结构图的图形符号结构图的图形符号 编辑学生记录编辑学生记录 读学生记录读学生记录 学生数据学生数据 无此学生无此学生 学号学号 不加区分的数据不加区分的数据 数据信息数据信
23、息 控制信息控制信息 37 软件结构图的基本符号 A B (a) 基本形式 A CBD (b) 顺序 A BC (c) 选择 A B (d) 重复 结构图的三种基本结构结构图的三种基本结构 38 A BCT1 M T2T3 (a)(b) 4.3 选择调用和循环调用的表示 (a) 选择调用; (b) 循环调用 39 产生最佳解的结构图 格式化的解 解 产生最佳解 计算最佳解得到好输入 编辑输入读输入 原始输入编辑结果 原始输入 输出结果 显示结果结果格式化 解格式化的解 好输入 好 输 入 解 40 例:学生成绩管理系统的结构图 41 5. 5 5. 5 面向数据流的设计方法面向数据流的设计方法
24、 42 从从DFDDFD图导出初始的模块结构图。图导出初始的模块结构图。 按照按照SDSD法设计总则法设计总则( (启发式规则),改进模块结构图。启发式规则),改进模块结构图。 注意:模块结构图不同于注意:模块结构图不同于“框图框图”。 一般将一般将DFDDFD图分为两种典型的类型,分析系统的图分为两种典型的类型,分析系统的 DFD DFD 图类型的目的,是为了采用不同的技术将其转换图类型的目的,是为了采用不同的技术将其转换 为初始的模块结构图。为初始的模块结构图。 中心变换型中心变换型(transform center) _ (transform center) _ 变换分析变换分析 事务处
25、理型事务处理型(transaction) _ (transaction) _ 事务分析事务分析 5.5.1 5.5.1 数据流图的类型数据流图的类型 43 SDSD方法的两种映射过渡方法方法的两种映射过渡方法 变换型变换型DFD 事务型事务型DFD 初始初始SC 初始初始SC 变换分析变换分析 事务分析事务分析 三、面向数据流的设计方法三、面向数据流的设计方法 44 面向数据流的设计方法面向数据流的设计方法 概念概念 1) 变换流变换流 2) 事务流事务流 3) 设计过程设计过程 时间时间 输入流输入流 输出流输出流 变换流变换流 事务事务 外部表示外部表示 内部表示内部表示 信息信息 T 事
26、务中心事务中心 活动通路活动通路 事务中心事务中心 T 完成下述任务:完成下述任务: 接受输入数据(事务)接受输入数据(事务) 分析每个事务以确定它的类型分析每个事务以确定它的类型 根据事务类型选取一条活动通路根据事务类型选取一条活动通路 45 变换型数据流举例变换型数据流举例 输入输入 信息信息 物理物理 输入输入 格式格式 检查检查 处理处理显示显示 正确正确 信息信息 结果结果 物理物理 输出输出 数据数据 变换中心变换中心 逻辑逻辑 输入输入 逻辑逻辑 输出输出 传入部分传入部分传出部分传出部分 特点:具有明确的传入、变换特点:具有明确的传入、变换( (或称主加或称主加 工工) ) 和
27、传出界面的和传出界面的DFD 1 1、变换型数据流图、变换型数据流图 46 1、确定数据流图具有变换特征还是事务特征。 2、确定输入流和输出流的边界,从而孤立出变换中 心。 3、从变换中心开始,向左、向右分别转换输入部分 和输出部分。 4、输入部分可能用到“输入”、“得到”模块,输 出部分用到“输出”、“给出”模块。 5、使用设计度量和启发式规则对第一次分割得到的 软件结构进一步精化。 变换分析的设计步骤 47 变换型系统结构图变换型系统结构图 取得 数据 B D 变换 数据 给出 数据 DFD-SC 给出 数据 C E A 48 变换型系统结构图变换型系统结构图 主模块 C变换成D取得C给出
28、D 取得BB变换成CD变换成E给出E 取得AA变换成B A AB B B C C DC D ED 协调模块 变换模块传出模块 具有变换型系统结构图具有变换型系统结构图 E 49 2、事务型数据流图、事务型数据流图 输入输入 ABC D E F G H 中心变换中心变换 输出输出 逻辑逻辑 输入输入 物理物理 输入输入 逻辑逻辑 输出输出 物理物理 输出输出 事务型事务型 数据流图数据流图 50 ABC D E F G H C 事务型系统数据流图事务型系统数据流图 事务型事务型 数据流图数据流图 (DFD) MT 3 逻辑输入逻辑输出 C DC D,E,F 事务型系统结构图事务型系统结构图 51
29、 事务型数据流图举例事务型数据流图举例 I M L N O A B C D F E G H 52 3 3、大型系统、大型系统DFDDFD中中, ,变换型和事务型结变换型和事务型结 构往往共存构往往共存 T T 事务中心事务中心 传入传入 变换变换 传出传出 53 事务分析事务分析 主模块 给出H取得ALMN A G H B E C F D M 54 A B C D E f2f1 f5 f3 f4 f6 f7 将下列数据流图转化为软件结构图 55 f7 主模块 给出f6将f2变换为f6取得 f2 A f1 f2 f2 f6 输入f1 f1 f2 f6 BCD f3,f4 f3 f5 f4,f5
30、f6 E输出f7 f6 f7 f2 A B C D E f2f1 f5 f3 f4 f6 f7 56 3、事务型数据流图举例、事务型数据流图举例 IM L N O A B C D F E G H 57 事务流设计举例事务流设计举例 输入 A XX系统系统 事务中心事务中心 A L M A G D B C F E 输出 H H H N 58 事务流设计举例事务流设计举例 ( (另一种画法另一种画法) ) 输入 A XX系统系统 事务中心事务中心 A L M A G D B C F E 输出 E、F、G E、F、G E、F、G 输出输出H H O E、F、 G H H N 59 变换分析小节(变换
31、分析小节(YourdonYourdon结构图)结构图) 1 1、简单程序结构图转换、简单程序结构图转换 数据流图数据流图 软件结构图软件结构图 处理框处理框 模块模块 向左移动向左移动 向右移动向右移动 输入部分输入部分 从变换中心开始从变换中心开始 输出部输出部 分分 将输入部分处理将输入部分处理 将输出部分处理将输出部分处理 向左下旋转向左下旋转9090度度 向右下旋转向右下旋转9090度度 60 3 3、YourdonYourdon方法方法 一一对应一一对应 数据流图数据流图 程序结构图程序结构图 中的处理框中的处理框 中的模块中的模块 2 2、复杂程序结构图转换、复杂程序结构图转换 变
32、换型:变换型:输入部分输入部分,转换模块放在右侧,左,转换模块放在右侧,左 侧一般放输入框或得到框。侧一般放输入框或得到框。 输出部分输出部分,转换模块放在左侧,右,转换模块放在左侧,右 侧一般放输出框或给出框侧一般放输出框或给出框 61 62 5.5.3 5.5.3 变换设计举例变换设计举例 我们通过一个汽车数字仪表板的设计来介绍变换分析的过 程。假设仪表板的功能如下: (1)通过模数(AD)转换实现传感器和微处理机接口; (2)在发光二极管(LCD)面板上显示数据; (3)指示每小时英里数(mph),行驶的里程,每加仑油 行驶的英里数(mpg)等等; (4)指示加速或减速; (5)超速警告
33、:如果车速超过55英里小时,则发出超速 警告铃声。 在软件需求分析阶段,应该对上述每项性能和其它要求进 行全面的分析,并建立起相应的文档资料,得出数据流图。 具体的设计步骤如下: 63 例题:设计步骤例题:设计步骤 复查基本系统模型。复查基本系统模型。 复查并精化数据流图。复查并精化数据流图。 确定数据流图具有变换特性还是事务特性。确定数据流图具有变换特性还是事务特性。 确定输入流和输出流的边界,从而孤立出变换中心。确定输入流和输出流的边界,从而孤立出变换中心。 完成完成“第一级分解第一级分解”。 完成完成“第二级分解第二级分解”。 (1)(1)使用设计度量和启发规则对第一次分割得到的软件使用
34、设计度量和启发规则对第一次分割得到的软件 结构进一步精化。结构进一步精化。 64 1 1、复查基本系统模型、复查基本系统模型 2 2、复查并精化数据流图、复查并精化数据流图 65 3 3、确定数据流图的类型、确定数据流图的类型 任务是确定数据流图是变换型数据流图还是事 务型数据流图。 从上图中可以看出,数据沿着两条输入通路 (旋转信号和燃料流量传感器信号)进入系统, 然后沿着五条通路(4个显示,一个警告铃声)离 开,没有明显的事务中心(虽然变换“计算mph与 超速值”可以看作是一个事务中心)。因此,可 以认为这个数据流图的类型是变换型数据流图。 66 4 4、确定输入流和输出流的边界,从而孤立
35、出变换中心、确定输入流和输出流的边界,从而孤立出变换中心 67 5 5、进行、进行“第一级分解第一级分解” 第一级分解的方法 68 第一级分解的结果 69 6 6、进行、进行“第二级分解第二级分解” 第二级分解的方法 70 第二级分解的结果: 接收 传感器信号 转换成 rpm计算 gph 收集 sps 读旋转信号 读燃料流量 接收 传感器信号 确定 加速/减速 计算 mph计算 mpg计算里程 未经精化的输入结构 未经精化的变换结构 71 未经精化的输出结构 驱动仪表板 加速/减速 显示 显示 mpg显示里程发出警告铃声 显示 mph 发光二极 管显示 72 7 7、使用设计度量和设计准则对第
36、一次分割得、使用设计度量和设计准则对第一次分割得 到的软件结构进一步精化到的软件结构进一步精化 对于从前面的设计步骤得到的软件结构,还可 以进行许多修改: (1)输入结构中的模块“转换成rpm”和“收集 sps”可以合并; (2)模块“确定加速减速”可以放在模块 “计算mph”下面,以减少耦合; (3)模块“加速减速显示”可以相应地放在 模块“显示mph”的下面。 73 精化的数字仪表板系统的软件结构 数字仪表板 控制 接收传感器 信号 数据转换 控制 驱动仪表板 计算 里程 计算 mpg 计算 mph 计算 gph 转换成 rpm 发出警 报铃声 显示 里程 显示 mpg 显示 mph 读旋转 信号 读燃料 流量 确定 加速/减速 加速/减速 显示 发光二极管 显示 74 应用举例 75 1、高考录取统分子系统有如下功能: (1) 计算标准分:根据考生原始分计算,得到标准 分,存入考生分数文件; (2) 计算录取线分:根据标准分、招生计划文件中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 消防三项责任制度
- 混凝土方量责任制度
- 游泳池岗位服务责任制度
- 火锅店安全责任制度
- 煤矿督察科岗位责任制度
- 项目建设过程中的材料需求计划方案
- 2025海南航空控股股份有限公司市场营销委员会国际部国际收益助理招聘笔试历年备考题库附带答案详解
- 2025浙江温州市公用事业发展集团有限公司招聘(第二批)补录笔试历年常考点试题专练附带答案详解
- 2025浙江宁波舜通集团有限公司招聘拟录用笔试历年典型考点题库附带答案详解
- 公司供应链优化与物流管理培训方案
- 五育并举-立德树人始于行润品育心成于思
- T-CRHA 043-2024 住院患者皮肤撕裂伤风险评估和预防措施
- 工会安全监督检查记录
- 能源管理体系机械制造企业认证要求
- 事业单位年度考核实施方案
- 《水电工程运行调度规程编制导则》(NB-T 10084-2018)
- 腰椎间盘突出疑难病例讨论
- 沪教版七年级下英语各单元语法课件
- 内分泌科糖尿病管理PDCA循环案例
- 硅胶相关问题研究报告范文
- 选矿厂地质勘查报告
评论
0/150
提交评论