UML第12章控制驱动部分的设计课件.ppt
《UML第12章控制驱动部分的设计课件.ppt》由会员分享,可在线阅读,更多相关《UML第12章控制驱动部分的设计课件.ppt(62页珍藏版)》请在三一办公上搜索。
1、第12章 控制驱动部分的设计,12.1 什么是控制驱动部分 12.2 相关技术问题 12.3 如何设计控制驱动部分,第12章 控制驱动部分的设计 12.1 什么是控制驱动,控制驱动部分是OOD模型的一个外围组成部分。该部分由系统中全部主动类构成。这些主动类描述了整个系统中所有主动对象,每个主动对象是系统中一个控制流动驱动者。,控制驱动部分是OOD模型的一个外围组成部分。该部分由系统中全,12.1 什么是控制驱动部分,控制流(control flow)是一个在处理机上顺序执行的动作序列。在目前的实现技术中,一个控制流就是一个进程或者一个线程,在UML的文献中称之为控制流。,12.1 什么是控制驱
2、动部分 控制流(control fl,在OOD中,把系统中所有的主动对象表示清楚,就抓住了系统中每个控制流的源头,就可以把并发执行的所有的控制流梳理出清晰的脉络,所有的主动对象都用主动类描述,所有的主动类构成OOD模型的控制驱动部分。,在OOD中,把系统中所有的主动对象表示清楚,就抓住了系统中每,12.2 相关技术问题,本节将从系统总体方案、软件体系结构、分布式系统的体系结构风格以及系统的并发性这几方面探讨控制驱动部分的设计中的技术问题 。,12.2 相关技术问题 本节将从系统总体方案、软件体系结构,12.2.1 系统总体方案,要开发一个较大的计算机应用系统,首先要制定一个系统总体方案。系统总
3、体方案的内容包括: (1)项目的背景、目标与意义。 (2)系统的应用范围。 (3)对需求的简要描述,采用的主要技术。 (4)使用的硬件设备、网络设施和商品软件。,12.2.1 系统总体方案 要开发一个较大的计算机应用系统,(5)选择的软件体结构风格。 (6)规划中的网络拓扑结构。 (7)子系统划分。 (8)系统分布方案。 (9)经费预算、工期估计、风险分析。 (10)售后服务措施,对用户的培训计划。,(5)选择的软件体结构风格。,对于OOD模型中控制驱动部分的设计而言,总体方案中所决定的下述问题是它的基本实现条件: (1)计算机硬件。 (2)操作系统。,对于OOD模型中控制驱动部分的设计而言,
4、总体方案中所决定的下,(3)软件体系结构。 (4)网络方案。 (5)编程语言。 (6)其他商品软件。,(3)软件体系结构。,12.2.2 软件体系结构,软件体系结构是对系统的组成与组织结构较为宏观的描述,它按照功能部件和部件之间的联系与约束来定义系统,着重于软件系统自身的整体结构和部件间的交互。,12.2.2 软件体系结构 软件体系结构是对系统的组成与组,部件和连接器被公认为体系结构的两大类构成部分。部件是软件系统的组成单元,在系统框架中起结构块的作用,是软件功能设计和实现的承载体。连接器是建立部件和部件之间连接的部件。,部件和连接器被公认为体系结构的两大类构成部分。部件是软件系统,以下是几种
5、典型的软件体系结构风格: (1)管道与过滤器风格 (2)客户-服务器风格 (3)面向对象风格 (4)隐式调用风格 (5)仓库风格,以下是几种典型的软件体系结构风格:,(6)进程控制风格 (7)解释器模型 (8)黑板风格 (9)层次风格 (10)数据抽象风格,(6)进程控制风格,12.2.3 分布式系统的体系结构风格,主机+仿真终端体系结构。以一台计算机为主机,其他计算机只作为它的远程仿真终端。从应用系统的角度看,其软件体系结构和集中式的系统没有本质性差别,因为其功能和数据都集中在主机上,其他计算机只相当于一些终端设备而已。,12.2.3 分布式系统的体系结构风格 主机+仿真终端体系,文件共享体
6、系结构。在这种体系结构中,系统功能分布到网络的各个节点上,数据存放在一个被称作文件服务器的主机上。在某些系统中也可以把数据分布到各个节点上。,文件共享体系结构。在这种体系结构中,系统功能分布到网络的各个,客户-服务器体系结构。这种体系结构把分布在不同节点上的系统组成部分之间的关系处理为请求服务和提供服务的关系,提供服务的计算机称作服务器,请求服务的计算机称作客户机。客户-服务器体系结构衍出生了一些特点各异的变种:,客户-服务器体系结构。这种体系结构把分布在不同节点上的系统组,(1)两层客户-服务器体系结构 这是早期最典型的客户-服务器体系结构。其特点是明显地区分客户机和服务器,把提供给多个节点
7、共享的公共服务集中在一台服务器上,客户机则只配备与本地业务处理有关的功能和数据。客户机和服务器构成两个界限分明的层次,这就是两层客户-服务器结构。,(1)两层客户-服务器体系结构,(2)对等式客户-服务器体系结构 这种体系结构观点把客户机和服务器看成是相对的。根据实际需要,系统中的每一台计算机既可以作为客户机,又可以作为服务器,即每一台计算机既可以请求其他节点提供服务,又可以向其他节点提供服务。实际上,这是一种更具一般性的客户-服务器体系结构形式,其他形式都可以看作这种形式的受限的特例。,(2)对等式客户-服务器体系结构,(3)三层客户-服务器体系结构 这种体系结构是在两层客户-服务器体系结构
8、基础上改进和发展的结果。其中包括数据服务器、应用服务器和客户机三个层次。数据服务器存储和管理被整个系统共享的数据,提供对这些数据进行查询、更新、一致性维护等操作的服务。,(3)三层客户-服务器体系结构,(4)瘦客户-服务器体系结构 这种体系结构的思想是把分布到客户机上的功能尽可能减少。其目的是使客户机上软件的安装、维护和升级变得很容易。在一个分布区域较广的大型系统中,末端的客户机数量最多,分布范围也最广,往往延伸到维护力量薄弱的边远地区。,(4)瘦客户-服务器体系结构,(5)浏览器-服务器体系结构 瘦客户-服务器的思想发展到极端,应用系统分布到客户机上的软件成分就只剩下了一个浏览器。用户在浏览
9、器上进行人机交互操作,浏览器把用户命令转换为对服务器的请求,并把得到的处理结果向用户显示。,(5)浏览器-服务器体系结构,12.2.4 系统的并发性,在本小节关于并发系统的讨论中将使用“任务”、“进程”、“线程”、“控制流”、“主动对象”等一系列含义相近的术语。按以下的约定来使用这些术语: (1)在OOA和OOD中用主动对象的一个主动服务来描述一个任务,用主动类来描述一类主动对象。,12.2.4 系统的并发性在本小节关于并发系统的讨论中将使,(2)在从用户需求的角度或者在较高的抽象层次上讨论和认识系统的并发性时,使用任务的概念,以明确系统中客观上要求有哪些任务并发执行。 (3)从逻辑上看问题,
10、忽略实现细节,可以说OOD模型中的一个主动对象的主动服务描述了一个控制流。,(2)在从用户需求的角度或者在较高的抽象层次上讨论和认识系,(4)在实现阶段,主动对象、主动类的概念仍然存在,但是已被实现为程序代码中的对象和类,它们的每个主动服务将被具体地实现为进程或者线程。 (5)把“任务”和“控制流”作为讨论问题、解释概念或陈述设计策略时使用的词汇,而把“主动对象”、“主动类”、“进程”作为模型或程序中的元素或技术术语。,(4)在实现阶段,主动对象、主动类的概念仍然存在,但是已被,顺序程序和并发程序: (1)顺序程序中只有一件事在进行处理,即使程序中包括多项工作,也不会在一个时间段同时做两项(或
11、以上)工作。程序中可以有分支、循环、子程序调用等各种复杂情况,但是一切都按确定的逻辑进行。,顺序程序和并发程序:,(2)如果说系统要在同一段时间内执行多个任务,而这些任务之间又没有确定的时间关系,这种系统就是并发系统。描述并发系统的程序叫做并发程序。并发程序要执行的多个任务在时间上没有确定的逻辑关系,但是又相互影响。,(2)如果说系统要在同一段时间内执行多个任务,而这些任务,进程和线程: (1)进程是W.Dijkstra、C. A .R .Hoare和P.B.Hansen等人在20世纪60年代中期以后的一系列文章中提出并逐渐完善的,它的全称是顺序进程。采用进程的基本思想是:把一个并发程序分解成
12、若干能够顺序执行的程序单位。每一个这样的程序单位的一次执行就叫做一个顺序进程。,进程和线程:,(2)线程在进程之后出现,它可以看作是并发程序设计技术的进一步发展,然而更重要的原因是由于并行计算技术的需要。进程既是处理机资源的分配单位又是其他资源的分配单位;而线程只是处理机资源的分配单位。一个进程可以包含一个或者多个线程。,(2)线程在进程之后出现,它可以看作是并发程序设计技术的,(3)从应用的角度看,进程的概念适合于解决系统固有的并发性问题。 (4)从编程技术来看,线程概念的出现还有更重要的逻辑上的理由,那就是:一个进程的数据空间被该进程内的多个线程共享,使这些线程可以方便地交换信息。,(3)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- UML 12 控制 驱动 部分 设计 课件
链接地址:https://www.31ppt.com/p-1289428.html