软件工程软件体系结构
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机硬件体系结构分类
指令 控制 指令 处理 数据 存储
SISD单指令流单数据流计算机
Βιβλιοθήκη Baidu
计算机硬件体系结构分类
控制 指令
处理1 数据1 处理2 数据2
…… 处理n 数据n
存储1 存储2 …… 存储n
SIMD单指令流多数据流计算机
计算机硬件体系结构分类
指令1 控制1 指令1 处理1 数据
指令2 控制2 指令2 处理2
• 什么是软件体系结构 • 软件体系结构的发展 • 软件体系结构的研究范畴
软件设计的目标
•设计应该是便于维护和升级的,因而应
该是模块化的
•设计应该是便于移植的 •设计应该具有适应性 •设计过程应该受到理性化的控制 •设计应该表现出概念的完整性
软件设计思想
•强调信息隐蔽的单元概念 •应用基于操作和数据封装构成的单元设计
7 文档(Document) 共享表示假设
软件体系结构可分为四种不同的体系:
• 概念结构
包括部件、互连、原则和性能等
• 代码结构
包括软件的配置管理、系统建造等
• 模块结构
包括模块界面、模块管理、模块控制和一致性等
• 执行结构
包括性能分析、调度分析、动态配置和不同的 执行系统之间的接口等
与软件体系结构有关的研究:
不同服务器上
(3)将功能层放 在客户机上
将三层功能装载到硬件的三种基本方法
层次模型的结构关系
客户 使用
第四章 软件设计
主要内容: 软件体系结构的概念 软件设计思想 结构化设计方法 面向对象设计方法
讨论要点
(1)什么是软件结构? (2)如何建立设计模型?
软件设计的目标和目的
软件需求:解决“做什么”
软件设计:解决“怎么做” 软件设计的任务 问题结构(软件需求) 映射 软件结构 从软件需求规格说明书出发,形成软 件的具体设计方案。
软件的结构基础
• 结构控制流 • 部件连接方式 • 结构化连接模式 • 基本数据类型 • 抽象数据类型 • 进程及运行环境 • 分时并发计算 • 资源共享/并行同步 • 实时系统 • 软件结构的四视图观
软件体系结构的四视图
部件
概念视图
连接器
配置
运
硬
部件 连接器 配置
模块限制
行 运行限制 视
件 和 操
……
……
指令n 控制n 指令n 处理n 数据
存储1 存储2 …… 存储n
MISD多指令流单数据流计算机
计算机硬件体系结构分类
指令1 控制1 指令1 处理1 数据1
指令2 控制2 指令2 处理2 数据2
……
……
指令n 控制n 指令n 处理n 数据n
存储1 存储2 …… 存储n
MIMD多指令流多数据流计算机
技术
•应用专门的机制可靠地处理并发控制和分
布系统问题
•提出基于模型的系统结构和设计方法
•明确提出软件体系结构的设计思想
什么是软件体系结构
• 软件体系结构定义了软件局部和
总体计算部件的构成,以及这些部件之 间的相互作用关系。
• 从整体看,软件体系结构是由结构和
功能各异、相互作用的部件集合,按照层 次构成的。它包括了系统基础构成单元、 它们之间的作用关系、在构成系统时它们 的合成方法以及对合成约束的描述。
软件的总体结构主要回答的问题
•软件的组成部分 •软件的层次关系 •模块的内部处理逻辑 •模块之间的界面
软件体系结构
软件体系结构包括两部分: (1)过程构件(模块)的层次结构 (2)数据构件
§4.1 软件体系结构
• 软件体系结构的有关概念 • 软件体系结构的层次性 • 软件体系结构的设计原理
软件体系结构的有关概念
模块视图
模块
模块
图
作
系
子系统 层
新模块分割 新模块分割
统 体
代码视图
运行实体
系 结
构
变化成运行实体
源代码
软件的层次结构模型
• 计算机网络的体系结构 • 计算机操作系统的体系结构
软件体系结构的层次结构模型
第6层:应用层 第5层:系统结构模式层层 第4层:资源和管理调度层 第3层:基础控制描述层 第2层:软化的硬件层 第1层:计算机硬件层
客户机/服务器体系结构
应用系统的组成:
•显示逻辑部分(表示层):实现与用户交互 •应用处理部分(功能层):进行具体运算和数据处理 •数据管理部分(数据层):对数据库中数据进行查询、
修改、更新等任务
表示层
功能层
三层明确分割, 逻辑上独立
数据层
应用分层
“胖” 客户机
瘦客户机和胖客户机
客户机
服务器
显 示 逻 辑
• 体系结构风格(Architecture Styles)
表示软件系统的一种特别的基本结构,以及相 关的构造方法
• 设计模式(Design Patterns)
构造型模式、结构型模式、行为型模式
• 框架(Framework)
另一种研究和构造软件体系结构的方法,更多 的是关于应用领域问题的已建立的系统结构。
普通部件及其支持的相互作用
序
部件类型
部件支持的相互作用类型
号
1 模块(Module)
过程调用、数据共享
2 对象(Object)
方法调用
3 过滤器(Filter)
数据流
4 过程(Process)
消息传递、远程调用、 通讯协议、同步
5 数据文件(Data file) 读写
6 数据库(Database) 模式、查询语言
软件体系结构的层次结构 •软件的构成 • 软件的物质基础 • 软件的结构基础 • 软件的层次结构模型 • 软件体系结构的层次结构模型 • 软件体系结构的体系
软件的构成
• 软件体系结构需要基础 • 软件体系结构需要层次 • 软件体系结构需要模式
软件的物质基础
软件设计的物质基础是计算 机硬件,当前的计算机硬件决定 了软件设计和实现的出发点,计 算机硬件的发展影响着软件体系 结构。
应用 处理 逻辑
表示
数据 管理 逻辑
数据库
客户机 表示
显 “瘦” 示 应用处理
客户机 逻
辑
应用 处理 逻辑
服务器
数据 管理 逻辑
数据库
三层C/S的基本硬件结构
客 表示层 户
表示层
表示层
机
功能层
服 功能层 务 器 数据层
功能层
数据层
服 务 器 (1)将数据层和
功能层放在 一台服务器上
数据层
(2)将数据层和 功能层放在
多处理机系统
控制 …… 控制
处理 …… 处理
MAP …… MAP
互连网络
存储 …… 存储
通道
……
通道
I/O
……
I/O
具有共享存储结构的多处理机
多处理机系统
控制 处理
…… 控制 …… 处理
存储
…… 存储
I/O
MAP
MAP
互连网络
具有分布存储结构的多处理机
分布计算系统
电信网络
交换机
网络
交换机
分布计算网络