- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件架构描述工具研究
软件架构描述工具研究
【摘 要】 软件架构描述工具(Software Architecture Description Tool)是指用来辅助计算机软件开发、维护和管理的软件。使用软件架构描述工具能节省软件生产开发时间和费用,提高软件生产率和质量。本文在借鉴架构开发环境及描述语言的基础上,进一步地对软件架构描述工具进行了研究。
【关键词】 软件 架构 描述 AcmeStudio
软件体系架构的描述目前是软件开发前期比较重要的工作,它对计算机软件的实现手段要求是相当高的。因此研究出一些软件工具来实现软件体系结构的描述和分析是十分必要的。在软件开发前期,使用这些软件转换工具,可以实现软件成果的自动转换。
1 架构描述工具的发展
根据软件体系结构的应用现状来看,目前大部分对架构的描述在一定程度上来说还停留在最基础的层面,很多对架构的描述还依赖于架构设计师的长期工作经验和设计中的技巧。在通常软件开发前期,对软件架构描述仍是采用文本或是图型的非形式化形式,有时候无法描述出各系统的组合关系,更加描述不出系统所期望的结构(如:各部分构件之间的结构等)。
以往使用的架构描述方法很难被程序员所接收,更难以理解架构的模拟和分析,为了保证软件架构描述的完整和一致性,开发出完善和适用的软件架构描述工具迫在眉睫,这样不仅能够帮助设计师们完成软件的分析和设计工作,还能保证软件设计的一致性和完整性。
因此,使用规范的、统一的、形式的软件架构描述工具对软件体系的整体分析和设计都是十分重要的。由于任何事物要达到统一、规范、形式的标准并不是一蹴而就的,对软件体系结构的设计和描述也不例外,都需要经历过非形式化的发展过程,在这个过程中,慢慢的提取出一些符号和标记,然后将它们统一标准,进而提炼出统一化的、规范化的、形式化的软件架构描述工具来实现软件体系结构的设计和描述的工作。
传统的软件架构描述工具有以下几种常用的描述方法:
1.1 图形表达工具
对软件架构的描述来说,这是一种使用广泛、操作灵活、简洁易懂的方法,主要采用的线段组合(有向的)和矩形框合成的图??表达工具。使用的方法是:矩形框内文字标注的是抽象构件名称,有向线段表示的是各种构件进行关联、控制和通信的连接件,矩形框表示的是各种抽象构件。
之前,图形表达工具在软件开发和设计过程中占据着主流的地位。但是由于在术语描述和表达方式上存在着一些不规范、不精确性,这样就导致传统的图形表达方式(主要以矩形框和线段为基础的表达方式)在各文档间和各系统间形成了矛盾和不一致的地方。然而,在软件架构描述工具并不普及的情况下,此工具在实际的软件设计和开发过程中被广使用,同时它也给软件设计师提供了大量的体系结构思想。
1.2 基于构件的描述语言
此语言将软件系统描述成是由特殊软件实体(即许多特定形式相互作用组成)的组织或系统。具有一定的动态性,可用来描述动态的软件架构。虽然这种设计和描述的方式是一种较好的方法,但他面向的系统元素仍旧是一些低层次的通信协议软件单元(以程序设计为基础),而且它描述和设计的系统一般都是些面向特殊功能的特定系统,这样总结起来,它的描述和设计方法仍不是十分适合的。
1.3 模块内连接语言
模块内连接语言是将多种传统的程序设计语言相连接所形成的。鉴于程序设计语言与模块内连接语言具有比较严格的语义,因此他们只能够描述出较大的软件单元。例如:Ada语言采用use实现包的作用,Pascal语言采用函数模块的交互功能等。
模块内连接方式对模块化的程序设计和分段式编译等程序描述和设计技术确实起到了很大的帮助。
但是由于这些描述和语言处理的软件设计开发过于依赖程序设计语言,因此对他们描述和设计程序语言元素更为抽象的和高层次的软件架构元素的能力起到了限制作用。
1.4 体系结构的描述语言
体系结构的描述语言是针对软件架构特点,根据传统的程序设计开发经验专门特定开发的。在吸取了传统的程序设计语言的语义和开发经验后,针对软件架构的特点,最终定义出适合于描述相关抽象元素的软件体系结构,它对描述体系结构的表示、分析、细化等过程提供了大量支持,因此,体系结构描述语言是当前软件设计和描述方法中最被看好的、使用最对的软件体系结构描述方法。
2 架构描述语言之间的比较
目前经常使用的体系架构描述语言有MetaH、Rapide、Unicon、Aesop、C2、SADL和Wright等,这些描述语言随都能描述软件体系结构,但却具有不同的特点:
(1)Aesop是有美国卡耐基梅隆大学的Garlan等人创建的一门体系结构描述语言,其目的是建立一个工具包,为特定领域的体系结构快速构建软件体系结构设计环境,支持许多体系结
原创力文档


文档评论(0)