一种改进的正交软件体系结构的设计与实现

一种改进的正交软件体系结构的设计与实现

ID:33591173

大小:275.11 KB

页数:7页

时间:2019-02-27

一种改进的正交软件体系结构的设计与实现_第1页
一种改进的正交软件体系结构的设计与实现_第2页
一种改进的正交软件体系结构的设计与实现_第3页
一种改进的正交软件体系结构的设计与实现_第4页
一种改进的正交软件体系结构的设计与实现_第5页
资源描述:

《一种改进的正交软件体系结构的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、http://www.paper.edu.cn一种改进的正交软件体系结构的设计与实现牛健北京邮电大学通信测试技术研发中心,北京(100876)E-mail:niujian586@gmail.com摘要:文章提出了一种改进的正交软件体系结构—基于服务总线的正交化体系结构的设计方法。采用在正交软件体系结构中引入层次消息总线结构的设计方法,较好的解决了软件正交化过程中所带来的性能优势与额外软件开销之间的矛盾。最后,以该体系结构在网络监测系统软件开发中的应用为例详细阐述了这种设计方法的应用。关键词:服务总线,正交软件,软件体系结构,网络监测系统1引言正交软件体系结构因具有

2、结构清晰、可扩展性强、可移植性强、重用粒度大等优点而得【1】到广泛应用。它由组织层和线索构件构成,它的基本思想是强调不同线索间的构件不相互调用,从而保证线索间的正交。然而正交软件体系结构自身也有无法克服的缺陷。软件体系结构和线索的正交化过程需要较大的工作量,且正交化之后的整个系统的冗余度增加。所以,在一个实际系统的设计、开发过程中,要根据正交化所需的工作量、系统冗余度与性能改进之间的关系,来确定是否进一步进行正交化。一方面,如果正交化的程度越高,则软件结构清晰度、程序易理解性和可扩展、可移植性就越好,但也增加了软件开销和系统冗余;另一方面,如果背离了正交化原则,正

3、交化程度降低,线索之间的相互调用导致耦合度增强,则减少了额外软件开销和系【2】统冗余,但同时会削弱软件的结构清晰度、可扩展性和可移植性。2层次消息总线原理计算机硬件体系结构和总线的概念为软件体系结构的研究提供了很好地启发。在统一的硬件体系结构框架下(即总线和接口规范),系统具有良好的可扩展性和可移植性。任何计算机厂商生产的配件,甚至是预先没有考虑到的配件,只要遵循标准的接口规范,都可以方便地集成到系统中。层次消息总线(HierarchyMessageBus,HMB)的体系结构是基于层次消息总线、支持【3】构件的的分布和并发,构件通过消息总线进行通信。消息总线是系统

4、的连接件,负责消息的分派、传递和过滤以及处理结果的返回。各个构件挂接在消息总线上,向总线登记消息,构件根据需要发出消息,由消息总线负责把该消息分派到系统中相应的构件,消息是构件之间通讯的唯一方式。3基于服务总线的正交化软件体系结构随着软件系统规模的扩大,系统越来越复杂,不可能所有系统都在某一种“纯”的结构上进行设计,混合结构的软件体系结构设计已屡见不鲜,如传统C/S与新兴的B/S的混合设计等。在保持正交软件体系结构主要架构特点的基础上,基于服务总线的正交软件体系结构根据层次消息总线原理,在容易产生较大开销的部分引入服务总线以及服务消息机制的方法。该体系结构由组织层

5、、线索的标准构件、服务管理总线和服务消息构成。组织层由一组具有相同抽象级别的构件构成。线索是一个相对独立的子系统,它由位于不同组织层中、完成不同功能的、构成服务关系的构件通过服务消息联系构成。值得注意的是:与正交软件结构不-1-http://www.paper.edu.cn同,同一线索中位于不同层的构件之间由服务消息连接,它们之间是服务与被服务的关系,上层构件要求下层构件提供服务,下层构件为上层构件提供服务。同一组织层中不同构件之间不存在服务关系。软件的正交化过程会不可避免的带来系统冗余,不同的线索上往往会产生很多功能相似的构件,有些构件的区别仅在于它们位于不同的

6、线索中而被不同的上层构件所调用。在基于服务总线的正交体系结构中,通过将冗余构件合并归一为单独构件挂在服务总线上,由该独立构件定义多个外部服务,这些服务可以根据需要为相应的线索并发调用。同一个线索中不同层的构件之间通过服务消息连接在一起,消息机制保证了调用构件之间的松耦合特性。不同线索之间虽然有可能共享一个构件实体,但该构件所提供服务的异构性依然可以保证线索之间的正交。这样就解决了正交化结构和额外开销及系统冗余之间的矛盾。图1构件实体服务关系模型根据上述原理,构造一个适合正交软件体系结构的服务总线就成了的关键。首先,明确服务类型。虽然不同的线索构件有不同的服务需求,

7、但不同的构件调用的服务类型基本是一致的,所以可将服务类型概括为两类:内部服务和公共服务。图1所示为构件服务关系模型。内部服务为软件内部构件之间的服务调用,内部服务又可以分为请求服务和报告服务;公共服务即为软件所调用的服务总线平台所提供的、可以为任何构件调用的服务,如服务初始化、消息服务、定时器服务等。【4】然后,定义基于服务总线的正交软件体系结构的实现框架和构件规约:标准构件、标准层间接口、服务管理总线和服务消息原语。(1)标准构件:是完成特定功能的软件模块,由两部分构成:接口部分和行为部分。接口部分包含构件间交互所用的服务接口;行为部分包含消息处理部分以及功能定

8、义。标准构

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。