软件设计方法ppt课件
图的层次集合以及状态转换图。如图4-2~4-11所示。这 个方案使用了Ward/Mellor表示法。 ➢ 开发系统环境图
图4-2显示的是系 统环境图,每个 外部实体由一个 终端表示。
2020/5/2
图4-2 行使控制系统环境图
9
4.1 实时系统的结构化分析与设计
➢ 分解系统环境图
图4-3为顶级数据流/控制流图,其中系统环境图分解 为两个主要功能——行驶控制功能和监视功能。
为特征。 • 控制转换表示的是状态转换图的执行过程。 • 实体关系(ER)模型用于显示系统中数据存储之间的关
系模型。 • 模块内聚在模块分解过程中作为一种标准来使用,用于
确定模块内部的强度或统一性。 • 模块耦合在模块分解过程中作为一种标准来使用,用于
判断模块间连接性的程度。
2020/5/2
4
4.1 实时系统的结构化分析与设计
】控制转换来执行。
在使用图4-5中的实时
结构化分析约定时,其中
的矩形表示状态,带有标
签的箭头表示状态转换。
在直线的上方是可以引起
状态转换的输入事件。在
直线的下方是在发生转换
时生成的输出事件。输出
事件触发(T)、启动(E
)或禁止(D)数据转换
,然后执行指定操作。
图4-5 行驶控制状态转换图
2020/5/2
12
4.1 实时系统的结构化分析与设计
从行驶控制的角度来看, 汽车的不同状态包括: • 停机。 • 开始“非制动” 。 • 开始“制动”。 • 加速。 • 巡行。 • 巡行关闭非制动。 • 巡行关闭制动。 • 恢复巡行。
2020/5/2
输出事件如下所示: •E1 启动“增加速度” •D5 禁止“维持速度” •D2 禁止“增加速度” •E6 启动“恢复巡行速度 ” •T3 触发“选择所需速度 ” •D7 禁止“恢复巡行速度 ” •E4 启动“维持速度” •T8 1触3 发“清除所需速度
4.1.2 表示法
• 实时结构化分析中使用了数据流/控制流图。图4-1中显示的是 用于数据流/控制流图的Ward/Mellor表示法。
• 状态转换图是有 限状态机的图形表 示法。 • 实体关系图是ER模型的图形表示 法。 • 结构图用于显示 程序分解为模块的 方式,还用于显示 模块间的接口。
图4-1 实时结构化分析表示法
2020/5/2
5
4.1 实时系统的结构化分析与设计
4.1.3 使用结构化分析阶段,将会发生以下活动:
a) 开发系统环境图。
b) 实现数据流/控制流的分解——系统要分解为多个功能并 且要以数据流或控制流的形式定义功能间的接口。
c) 开 发 控 制 转 换 ( Ward/Mellor) 或 控 制 规 范 ( Boeing/Hatley)——对结构化分析主要的实时扩展是引 入了对控制问题的考虑,以定义系统的行为特征。
• 转换分析是用于将数据流图映射为结构图的一种策略, 其重要的流程是输入-处理-输出流。
• 在模块分解过程中,功能内聚和信息内聚被认为是最强 的内聚形式。数据耦合是耦合的最低形式。
2020/5/2
7
4.1 实时系统的结构化分析与设计
4.1.4 设计过程的成果
➢ 实时结构化分析——应用RTSA所产生的规范包括以下内 容:
第4讲 实时软件设计方法
主讲: 黎忠文
内容提要
• 本讲首先讲述了RSTAD的一些相关概念,并以行驶监控系 统案例介绍了其应用步骤和方法。
• 介绍了DARTS的相关知识,并以行驶监控系统案例介绍其 使用步骤和方法。
• 对本讲中介绍的各种并发和实时软件设计方法进行比较 。
• 最后概述了使用性能模型和应用实时调度理论进行软件 设计性能分析的过程。
图4-4中的【测量距离和速度】数据转换可以分解为图4-7 中的数据流图。
图4-7 测量距离和速度
4.1 实时系统的结构化分析与设计
➢ 控制速度
在状态转换时,触发、启动或禁止控制速度(图4-6)过程中DFD 上的数据转换。
• 经触发的转换是 一次性函数。
• 在整个状态的过 程中启动的转换 很可能是可以循 环的。
2020/5/2
图4-6 控制速度
14
4.1 实时系统的结构化分析与设计
➢ 测量距离和速度
• 系统环境图; • 数据流/控制流图的层次集合; • 数据字典; • 小说明。 • 定义每种控制转换或控制规范的状态转换图。 ➢ 结构化设计——对于每个程序来说,都有一个结构图来
显示将其分解为模块的方式。
2020/5/2
8
4.1 实时系统的结构化分析与设计
4.1.5 行驶监控系统案例研究
➢ 实时结构化分析 实时结构化分析规范包括系统环境图、数据流/控制流
2020/5/2
2
目录
4.1 实时系统的结构化分析与设计 4.2 实时系统设计方法 4.3 并发和实时软件设计方法的比较 4.4 并发与实时系统软件设计性能分析
2020/5/2
3
4.1 实时系统的结构化分析与设计
4.1.1 基本概念
• 转换可以是数据转换或控制转换。 • 在设计过程中,功能被映射为模块。 • 以状态转换图形时表示的有限状态机用于定义系统的行
图4-3 分解为子系统
2020/5/2
10
4.1 实时系统的结构化分析与设计
➢ 实现汽车行驶控制
实现汽车行驶控制(图4-3)分解为图4-4所示的数据 流图。有3个数据转换在监视汽车的传感器。
图4-4 实现汽车行驶控制
2020/5/2
11
4.1 实时系统的结构化分析与设计
➢ 行驶控制状态转换图
• 控制速度数据转换(图4-4)分解为数据流/控制流图。 图4-5中的行驶控制状态转换图由图4-6中的【行驶控制
d) 定义小说明(mini-specifications,或过程规范)—— 通常使用的是结构化的英语。
e) 开发数据字典——数据字典用于定义所有的数据流、事 件流、数据存储。
2020/5/2
6
4.1 实时系统的结构化分析与设计
➢ 实时设计
• 在RTSA阶段之后,Boeing/Hatley方法使用了系统构架 图。Ward/Mellor方法则继续采用以下步骤: f) 将转换分配到各个处理器中。 g) 将转换分配到各个任务中——每个处理器的转换都被 分配到并发任务中。 h) 结构化设计——指定任务中的转换使用结构化设计分 解为多个模块。