教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 互联网资料 >

全国计算机软考软件设计师考前练习及答案(4)

来源:网络收集 时间:2026-09-09
导读: 上学吧(www.shangxueba.com) ◇ 组合能力指的是ADL使得其描述的每一系统元素都有其自己的局部结构,这种描述 局部结构的特点使得ADL支持软件系统的动态变化组合; ◇ 异构能力指的是ADL允许多个不同的体系结构描

上学吧(www.shangxueba.com)

◇ 组合能力指的是ADL使得其描述的每一系统元素都有其自己的局部结构,这种描述

局部结构的特点使得ADL支持软件系统的动态变化组合;

◇ 异构能力指的是ADL允许多个不同的体系结构描述关联存在;

◇ 分析和推理能力指的是ADL允许对其描述的体系结构进行多种不同的性能和功能上的多种推理分析。

根据这些特点,我们可以将下面这样的语言排除在ADL之外:高层设计符号语言、MIL、编程语言、面向对象的建模符号、形式化说明语言。ADL与需求语言的区别在于后者描述的是问题空间,而前者则扎根于解空间中。ADL与建模语言的区别在于后者对整体行为的关注要大于对部分的关注,而ADL集中在构件的表示上。ADL与传统的程序设计语言的构成元素即有许多相同和相似之处,又各自有着很大的不同。

2、ADL的构成要素

前面,我们提到了体系结构描述的基本构成要素有构件、连接件和体系结构配置,软件体系结构的核心模型。 (1)构件

构件是一个计算单元或数据存储。也就是说,构件是计算与状态存在的场所。在体系结构中,一个构件可能小到只有一个过程或大到整个应用程序。它可以要求自己的数据与/或执行空间,也可以与其它构件共享这些空间。作为软件体系结构构造块的构件,其自身也包含了多种属性,如接口、类型、语义、约束、进化和非功能属性等。

接口是构件与外部世界的一组交互点。与面向对象方法中的类说明相同,ADL中的构件接口说明了构件提供的那些服务(消息、操作、变量)。为了能够充分地推断构件及包含它的体系结构,ADL提供了能够说明构件需要的工具。这样,接口就定义了构件能够提出的计算委托及其用途上的约束。 构件作为一个封装的实体,只能通过其接口与外部环境交互,构件的接口由一组端口组成,每个端口表示了构件和外部环境的交互点。通过不同的端口类型,一个构件可以提供多重接口。一个端口可以非常简单,如过程调用。也可以表示更为复杂的界面,如必须以某种顺序调用的一组过程调用。

构件类型是实现构件重用的手段。构件类型保证了构件能够在体系结构描述中多次实例化,并且每个实例可以对应于构件的不同实现。抽象构件类型也可以参数化,进一步促进重用。现有的ADL都将构件类型与实例区分开来。

由于基于体系结构开发的系统大都是大型、长时间运行的系统,因而系统的进化能力显得格外重要。构件的进化能力是系统进化的基础。ADL是通过构件的子类型及其特性的细化来支持进化过程的。目前,只有少数几种ADL部分地支持进化,对进化的支持程度通常依赖于所选择的程序设计语言。其他ADL将构件模型看作是静态的。ADL语言大多是利用语言的子类型来实现对进化支持的。利用面向对象方法,从其它类型派生出它的接口类型,形成结构子类型。

(2)连接件

连接件是用来建立构件间的交互以及支配这些交互规则的体系结构构造模块。与构件不同,连接件可以不与实现系统中的编译单元对应。它们可能以兼容消息路由设备实现(如C2),也可以以共享变量、表入口、缓冲区、对连接器的指令、动态数据结构、内嵌在代码中的过程调用序列、初始化参数、客户服务协议、管道、数据库、应用程序之间的SQL语句等形式出现。大多数ADL将连接件作为第一类实体,也有的ADL则不将连接件作为第一类实体的。

