面向对象的软件体系结构.ppt

上传人:牧羊曲112 文档编号:6034409 上传时间:2023-09-16 格式:PPT 页数:30 大小:290KB
返回 下载 相关 举报
面向对象的软件体系结构.ppt_第1页
第1页 / 共30页
面向对象的软件体系结构.ppt_第2页
第2页 / 共30页
面向对象的软件体系结构.ppt_第3页
第3页 / 共30页
面向对象的软件体系结构.ppt_第4页
第4页 / 共30页
面向对象的软件体系结构.ppt_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《面向对象的软件体系结构.ppt》由会员分享,可在线阅读,更多相关《面向对象的软件体系结构.ppt(30页珍藏版)》请在三一办公上搜索。

1、软件体系结构,面向对象的,高等教育出版社高等教育电子音像出版社,从一般意义上说,体系结构包括两个层面:硬件体系结构(Hardware Architecture)软件体系结构(Software Architecture),面向对象体系结构,硬件体系结构指系统的硬件组织模式;而软件体系结构则描述软件的组织模式。这里我们主要关注软件体系结构的问题。体系结构反映了系统的总体结构,是从全局上描述系统。,一、什么是体系结构,体系结构建模(architecture modeling)首先要建立系统的基本模型,并将该模型映射到软硬件单元上。主要讨论以UML为基础的体系结构建模。,面向对象体系结构,面向对象的体

2、系结构与传统的体系结构不同,它强调的是分布式对象的分配、部件及其界面、面向对象的通信方法。,三、什么是面向对象的体系结构?,二、体系结构建模,软件技术研究的主要方面:软件理论、编程和软件设计方法、软件工程环境、软件体系结构和中间件中,软件体系结构最重要。,四、建立软件体系结构的重要性,软件开发首先要解决高层问题的决策,再逐步细化。系统能否适应用户初期需求的模糊性和需求的变化,主要取决于软件体系结构。软件体系结构是软件质量的保证。,面向对象体系结构,1.用包图或构件图描述的静态结构2.基于配置图的软件体系结构,一个合理、健全、内在一致的体系结构,是建立高水平软件系统的基础,即软件系统的体系结构,

3、决定了软件的质量。,基于UML的体系结构设计,2.1 用包图描述系统的体系结构,一、包是系统的一种分组机制,包由关系密切的一组模型元素构成,包还可以由其他包构成(嵌套)。图中描述了体系结构的包图。,图6.1 UML包表达的体系结构单元,包图是维护和控制系统总体结构的重要建模工具。,二、应用包图要解决的问题,UML包表达的体系结构单元,如何组织包?应将概念或语义相近的模型元素(对象类)纳入一个包。即包具有高内聚性,包中的类具有功能相关性。如何确定包之间的关系?包之间的联系主要有两种:依赖和泛化。,2.1 用包图描述系统的体系结构,2.2 用配置图描述系统结构,配置图是一个架构,用来详细说明技术单

4、元和它们之间的链接。又可分为硬件环境的配置图和软件环境的配置图。,三、设计样式,三层C/S商业系统的配置图,医院诊疗系统的配置图(C/S),2.2 用配置图描述系统结构,并不是所有的系统都需要建立配置图,一个单机系统只需建立包图或构件图。配置图主要用于在网络环境下运行的分布式系统或嵌入式系统的建模。,项目与资源管理系统的配置图,2.2 用配置图描述系统结构,2.3 用构件图来描述系统软件环境的配置,构件图又称为组件图,组件(Component)是系统的物理可替换的单位,代表系统的一个物理组件及其联系,表达的是系统代码本身的结构。,.简单组件与扩充组件,2.组件的实例表示运行期间可执行的软件模块

5、。只有可执行的组件才有实例。,构件图实例,2.3 用构件图来描述系统软件环境的配置,基于模式的软件体系结构,2.设计模式(design pattern)由一些更基本的成分构成,是进行设计的“砖头”,可以用于同类的其他设计,也称为模型架构(model framework)。它用于细化软件系统的子系统或组件。,1.体系结构模式(architecrul pattern)体系结构模式表示软件系统的基本结构化组织图式。体系结构模式可以作为具体软件体系结构的模板。,一、什么是软件体系结构的通用模式,流程处理系统层状系统客户服务器系统三级和多级系统代理,二、常用的通用模式,三、体系结构图的标记法,通常采用一

