- 1、本文档共73页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
流行的软件体系结构
概述
随着计算机硬件技术和网络通信技术的发展,网络计算经历了从集中式计算到分布式计算的重大演变,新的分布式网络计算要求软件实现跨空间、跨时间、跨设备、跨用户的共享,导致软件在规模、复杂度、功能上的极大增长,迫使软件向异构协同工作、各层次上集成、可反复重用的工业化道路上前进。
新的软件开发模式必须支持分布式计算、浏览器/服务器结构、模块化和构件化集成,可用不同的标准构件组装而成。
概述
提供一种手段,使应用软件可用预先编好的、功能明确的产品部件定制而成,并可用不同版本的部件实现应用的扩展和更新。
利用模块化方法,将复杂的难以维护的系统分解为互相独立、协同工作的部件,并努力使这些部件可反复重用。
突破时间、空间及不同硬件设备的限制,利用客户和软件之间统一的接口实现跨平台的互操作。
构件技术
为满足上述要求,构件技术应运而生
构件技术被认为是未来几年软件发展的基础。
目标是达到需求、体系结构、设计、实现的重用,并使系统具有更好的适应性、伸缩性和可维护性。
借鉴汽车制造业和建筑业的思想,采用流水线生产方式的预制件装配方式
预制件要求并不苛刻,只要能重用就可以
构件技术
通过使用购买或定制构件这一新的解决方案可以有效地提高产品的质量,加快产品开发速度,这种开发技术称为“基于构件的开发技术”
软件复用
软件产品的复用
软件过程的复用:基于构件的复用
基于构件的复用
构件的开发
构件的管理
基于构件组装的系统开发
构件必须遵循某一特定的构建模型,并且针对某一特定的构件平台
抽象
面向对象技术已达到类级重用(代码重用),以类为封装的单位。
重用粒度太小,不足以解决异构互操作和效率更高的重用。
构件更推广了对象封装的内涵,对一组类的组合进行封装(也可以不包括类,比如包括传统的过程),并代表完成一个或多个功能的特定服务,也为用户提供了多个接口。
在不同层次上,构件均可以将底层的多个逻辑组合成高层次上的粒度更大的新构件,甚至直接封装到一个系统,使模块的重用从代码级、对象级、架构级到系统级都可能实现。
构件的属性
是可独立配置的单元
构件必须具有原子性,本身不可拆分;
必须与其所部属的环境以及其他构件很好地分离
必须很好地封装自己的构成部件
可以作为第三方的组装单元被复合使用
不但具备良好的内聚性,还必须具有清晰的规格说明来描述其依赖条件和所提供的服务。这样,第三方厂商能够将一个构件与其他构件组装在一起。即构件只通过定义良好的接口与外部环境交互。
没有外部可见的状态
不应当与自身备份有所区别,在任何环境中,最多仅有特定构件的一个备份
构件技术
分布式构件技术
CORBA规范
Sun的Java平台
Microsoft的.NET平台
分布式构件体系结构
J2EE
.NET
提供事物完整性、消息传递、目录服务、安全、异常处理、远程访问等。
基于CORBA的分布式构件技术
OMG(对象管理学会)是一个由业界760多个公司组成的工业协会,目的是为了共同制定一个大家都遵循的分布式对象计算标准,将对象和分布式系统技术集成为一个可相互操作的统一结构,既支持现有的平台也将支持未来的平台集成。
OMA(对象管理体系),基础是ORB(对象请求中介)标准,不仅提供了CORBA基础架构说明,还提供了一系列服务,如安全、交易和消息传递等。
针对ORB,OMG制定了CORBA规范。
OMA对象管理体系结构
CORBA服务
提供适用于实现对象的一些基本功能,如对象的命名服务、对象交易服务(对象并行、对象存储、对象产生和消亡、事件消息响应以及事务交易的一致性保证)和持久状态服务(Persistent State Service, PPS)等。
是发布对象系统必不可少的公共服务,是底层支持的必需服务。
CORBA设备
水平CORBA设备:在各种工业部门中针对所有类型CORBA应用的元素
包括用户接口和系统管理设备
针对大多数类型的应用,不考虑设备被使用的领域
垂直CORBA设备:只在特殊垂直市场和工业中针对某些应用的功能,也称领域CORBA设备
包括某些特殊领域的应用,比如在会计业中的总账和分期偿付,制造业的自动化店层控制设备。
应用对象
位于OMA层次结构的最顶层,可以是分布系统中的任何成分,如程序、进程、类实例。
通常会根据独立的应用被定制,并不需要标准化,所以这一类的对象并不受OMG标准的影响。
必须符合OMA的标准接口。
OMA中的对象作为服务者被动态地引用,并且以唯一的标识提供服务。
对象间的交互通过ORB实现
对象请求代理
是OMA的核心部分
当应用对象在分布对象系统中请求服务时,就是以系统客户的身份,通过ORB与系统中其他对象完成交互
OMG进一步给出了OMA对象管理体系结构的ORB开放标准
CORBA体系结构
CORBA规范包括ORB、接口定义语
文档评论(0)