软件设计方法.ppt
- 文档编号:2209971
- 上传时间:2022-10-27
- 格式:PPT
- 页数:61
- 大小:6.86MB
软件设计方法.ppt
《软件设计方法.ppt》由会员分享,可在线阅读,更多相关《软件设计方法.ppt(61页珍藏版)》请在冰豆网上搜索。
第第44讲讲实时软件设计方法实时软件设计方法主讲:
黎忠文内容提要内容提要本讲首先讲述了RSTAD的一些相关概念,并以行驶监控系统案例介绍了其应用步骤和方法。
介绍了DARTS的相关知识,并以行驶监控系统案例介绍其使用步骤和方法。
对本讲中介绍的各种并发和实时软件设计方法进行比较。
最后概述了使用性能模型和应用实时调度理论进行软件设计性能分析的过程。
2022/10/272022/10/2722目目录录4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计4.24.2实时系统设计方法实时系统设计方法4.34.3并发和实时软件设计方法的比较并发和实时软件设计方法的比较4.44.4并发与实时系统软件设计性能分析并发与实时系统软件设计性能分析2022/10/272022/10/2733转换转换可以是数据转换或控制转换。
在设计过程中,功能被映射为模块模块。
以状态转换图形时表示的有限状态机有限状态机用于定义系统的行为特征。
控制转换控制转换表示的是状态转换图的执行过程。
实体关系(实体关系(ERER)模型模型用于显示系统中数据存储之间的关系模型。
模块内聚模块内聚在模块分解过程中作为一种标准来使用,用于确定模块内部的强度或统一性。
模模块块耦耦合合在模块分解过程中作为一种标准来使用,用于判断模块间连接性的程度。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计4.1.14.1.1基本概念基本概念2022/10/272022/10/27444.1.24.1.2表示法表示法4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计实时结构化分析中使用了数据流数据流/控制流图控制流图。
图图4-1中显示的是用于数据流/控制流图的Ward/Mellor表示法。
状态转换图状态转换图是有限状态机的图形表示法。
实体关系图实体关系图是E-R模型的图形表示法。
结构图结构图用于显示程序分解为模块的方式,还用于显示模块间的接口。
图图4-1实时结构化分析表示法实时结构化分析表示法2022/10/272022/10/27554.1.34.1.3使用方法的步骤使用方法的步骤实时结构化分析实时结构化分析在实时结构化分析阶段,将会发生以下活动:
a)a)开发系统环境图。
开发系统环境图。
b)b)实实现现数数据据流流/控控制制流流的的分分解解系统要分解为多个功能并且要以数据流或控制流的形式定义功能间的接口。
c)c)开开发发控控制制转转换换(Ward/MellorWard/Mellor)或或控控制制规规范范(Boeing/HatleyBoeing/Hatley)对结构化分析主要的实时扩展是引入了对控制问题的考虑,以定义系统的行为特征。
d)d)定定义义小小说说明明(mini-specifications,mini-specifications,或或过过程程规规范范)通常使用的是结构化的英语。
e)e)开开发发数数据据字字典典数据字典用于定义所有的数据流、事件流、数据存储。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计2022/10/272022/10/2766实时设计实时设计在RTSA阶段之后,Boeing/Hatley方法使用了系统构架图。
Ward/Mellor方法则继续采用以下步骤:
f)f)将转换分配到各个处理器中。
将转换分配到各个处理器中。
g)g)将转换分配到各个任务中将转换分配到各个任务中每个处理器的转换都被分配到并发任务中。
h)h)结构化设计结构化设计指定任务中的转换使用结构化设计分解为多个模块。
转换分析转换分析是用于将数据流图映射为结构图的一种策略,其重要的流程是输入输入-处理处理-输出流输出流。
在模块分解过程中,功能内聚和信息内聚被认为是最强的内聚形式。
数据耦合是耦合的最低形式。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计2022/10/272022/10/27774.1.44.1.4设计过程的成果设计过程的成果实时结构化分析实时结构化分析应用RTSA所产生的规范包括以下内容:
系统环境图;数据流/控制流图的层次集合;数据字典;小说明。
定义每种控制转换或控制规范的状态转换图。
结构化设计结构化设计对于每个程序来说,都有一个结构图来显示将其分解为模块的方式。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计2022/10/272022/10/27884.1.54.1.5行驶监控系统案例研究行驶监控系统案例研究实时结构化分析实时结构化分析实时结构化分析规范包括系统环境图、数据流/控制流图的层次集合以及状态转换图。
如图4-24-11所示。
这个方案使用了Ward/Mellor表示法。
开发系统环境图开发系统环境图4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计图4-2显示的是系统环境图,每个外部实体由一个终端表示。
图图4-2行使控制系统环境图行使控制系统环境图2022/10/272022/10/2799分解系统环境图分解系统环境图图4-3为顶级数据流/控制流图,其中系统环境图分解为两个主要功能行驶控制功能和监视功能。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计图图4-3分解为子系统分解为子系统2022/10/272022/10/271010实现汽车行驶控制实现汽车行驶控制实现汽车行驶控制(图4-3)分解为图4-4所示的数据流图。
有3个数据转换在监视汽车的传感器。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计图图4-4实现汽车行驶控制实现汽车行驶控制2022/10/272022/10/271111行驶控制状态转换图行驶控制状态转换图控制速度数据转换(图4-4)分解为数据流/控制流图。
图4-5中的行驶控制状态转换图由图4-6中的【行驶控制】控制转换来执行。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计在使用图4-5中的实时结构化分析约定时,其中的矩形表示状态状态,带有标签的箭头表示状态转换状态转换。
在直线的上方是可以引起状态转换的输入事件输入事件。
在直线的下方是在发生转换时生成的输出事件输出事件。
输出事件触发触发(T)、启动启动(E)或禁止禁止(D)数据转换,然后执行指定操作。
图图4-5行驶控制状态转换图行驶控制状态转换图2022/10/272022/10/271212从行驶控制的角度来看,汽车的不同状态包括:
停机。
开始“非制动”。
开始“制动”。
加速。
巡行。
巡行关闭非制动。
巡行关闭制动。
恢复巡行。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计输出事件如下所示:
E1启动“增加速度”D5禁止“维持速度”D2禁止“增加速度”E6启动“恢复巡行速度”T3触发“选择所需速度”D7禁止“恢复巡行速度”E4启动“维持速度”T8触发“清除所需速度”2022/10/272022/10/271313控制速度控制速度经触发的转换是一次性函数。
在整个状态的过程中启动的转换很可能是可以循环的。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计在状态转换时,触发、启动或禁止控制速度(图4-6)过程中DFD上的数据转换。
图图4-6控制速度控制速度2022/10/272022/10/271414测量距离和速度测量距离和速度图4-4中的【测量距离和速度】数据转换可以分解为图4-7中的数据流图。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计图图4-7测量距离和速度测量距离和速度2022/10/272022/10/2715154.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计【控制校准】是使用图4-8所示的状态转换图来定义的。
图图4-8控制校准状态转换图控制校准状态转换图2022/10/272022/10/271616实现汽车监视实现汽车监视实现汽车监视实现汽车监视实现汽车监视(图4-3)的过程在图4-9中进行了进一步分解4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计图图4-9实现汽车监视实现汽车监视2022/10/272022/10/271717监视并显示平均值监视并显示平均值图4-9中的【监视并显示平均值】数据转换分解为图4-10中所示的数据流图。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计它计算并显示了每加仑汽油可以行驶的平均英里数和每小时行驶的英里数。
图图4-10监视并显示平均值监视并显示平均值2022/10/272022/10/271818检查维护需要检查维护需要图4-9中的【检查维护需要】数据转换分解为图4-11中所示的数据流图。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计要定期进行3种维护服务:
滤油器、空气过滤器和大修维护。
每种服务的提供方式都是类似的。
图图4-11检查维护需要检查维护需要2022/10/272022/10/271919结构化设计结构化设计下一步,RTSA规范要映射到结构化设计中。
如图4-124-18所示。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计结构图中的模块主要是功能模块功能模块,其中也有一些信息隐藏模块。
主模块主模块行驶监控系统(图5-12)由一个环形循环,在这个循环中可以判断何时调用下级模块:
实现汽车行驶控制和实现汽车监视。
图图5-12行驶监控系统结构图行驶监控系统结构图2022/10/272022/10/272020实现汽车行驶控制实现汽车行驶控制对应于其4个主要功能,实现汽车行驶控制有4个下级模块。
在【获得行驶控制输入】模块中,选择的是使用轮询I/O。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计图图4-13获得行驶控制输入结构图获得行驶控制输入结构图2022/10/272022/10/272121轴中断程序还要更新一个内部变量【轴转数】(ShaftRotationCounter),然后【确定距离】模块(图4-14)要访问这个变量来计算汽车所经过的【累积距离】。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计图图4-14确定距离和速度结构图确定距离和速度结构图2022/10/272022/10/272222无论何时出现新的行驶控制输入,【实现汽车行驶控制】模块都要调用【控制速度】模块(图4-15)4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计图图4-15控制速度的结构图控制速度的结构图2022/10/272022/10/272323时间问题时间问题每次循环中,【实现汽车行驶控制】模块都会调用【获得行驶控制输入】模块判断是否有新的输入。
然后它会调用【确定距离和速度】模块来更新累积距离并计算当前速度。
下一步就是调用【控制速度】模块来处理下一次的行驶控制事件和/或实现任何状态依赖功能。
最后,该模会会调用【进行校准】(图4-16)来检查是否发生了校准事件4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计图图4-16实现校准结构化图实现校准结构化图2022/10/272022/10/272424实现汽车监视实现汽车监视【实现汽车监视】模块调用【获得复位输入】(图4-12)模块,用于确定是否某个里程或维护复位按钮被按下。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计例如,如果按下了MPH复位按钮,【实现汽车监视】模块就会调用【监视并显示平均值】模块(图4-17)。
图图4-17监视和显示平均值结构图监视和显示平均值结构图2022/10/272022/10/272525如果按下了其中某个维护按钮,【实现汽车监视】模块就会调用【检查维护需要】模块(图4-18)。
4.14.1实时系统的结构化分析与设计实时系统的结构化分析与设计图图4-18检
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件设计 方法
![提示](https://static.bdocx.com/images/bang_tan.gif)