- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于UML描述软件体系结构探究
基于UML描述软件体系结构探究摘要:软件体系结构是软件开发过程中的关键制品,体现了软件设计的早期决策,决定了软件的质量属性,
也制约了软件开发项目的组织结构。本文分析了软件体系结构的关键概念、组成及其描述方面的研究工作,根据统一建模语言(UML)的扩展机制,将软件体系结构与当前主流的面向对象软件开发方法相结合,并根据软件体系结构的核心模型,形式化的描述了软件体系机构。
关键字:软件体系结构描述工具统一建模语言核心模型
中图分类号:TP31文献标识码:A
1引言
软件体系结构以部件和连接作为基本的建模实体,对部件和连接提供了多重接口,可以描述部件间丰富的交互语义,较好地支持软件系统一级的重用及软件的某些特性分析。当前软件体系结构的描述方法主要用ADL等,这些方法不仅难以被开发人员理解,并且目前没有应用于工业界。如果将软件体系结构与面向对象的开发方法统一起来,则一方面可以在软件开发的设计阶段分析软件的某些特性,重用软件的整个组织结构,另一方面又可以利用面向对象方法的支持工具。统一建模语言(UML)是当前主流的面向对象软件开发方法,它引入了形式化定义(对象约束语言OCL)有利于描述软件体系结构,同时又具有很好的扩充机制、众多的工具支持、与具体程序设计语言和开发过程无关等特点。本文选择UML作为描述软件体系结构的基础,利用UML的半形式化特性(OCL)和嵌入的扩充机制描述了软件体系结构核心模型。
2UML元建模及其可扩展机制
2.1UML元建模简介
通常公认的元建模的概念框架基于一个四层的体系结构:元元模型、元模型、模型、用户对象。元元建模层构成了元建模体系结构的基础结构,主要责任是定义描述元模型的语言。在元元模型层上的元元对象的例子有:元类、元属性和元操作。一个元模型是一个元元模型的实例。元模型层的主要责任是定义描述模型的语言,比定义它的元元模型更加精细。在元模型层上的元对象的例子如:类、属性、操作和构件。一个模型是一个元模型的实例,主要责任是定义描述信息论域的语言。用户对象是一个模型的实例,主要责任是描述一个特定的信息论域。
2.2UML的扩展机制
UML提供的扩展机制允许建模者在不改变基本建模语言的前提下根据实际需求做相应的扩展。UML提供构造型、标记值和约束三种扩展机制来增加模型中的新构造块、创建新特性和描述新语义:
(1)构造型:构造型可以为UML增加新事物,它是在一个已定义完好的模型元素基础上构造出一种新的模型元素。
(2)标记值:标记值扩展UML构造块的特性或标记其他模型元素,为UML事物增加新特性。标记值可以用来存储元素的任意信息,也可以用来存储有关构造型模型元素的信息。
(3)约束:用于加入新的规则或修改已经存在的规则,即利用一个表达式把约束信息应用于元素上。约束是用文字表达式来表示元素、依赖关系、注释上的语义限制。
3软件体系结构的描述方法
在目前通用的软件开发方法中,其描述通常是用非形式化的图和文本,难以被开发人员理解,更不能用来分析其一致性和完整性等特性。针对这些问题,一些工业界和学术界的研究者提出了体系结构的形式化描述:体系结构描述语言(ADL),用来表示和分析体系结构的设计,同时提供了显示、分析、模拟软件体系结构的相应工具,主要的体系结构描述语言有Aesop,Meta-H,C2等,尽管它们都描述软件体系结构,但这些ADL强调了体系结构不同的侧面,对体系结构的研究起到了重要作用,但也有负面的影响,每一种ADL都以独立的形式存在,描述语法不同且互不兼容,同时又有许多共同的特征,这使设计人员很难选择一种合适的ADL,若设计特定领域的软件体系结构又需要从头开始描述,因此,下面我们将体系结构的共同特征提取出来作为核心模型,该模型可以作为各种ADL映射到UML的共同基础,若要映射某一具体的ADL,只需增加其相关的约束即可。
4软件体系结构的核心模型
综合软件体系结构概念及风格分析,体系结构的核心模型由5种元素组成:构件、连接、配置、端口和角色。其中部件、连接和配置是最基本的元素。
(1)构件是具有某种功能可重用的软件模板单元,表示了系统中主要的计算元素和数据存储。构件有两种:复合构件和原子构件。
(2)连接表示了构件之间的交互,简单的连接如:pipes,procedure call,event broadcast等,更为复杂的交互如:数据库和应用之间的SQL连接。
(3)配置表示了构件和连接的拓扑逻辑和约束。
(4)构件的接口由一组端口组成,每个端口表示了构件和外部环境的交互点。通过不同的端口类型,一个构件可以提供多重接口。连接作为建模软件体系结构的主要实体,同样也有接口,连接的接口由一组角色组
原创力文档


文档评论(0)