软件架构实践22.ppt
文本预览下载声明
* 软件架构实践 SOFTWARE ARCHITECTURE IN PRACTICE 软件系统设计与体系结构 软件架构实践 第 2 章 架构与架构师的作用 ? 2.1 架构是需求将如何被实现的描述 2.2 架构是系统关键质量属性的描述 2.3 架构是软件迭代开发的框架 2.4 架构是软件过程管理的基础 2.5 需求、系统设计、软件过程和组织与架构的相互影响 2.6 软件架构师的作用、任务与责任 2.7 本章小结 第2章架构与架构师的作用 2.2 架构是系统关键质量属性的描述 以往的车速控制结构图 汽车车速控制问题 车速控制器 节流阀 系统开/关 发动机开/关 刹车开/关 车轮脉冲 油门 设定速度 油箱油量 时钟 此结构存在的问题: 利用计算机实现控制的特点不明显 不利于采用已经成熟的采集和处理技术 实时性不强 控制完全依靠控制器逻辑 主CPU负担太重 计算机应用于控制的特点:时钟与中断 在实时控制系统中,时钟与中断是系统的核心,是实时控制的最主要问题 中断是系统处理的对象 时钟是处理机制和触发点 2.2.1 汽车控制系统架构演变的案例分析 层次:三层(采集、处理、输出) 模块:采集、处理、输出 车速控制器 节流阀 系统开/关 发动机开/关 刹车开/关 车轮脉冲 油门 设定速度 油箱油量 时钟 外部信号采集 外部信号采集 外部信号采集 内部处理逻辑 控制信号输出 模块接口:采集与处理、处理与输出 系统设计:层次/模块划分、接口简化 改善系统设计的例子 集中定时扫描的车速控制结构图 节流阀 车轮脉冲 开关量扫描 系统开/关 发动机开/关 刹车开/关 速度计算 油门 设定速度 油箱油量 模/数 转换 时钟 计数分配/中断 节流阀 开度 计算 中断定时 启动 数/模转换 当前速度 油门开度 设定速度 油箱油量 系统状态 刹车状态 发动机状态 分析:不同的外部量: 开关量 连续量 简单、有规律变化 复杂、无规律变化 不同的量应分别对待 用统一的定时时钟方式、统一地分配处理时间是一个浪费 改善系统设计的例子 集中定时扫描的车速控制结构图 节流阀 车轮脉冲 开关量扫描 系统开/关 发动机开/关 刹车开/关 速度计算 油门 设定速度 油箱油量 模/数 转换 时钟 计数分配/中断 节流阀 开度 计算 中断定时 启动 数/模转换 当前速度 油门开度 设定速度 油箱油量 系统状态 刹车状态 发动机状态 定时扫描结构的特点: 定时时钟是整个系统协调一致的核心 周期地扫描采样,得到系统的各状态信息 循环扫描方式、固定的定时时间间隔、没有考虑采集部件不同的需要 改善的思路:可根据具体硬件的情况、位置、性能、自我处理能力等,区别对待。 改善系统设计的例子 独立单元中断的车速控制结构图 节流阀 车轮脉冲 开关量扫描 系统开/关 发动机开/关 刹车开/关 速度计算 油门 设定速度 油箱油量 模/数 转换 节流阀 开度 计算 中断定时 启动 数/模转换 当前速度连续采集 油门开度连续采集 设定速度连续采集 油箱位置中断请求 系统状态中断请求 刹车状态中断请求 发动机状态中断请求 独立中断结构的特点: 当发生特定事件,才向系统发出中断,减轻系统负担 可按不同系统层次分别设计和处理中断,提高了系统的抽象级别 连续量的采集方式不变 由统一时钟下的扫描,改为一部分自主中断申请处理 改善系统设计的例子 独立单元中断的车速控制结构图 节流阀 车轮脉冲 开关量扫描 系统开/关 发动机开/关 刹车开/关 速度计算 油门 设定速度 油箱油量 模/数 转换 节流阀 开度 计算 中断定时 启动 数/模转换 当前速度连续采集 油门开度连续采集 设定速度连续采集 油箱位置中断请求 系统状态中断请求 刹车状态中断请求 发动机状态中断请求 连续量的采集方式 转速的连续变化与油量的连续变化不同 油门大小与设定速度(档位)变化的不同 进一步的分别处理 授权:智能处理 区别不同的连续量 改善系统设计的例子 独立单元中断的车速控制结构图 节流阀 车轮脉冲 开关量扫描 系统开/关 发动机开/关 刹车开/关 速度计算 油门 设定速度 油箱油量 模/数 转换 节流阀 开度 计算 中断定时 启动 数/模转换 当前速度连续采集 油门开度中断请求 设定速度中断请求 油箱位置中断请求 系统状态中断请求 刹车状态中断请求 发动机状态中断请求 前端采集模块智能化 部件是具有智能CPU功能的独立单元,甚至有初步处理能力(自主报警) 当发生特定事件,才向系统发出中断,减轻系统负担 可按不同系统层次分别设计和处理,提高了系统的抽象级别 低级问题由分系统处理,系统可以增加更多的处理能力,去更多的关注舒适性、智能化、人性化控制。 前端采集模块智能化 改善系统设计的例子 汽车控制系
显示全部