期刊鉴别 论文检测 免费论文 特惠期刊 学术答疑 发表流程

ABC:基于体系结构、面向构件的软件开发方法(上)(4)

时间:2016-03-23 11:26 文章来源:http://www.lunwenbuluo.com 作者:梅宏,陈锋,冯耀东, 点击次数:


  在上述基本元素的基础上,ABC方法定义了自己的建模语言一一ABC/ADL作为描述软件体系结构的工具,ADL是SA研究的重点之一.研究者从不同的角度出发,针对不同的目标,提出了多种通用的或专用的ADL,例如Wright[18],Rapide[19],Unicon[9]等等。ABC/ADL设计的目标是在现有的SA方法研究的基础上,更好地为系统的开发提供支持.因此,ABC/ADL定义了一个可扩展的开放语言框架,用户可以根据自己的需要来定义体系结构风格、构件和连接子类型等,更好地描述特定领域的应用系统.限于篇幅,这里不展开对ABC/ADL的详细介绍,其具体应用见第2节。
  ABC/ADL的语言设施包括3个层次:元语言层为用户提供了定义体系结构风格和构件模板、连接子模板等方面的能力;定义层提供了用户用于声明构造系统所需类型的语言设施,这些类型声明必须基于元语言层中已定义的模板;实例层则提供了用户用来声明并连接实例的语言设施,这些实例必须是从定义层中的类型定义实例化而来的.通过区分这3个层次,不仅提供了一个易于扩展的语言框架,而且有利于对不同层次的语言设施进行复用.显然,抽象层次越高,可复用性也越高.而且,这还有助于在不同层次上处理系统的语义和约束,例如,类型定义中的连接约束和实例的多对多关系等。
  1.3转换规则、支持工具和构件平台
  ABC方法的一个主要目标是缩短SA设计到实现的距离,提高基于构件的软件开发的效率.为此ABC方法定义了从ADL描述到UML的转换规则,提供了根据SA模型自动组装基于构件运行平台的应用系统的工具,并开发了自己的构件平台以提供更好的运行支持。
  面向对象的设计和语言在现行软件开发中占据主导地位,即使是分布式构件系统,它最终还是要基于面向对象的语言来实现的.因此,如何从SA模型转换到OO设计或实现,是缩短SA和具体实现之间距离的关键.由于SA和OO描述的侧重点不同,两者之间并没有一个等价的映射方法[20],ABC方法在两个阶段上建立了从SA到OO设计语言(现在主要是针对UML)的转换规则,为构件开发和构件组装提供了支持,提高了系统开发的可追踪性。
  首先,在根据ADL规约制作原子构件(不包含内部结构的构件)时,将ADL规约映射成构件的OOD框架,用户在这个框架的基础上进一步精化设计,得到构件的详细OOD模型并具体实现.其次,在组装目标系统或制作复合构件时,将已有构件的OOD模型合成为目标系统的基本OOD模型,作为进一步工作的基础.两个阶段的映射规则分别为:
  (1)从构件规约到UML框架。
  这里需要注意的是,将接入点映射到抽象类上,这个类在开发构件时并没有真正实现;而是在组装系统的时候,由工具根据构件间的关联关系和底层平台的规范,自动生成调用远端构件的代码,真正实现这个类,并将构件连接在一起。
  (2)从SA模型合成UML模型。
  按照SA模型合成系统的OOD模型就是将构件和构件之间(或者如果构件之间使用复杂连接子的话,则是构件和复杂连接子之间)的关联映射到类(调用者的接入点类和被调用者实现接口的类)之间的关联(association)关系.进一步地,在关联的基础上可以生成基本的系统协作图(collaborationdiagram)。
  工具支持是ABC方法付诸实用的基础.工具对用户屏蔽了ABC方法的技术细节,例如ABC/ADL语言的详细语法、ABC/ADL到UML的转换等,一方面减轻了用户学习和使用ABC方法的负担,另一方面也可以避免用户因疏忽而造成的错误,保证了开发过程的质量.同时,自动组装系统的工作必须由工具来完成.我们已经实现了ABC方法的支持工具ABCTool的原型,其主要功能包括:(1)图形化的SA建模:用户可以用直观的图形建模方式生成系统的类型图和配置图;(2)构件库管理:提供用户管理构件库中可复用构件的能力;(3)SA模型到OOD设计模型的映射,即把应用系统的体系结构模型映射为OOD的设计模型;(4)SA模型到代码的映射,即把应用系统的体系结构模型直接转换成实现代码的框架;(5)新构件的开发,即支持用户根据自己的需要开发新的构件;(6)系统语法和语义的一致性检查,保证组装系统的正确性;(7)构件自动组装,生成可运行于中间件支撑平台的应用系统。

  •   论文部落提供核心期刊、国家级期刊、省级期刊、SCI期刊和EI期刊等咨询服务。
  •   论文部落拥有一支经验丰富、高端专业的编辑团队,可帮助您指导各领域学术文章,您只需提出详细的论文写作要求和相关资料。
  •  
  •   论文投稿客服QQ: 论文投稿2863358778 论文投稿2316118108
  •  
  •   论文投稿电话:15380085870
  •  
  •   论文投稿邮箱:lunwenbuluo@126.com

联系方式

  • 论文投稿客服QQ: 论文投稿2863358778
  • 论文投稿客服QQ: 论文投稿2316118108
  • 论文投稿电话:15380085870
  • 论文投稿邮箱:lunwenbuluo@126.com

热门排行

 
QQ在线咨询
咨询热线:
15380085870
微信号咨询:
lunwenbuluoli