ch06系统体系结构与程序设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQ L
{S yb ase IQ o n S o laris}
C o rp o rate D atab ase {S yb ase o n N T }
15
构件和人工制品的部署UML2.x
• 节点是构件或人工制品运行的位置,构件和人工制品部署于节点上 • 一个节点及其构件或人工制品一起,被称作一个部署单元或分布单元 • 部署的表示:
12
部署图
• Rational Rose中可以表示的节点类型包括两 种: – 处理器(Processor) – 设备(Device)
• 处理器:指那些本身具有计算能力且能执行 各种软件的节点,如服务器、工作站、PC等 。处理器中可以增加进程。
• 设备:指那些本身不具备处理能力的节点, 如打印机、扫描仪等。
锁等问题
7
分层体系结构
• 分层体系结构定义计算层次,每一层既是是客户机又是服务器, 每一层只能作为层次结构中下一层的客户机,也只能作为上一层 的服务器
• 三层体系结构:GUI客户机、业务逻辑、数据库服务器 • 与逻辑体系结构所建议的软件模块层次非常一致
客户机
应用服务器 业务逻辑
数据库服务器
8
数据库为中心的体系结构
• 对等体系结构 • 分层体系结构 • 数据库为中心的体系结构
对等体系结构(P2P)
• 任何进程或结点都可能既是客户机又是服务器的分布式处理系统 • 任何同位体都可以自由地和直接地与其它同位体通信,不需要中间服
务器 • 对于网络故障和单个同位体故障,易于快速恢复;易于扩展和适应 • 当总体系统吞吐量最大时,需要特殊考虑:网络流量最小化、潜在死
• 连接:表示两个节点之间的硬件连接,使用 实线表示,实线上可以添加连接的名称和构 造型。
13
部署图举例UML1.x
14
部署图举例UML2.x
In tern etB ro w ser
H TTP
W eb S erver
{A p ach e o n S o laris}
JD B C
JD B C
D ata W areh o u se
第六章 系统体系结构与程序设计
周瑞 信息与软件工程学院
本章内容
• 分布式物理体系结构 • 物理体系结构建模 • 多层逻辑体系结构及设计模式 • 逻辑体系结构建模 • 程序设计与复用原则 • 协作建模
2Baidu Nhomakorabea
什么是设计?
• 一旦技术细节考虑软件/硬件,分析模型就变成设计模型 – 体系结构设计是从系统的模块方面对系统进行描述 • 定义类和包的分层组织 • 将进程分配给计算设施 • 复用和构件管理 – 详细设计是对每个模块(用例)内部工作的描述 • 设计算法和数据结构 • 描述(实现用例的)协作模型
• 家庭电脑通常通 过Modem上网
• 根据以上的系统 需求,创建系统 的部署图
– 节点/结点(Node):人工制品和构件可以在上面部署的计算资源 – 人工制品(Artifact):由软件开发过程或系统的部署和运行使用
或生成的物理信息块的规格说明,如模型文件、源文件、脚本、二 进制可执行文件、数据库中的表、文档等 – 节点之间的连接(Connection):将节点通过通信路径连接起来定 义网络结构,命名或使用构造型
• 部署图
10
部署图
• Deployment diagram • 部署图描述了一个系统运行时
的硬件节点,以及在这些节点 上运行的软件构件,以及它们 如何彼此通信的静态视图 • 部署图描述系统的物理运行情 况 • 在每一个模型中仅包含一个部 署图
11
部署图
• 在一个部署图中,包含了两种基本的模型元素:
• 现代数据库是活动的–能被编程
– 存储过程:数据库程序,可被调用 – 触发器:特殊的存储过程,不能被显示调用,自动触发,用于实
现业务规则
中间件--交换协议 如JDBC、ODBC
用户界面 表示逻辑 应用功能(开发)
数据存取 完整性逻辑 应用功能
用户界面 表示逻辑 应用功能(开发)
9
6.2 物理体系结构建模
4
体系结构设计
• 体系结构设计具有物理和逻辑两个方面 • 物理体系结构
– 关注部署方案的选择以及系统的工作负荷在多处理器上的分布 – 将处理构件分配给计算机结点 – 使用UML部署图建模
• 逻辑体系结构
– 关注系统中相互作用的软件构件及子系统的结构和组织形式 – 使用UML包图和构件图建模
5
6.1 分布式物理体系结构
19
部署图案例分析
1.确定系统节点
20
部署图案例分析
2.添加节点连接
• 我们可以从上面的需求列表中获取下列的连接信息: (1)PC机上通过HTTP协议与Web服务器通信。 (2)Web服务器通过JDBC与数据库服务器连接。
21
部署图案例分析
3.细化部署图
22
部署图练习题
• 家庭电脑具有显 示器、鼠标、键 盘等外设
3
什么是体系结构?
软件体系结构定义了系统中相互作用的软件构件及子系统的 结构和组织形式。
体系结构为什么重要?
• 软件体系结构是人们对一个复杂系统的巨大复杂性进行思维控 制的关键
• 使系统具有适应性/可支持性的必要条件(包括:可维护性、 可理解性、可度量性)
• 至关重要:在详细的系统规格说明之前,选定体系结构模式和 原则
– 从一个构件或人工制品到一个结点的《deploy》依赖 – 或将构件或人工制品符号放在结点符号内部
dd Deployment Model Corporate Database {Oracle 11i}
«deploy» CustomerUSP
«deploy» InvoiceUSP
16
构件和人工制品的部署UML2.x
17
部署图创建
• 可以使用下列的步骤创建部署图:
① 根据系统的物理需求,确定系统的节点。 ② 根据节点之间的物理连接,将节点连接起来。 ③ 通过添加处理器的构件或人工制品、描述连接的类型等
细化对部署图的表示。
18
部署图案例分析
• 建模(UML1.x)一个简单的远程网络教学系统,该系统的 需求如下所示: ① 学生或教师可以在PC机上通过浏览器,如IE10等,查看 系统页面,与Web服务器通信。 ② Web服务器安装Web服务器软件,如Tomcat等,通过JDBC 与数据库服务器连接。 ③ 数据库服务器中安装SQL Server 2000,提供数据服务 功能。
{S yb ase IQ o n S o laris}
C o rp o rate D atab ase {S yb ase o n N T }
15
构件和人工制品的部署UML2.x
• 节点是构件或人工制品运行的位置,构件和人工制品部署于节点上 • 一个节点及其构件或人工制品一起,被称作一个部署单元或分布单元 • 部署的表示:
12
部署图
• Rational Rose中可以表示的节点类型包括两 种: – 处理器(Processor) – 设备(Device)
• 处理器:指那些本身具有计算能力且能执行 各种软件的节点,如服务器、工作站、PC等 。处理器中可以增加进程。
• 设备:指那些本身不具备处理能力的节点, 如打印机、扫描仪等。
锁等问题
7
分层体系结构
• 分层体系结构定义计算层次,每一层既是是客户机又是服务器, 每一层只能作为层次结构中下一层的客户机,也只能作为上一层 的服务器
• 三层体系结构:GUI客户机、业务逻辑、数据库服务器 • 与逻辑体系结构所建议的软件模块层次非常一致
客户机
应用服务器 业务逻辑
数据库服务器
8
数据库为中心的体系结构
• 对等体系结构 • 分层体系结构 • 数据库为中心的体系结构
对等体系结构(P2P)
• 任何进程或结点都可能既是客户机又是服务器的分布式处理系统 • 任何同位体都可以自由地和直接地与其它同位体通信,不需要中间服
务器 • 对于网络故障和单个同位体故障,易于快速恢复;易于扩展和适应 • 当总体系统吞吐量最大时,需要特殊考虑:网络流量最小化、潜在死
• 连接:表示两个节点之间的硬件连接,使用 实线表示,实线上可以添加连接的名称和构 造型。
13
部署图举例UML1.x
14
部署图举例UML2.x
In tern etB ro w ser
H TTP
W eb S erver
{A p ach e o n S o laris}
JD B C
JD B C
D ata W areh o u se
第六章 系统体系结构与程序设计
周瑞 信息与软件工程学院
本章内容
• 分布式物理体系结构 • 物理体系结构建模 • 多层逻辑体系结构及设计模式 • 逻辑体系结构建模 • 程序设计与复用原则 • 协作建模
2Baidu Nhomakorabea
什么是设计?
• 一旦技术细节考虑软件/硬件,分析模型就变成设计模型 – 体系结构设计是从系统的模块方面对系统进行描述 • 定义类和包的分层组织 • 将进程分配给计算设施 • 复用和构件管理 – 详细设计是对每个模块(用例)内部工作的描述 • 设计算法和数据结构 • 描述(实现用例的)协作模型
• 家庭电脑通常通 过Modem上网
• 根据以上的系统 需求,创建系统 的部署图
– 节点/结点(Node):人工制品和构件可以在上面部署的计算资源 – 人工制品(Artifact):由软件开发过程或系统的部署和运行使用
或生成的物理信息块的规格说明,如模型文件、源文件、脚本、二 进制可执行文件、数据库中的表、文档等 – 节点之间的连接(Connection):将节点通过通信路径连接起来定 义网络结构,命名或使用构造型
• 部署图
10
部署图
• Deployment diagram • 部署图描述了一个系统运行时
的硬件节点,以及在这些节点 上运行的软件构件,以及它们 如何彼此通信的静态视图 • 部署图描述系统的物理运行情 况 • 在每一个模型中仅包含一个部 署图
11
部署图
• 在一个部署图中,包含了两种基本的模型元素:
• 现代数据库是活动的–能被编程
– 存储过程:数据库程序,可被调用 – 触发器:特殊的存储过程,不能被显示调用,自动触发,用于实
现业务规则
中间件--交换协议 如JDBC、ODBC
用户界面 表示逻辑 应用功能(开发)
数据存取 完整性逻辑 应用功能
用户界面 表示逻辑 应用功能(开发)
9
6.2 物理体系结构建模
4
体系结构设计
• 体系结构设计具有物理和逻辑两个方面 • 物理体系结构
– 关注部署方案的选择以及系统的工作负荷在多处理器上的分布 – 将处理构件分配给计算机结点 – 使用UML部署图建模
• 逻辑体系结构
– 关注系统中相互作用的软件构件及子系统的结构和组织形式 – 使用UML包图和构件图建模
5
6.1 分布式物理体系结构
19
部署图案例分析
1.确定系统节点
20
部署图案例分析
2.添加节点连接
• 我们可以从上面的需求列表中获取下列的连接信息: (1)PC机上通过HTTP协议与Web服务器通信。 (2)Web服务器通过JDBC与数据库服务器连接。
21
部署图案例分析
3.细化部署图
22
部署图练习题
• 家庭电脑具有显 示器、鼠标、键 盘等外设
3
什么是体系结构?
软件体系结构定义了系统中相互作用的软件构件及子系统的 结构和组织形式。
体系结构为什么重要?
• 软件体系结构是人们对一个复杂系统的巨大复杂性进行思维控 制的关键
• 使系统具有适应性/可支持性的必要条件(包括:可维护性、 可理解性、可度量性)
• 至关重要:在详细的系统规格说明之前,选定体系结构模式和 原则
– 从一个构件或人工制品到一个结点的《deploy》依赖 – 或将构件或人工制品符号放在结点符号内部
dd Deployment Model Corporate Database {Oracle 11i}
«deploy» CustomerUSP
«deploy» InvoiceUSP
16
构件和人工制品的部署UML2.x
17
部署图创建
• 可以使用下列的步骤创建部署图:
① 根据系统的物理需求,确定系统的节点。 ② 根据节点之间的物理连接,将节点连接起来。 ③ 通过添加处理器的构件或人工制品、描述连接的类型等
细化对部署图的表示。
18
部署图案例分析
• 建模(UML1.x)一个简单的远程网络教学系统,该系统的 需求如下所示: ① 学生或教师可以在PC机上通过浏览器,如IE10等,查看 系统页面,与Web服务器通信。 ② Web服务器安装Web服务器软件,如Tomcat等,通过JDBC 与数据库服务器连接。 ③ 数据库服务器中安装SQL Server 2000,提供数据服务 功能。