连接件作为建模软件体系结构的主要实体,同样也有接口。连接件的接口由一组角色组成,连接件的每一个角色定义了该连接件表示的交互参与者,二元连接有两个角色,如消息传递连接件的角色是发送者和接收者。有的连接件有多于两个的角色,如事件广播有一个事件发布者角色和任意多个事件接受者角色。

第 16 页,共 64页

上学吧为您提供“软件设计师”资料下载:http://www.shangxueba.com/share/e15.html

上学吧(www.shangxueba.com)

显然,连接件的接口是一组它与所连接构件之间的交互点。为了保证体系结构中的构件

连接以及它们之间的通信正确,连接件应该导出所期待的服务作为它的接口。它能够推导出正交软件体系结构线索的形成情况。体系结构配置中要求构件端口与连接件角色的显式连接。

体系结构级的通讯需要用复杂协议来表达。为了抽象这些协议并使之能够重用,ADL应该将连接件构造为类型。构造连接件烈性可以将作为用通信协议定义的类型系统化并独立于实现,或者作为内嵌的、基于它们的实现机制的枚举类型。

为完成对构件接口的有用分析、保证跨体系结构抽象层的细化一致性,强调互联与通信约束等,体系结构描述提供了连接件协议以及变换语法。为了确保执行计划的交互协议,建立起内部连接件依赖关系,强制用途边界,就必须说明连接件约束。ADL可以通过强制风格不变性来实现约束,或通过接受属性限制给定角色中服务。

(3)体系结构配置

体系结构配置或拓扑是描述体系结构的构件与连接件的连接图。体系结构配置提供信息来确定构件是否正确连接、接口是否匹配、连接件构成的通信是否正确,并说明实现要求行为的组合语义。

体系结构适合于描述大的、生命周期长的系统。利用配置来支持系统的变化,使不同技术人员都能理解并熟悉系统。为帮助在一个较高的抽象层上理解系统,就需要对软件体系结构进行说明。为了使开发者与其有关人员之间的交流容易些,ADL必须以简单的、可理解的语法来配置结构化信息。理想的情况是从配置说明中澄清系统结构,即不需研究组件与连接件就能使构建系统的各种参与者理解系统。体系结构配置说明除文本形式外,有些ADL还提供了图形说明形式。文本描述与图形描述可以互换。多视图、多场景的体系结构说明方法在最新的研究中得到了明显的加强。

为了在不同细节层次上描述软件系统,ADL将整个体系结构作为另以个较大系统的单个构件。也就是说,体系结构具有复合或等级复合的特性。另一方面,体系结构配置支持采用异构构件与连接件。这是因为软件体系结构的目的之一是促进大规模系统的开发,即倾向于使自己有的构件与不同粒度的连接件,这些构件与连接件的设计者、形式模型、开发者、编程语言、操作系统、通信协议可能都不相同。另外一个事实是,大型的、长期运行的系统是在不断增长的。因而,ADL必须支持可能增长的系统的说明与开发。大多数ADL提供了复合特性,所以,任意尺度的配置都可以相对简洁地在足够的抽象高度表示出来。

三、结束语

我们知道,体系结构设计是整个软件生命周期中关键的一环,一般在需求分析之后,软件设计之前进行。而形式化的、规范化的体系结构描述对于体系结构的设计和理解都是非常重要的。因此,ADL如何能够承上启下将是十分重要的问题,一方面是体系结构描述如何向其它文档转移,另一方面是如何利用需求分析成果来直接生成系统的体系结构说明。

现有的ADL大多是与领域相关的,这不利于对不同领域体系结构的说明。这些针对不同领域的ADL在某些方面又大同小异,造成了资源的冗余。有些ADL可以实现构件与连接件的进化,但这样的进化能力是有限的,这样的进化大多是通过子类型实现的。而且,系统级的进化能力才是最终目的。尽管现有的ADL都提供了支持工具集,但将这些ADL与工具应用于实 …… 此处隐藏:7762字,全部文档内容请下载后查看。喜欢就下载吧 ……

全国计算机软考软件设计师考前练习及答案(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/445412.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)