- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1000-9825/2002/13(02)0311-06 ©2002 Journal of Software 软 件 学 报 Vol.13, No.2
基于领域特征空间的构件语义表示方法
贾 育, 顾毓清
( 中国科学院 软件研究所,北京 100080)
E-mail: jia_yu@263.net; guyq@
摘要: 在基于构件的软件开发范型中,构件模型是构件分类、检索和适应等关键任务的理论基础,然而构件模型中
的语义表示方法一直是一个难点.提出一种以语义为核心的构件模型,采用基于领域分析的特征空间语义定义方法,
从领域空间、定义空间和语境空间三个方面刻画语义结构,用描述逻辑表达语义内容及实现自动推理,尤其是文中
的构件语义体概念和特征空间形式化方法,为构件复用自动化和工程化提供了一种可能的解决途径.
关 键 词: 软件构件;构件语义;特征空间;软件复用;描述逻辑;Z 语言
中图法分类号: TP311 文献标识码: A
软件复用是一种重复使用软件资产或过程的软件开发方法[1], 目的是要提高软件质量和开发效率, 目前,软
件构件复用成为软件资产复用的主流技术. 在基于构件的软件开发(component-based development, 简称
CBD)[2~4]过程中,人们发现,软件复用面临的主要问题不是如何从构件库中获得可用构件,而是怎样判断构件的
有用性[4] .概括地,构件的有用性体现在语义和语法两个方面.当前,研究集中在语法有用性上,例如,CORBA[5]注
重对象封装规范和通信协议,但缺乏表达对象“做什么” 的能力,使得语义只能以文档等媒介作为载体,或潜移默
化地反映在 CBD 的活动之中, 由此产生的非形式化和歧义性,无益于软件复用的自动化和工程化.因此,需要一
种构件模型,把形式语义描述作为构件明确的组成部分,使构件的语义自描述成为可能,从而解决软件复用中的
语义匹配和构件理解问题.
软件复用本质上是对知识的复用,构件功能的高度独立性和完整性,使其能够对应于不同层次和粒度的客
观实体,如果能够获取客观实体的本质属性,那么相应的构件便有了直接的语义解释. 因此,我们采用领域中用
户和开发者都可理解的术语和概念―“特征(feature)”[6,7] 来描述构件语义,建立一种层次化的特征空间(feature
space) 体系结构,使用描述逻辑(description logics, 简称 DLs)[8,9] 表示特征、特征运算和推理规则, 并从领域
(domain)空间、定义(definition)空间和语境(context)空间 3 个侧面刻画语义内涵.本文中,说明性规格说明语言
Z[10]被用作描述构件模型的工具.
1 构件语义模型
[11]
可复用构件模型是CBD 的理论基础,在当今众多的模型中,3C 模型 受到普遍认同,在此基础上,我们定义
了的一个具体的构件模型,充分强调了语义在构件中的重要地位.
定义1.1 (构件 Component ). 构件是指语义完整、语法正确和有可复用价值的单位软件,是软件复用过程
中可以明确辨识的系统构成;结构上,它是语义描述、通信接口和实现代码的复合体.
[SEMANTICIZER ,INTERFACE ,IMPLEMENTA TION ]
Component SEMANTICIZER ×INTERFACE ×IMPLEMENTA TION
这里,SEMANTICIZER :语义体集合,语义体是对构件功能和属性的抽象和描述;INTERFA CE :接口体集合,接口体
收稿日期: 2000-10-09; 修改日期: 2001-07-30
作者简介: 贾育( 1966-), 男,安徽合肥人,博士生,助理研究员,主要研究领域为软件工程,人工智能;顾毓清(1940 -), 男,江苏苏
州人,研究员,博士生导师,主要研究领域为软件工程.
312 Journal of Software 软件学报 2002,13(2)
是描述构件的通信接口规范和语法约束;IMPLEMENTA TI ON:实现体集合,实现体是满足接口规范和语义描述
的实例.
以上三者之间, 以语义体
文档评论(0)