6、组简单的工程式样标记来构造体系结构图(architecture diagram),这组标记是以UML的配置图为基础的。配置图由多个结点(node)、连接器(connector)构成。,配置图,流程处理系统(procedural processing system)以算法、数据结构为中心,按照-过程进行处理。,3.1 流程处理系统,系统的主要特色是:三个处理部件之间是单向连接的,可能安装在不同的计算机上。,常用于数据与图像处理、计算机模拟、数值解题等。,流程处理系统,优点:系统由各处理部件简单组合,易于扩充处理,部件易于复用。适合于在大规模并行计算机中(massively parallel co

7、mputer)运行,解决复杂的工程技术问题。限制:主要以批处理方式执行,不适合交互方式。不易管理大量的不同格式的输入、输出数据。,3.1 流程处理系统,层(layer)是一个部件或结点中的一组对象或函数,共同协作提供服务。如服务器中里层给外层提供服务。层状体系结构适用于应用服务器、数据库系统及操作系统等。,3.2 层状系统,层状系统,优点:1.按照功能层次划分,降低系统复杂度,系统设计更加清晰。2.内层与外界隔离,可有效控制内层的函数和服务。.新的及常用运算(查询)可在界面层中引入,由内层服务支持,可提高系统性能。.独立的层,可以作为构件或结点使用。限制:1.层数过多,系统性能下降。2.标准化

8、的层界面可能变得臃肿,使函数调用性能下降。,3.2 层状系统,ISO/OSI 开放系统互连参考模型,Open System Interconnection Reference Mode,NOS依靠在各网络层次上(OSI七层参考模型)的协议实现通信。,层状系统举例,3.2 层状系统,在c/s模式下,客户机负责用户输入和展示,服务器处理低层的功能。,3.3 客户机/服务器系统,优点:1.客户机与服务器分离,两者开发可同时进行。2.一个服务器可服务于多个客户机。,限制:1.客户机与服务器的通信依赖于网络,可能出现网络阻塞的瓶颈(bottleneck)现象。2.服务器及界面的改变将引起客户机的相应改变

9、。,C/S结构的数据库,客户(Client),服务器(Server),服务请求,结果,网络,典型的客户服务器(C/S)结构,数据库,DBMS,应用程序,一、如何解决客户服务器系统的限制?,.针对网络瓶颈问题,尽量减少客户机作远程调用,如把一组运算组合起来,在一个远程调用中处理。为了解决服务器的变动引起客户机的改变,采用“轻型客户机”(thin cilent)。如Web浏览器/服务器模式,简称B/S(Browser/Server)模式。它无须在不同的客户机上安装不同的客户应用程序,而只需安装通用的浏览器软件。简化了系统的开发和维护。系统的开发者无须再为不同级别的用户设计开发不同的客户应用程序了,

10、只需把所有的功能都实现在Web服务器上,并就不同的功能为各个组别的用户设置权限就可以了。,B/S结构的数据库,浏览器,WEB服务器,服务请求,最终结果,网络,图6.15 基于Web的浏览器/服务器(B/S)结构,数据库服务器,数据请求,结果集,数据访问引擎,二、如何提高服务器的效率.把部分工作转移到客户机中执行,如查证输入数据的正确性,可在客户端进行。.将数据库的处理事项组合起来执行,可提高数据库的吞吐量(throughput)。,3.4 三级和多级系统,服务器,客户机,第一级是数据库管理结点(database management node)。第二级或中间级是“商业逻辑结点”(busines

11、s logic node),是指具体应用中实施的 程序逻辑和法则。第三级是用户界面级,强调高效、方便易用的用户界面。,三级体系结构,可由三级系统的概念推广到多级系统(multi-tier system),即由多个C/S对组成。,四级体系结构,含商业逻辑对象,3.4 三级和多级系统,多级系统的特点,优点:.系统功能分布在多级或服务器上,系统易于维护和扩充。.进行分级控制,可对不同级的客户机提供不同水平的服务。.可方便地将中间级与企业的其他系统连接起来。.多级系统可以对同时使用系统的客户机提供服务。,限制:.各对客户机与服务器之间有多种不同的通信协议,要求熟悉不同协议的专业人员。.数据行经的多级结点,分布在不同的计算机系统中,因此系统的整体运作困难。,从部件的角度看,代理(agent)是服务器。从体系结构的角度看,代理是模拟企业工作流程中的行动者。在代理的体系结构中,需要一个控制器。,3.5 代理,一个有代理的体系结构,代理可以是一个结点,也可是一多级系统。,优点:对复杂任务的处理,代理体系结构具有高度灵活性,各组功能分布在不同的代理,系统易修改、扩充、伸缩性强,便于与企业级水平的软件整合。系统可采用渐进方式建立。限制:使用公共消息总线,需解决系统安全性问题。要求有统一的通信协议。系统性能调试困难。,有代理的体系结构描述,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号