一种软件服务的语义标识及需求封装方法

文档序号:6483279阅读:142来源:国知局
专利名称:一种软件服务的语义标识及需求封装方法
技术领域
本发明属于信息资源集成应用技术领域,特别是涉及一种软件服务语义标识及需 求封装方法。
背景技术
在云计算(Cloud Computing)盛行的今天,软件开发的范型也正发生着巨大的转 变。从最初的Web服务到现在的SaaS服务,软件形态层出不穷。然而,这些软件服务在定 义和使用过程中存在两个主要的问题一、它们往往需要通过关键字来查找所需的服务,这 种在语法层上的服务匹配很难满足用户的需要。二、软件服务的需求定位比较模糊,他们往 往关注软件服务本身的属性和内在特征,而忽略了软件服务的宗旨就是为了满足用户的需 求。因此,与语义技术结合的语义软件服务成了软件服务技术发展的一个重要方向,同时在 语义软件服务的基础上,促进人网协同,以用户为中心,增强用户体验感,为用户提供随需 而变的服务将逐步成为软件服务发展的新趋势。目前,较通用的语义服务本体是由W3C提出的语义Web服务本体0WL-S。该Web服 务本体通过服务轮廓(Service Profile)、过程模型(Process Model)和服务基础(Service Grounding)对语义Web服务进行描述。其中,服务轮廓是OWL-S本体中用于描述和区分服 务的部分,它描述了服务的名称、分类、输入输出参数、服务执行的前置条件和后置条件等 信息,并支持通过导入领域本体来实现对服务的输入输出参数类型进行语义标注。OffL-S服务本体的确增强了对Web服务语义的描述能力,但是由于在对Web服务进 行表征建模时,过分考虑了对Web服务本身的描述,而忽略了 Web服务描述与用户需求之间 的对应关系。根据RGPS需求元模型,用户的需求可以分角色、目标、过程和服务四个层面。 而OWL-S服务本体所描述的内容仅与过程层和服务层的需求描述对应,提供了构成OWL-S 服务模型的OWL-S过程模型和OWL-S服务轮廓;无法与角色层和目标层需求描述相对应,缺 乏服务对应的角色和服务对应的目标,见图1。这就导致了 OWL-S服务本体具有以下两点不 足之处1、无法描述与服务对应的角色通常情况下,相同角色的用户所频繁调用的Web服务大致相同。当需求分析模块 根据用户需求提取出用户角色后,如果服务描述中包含其对应的角色信息,则服务发现算 法就能够根据该信息计算服务库中的服务与用户需求在角色层面的匹配度,从而提高服务 发现算法的准确性。但是,目前的OWL-S本体还不支持对服务角色的描述,导致业务开发者 在服务发现过程中,无法利用用户需求中所包含的角色信息。2、无法描述与服务对应的目标(即功能)OffL-S本体中所定义的服务轮廓(Profile)通过服务的名称、输入输出参数类型、 以及服务的前置条件(Precondition)和后置条件(Effect)来间接描述Web服务的功能。 这种方法虽然能够从某种程度上表达服务的功能,但在有些情况下,使用该方法则无法准 确刻画服务的功能,容易造成混淆。尤其是对于大量不存在前置条件和后置条件的服务,这种现象就显得尤为突出。因为两个输入输出参数类型完全相同的服务,可能具有完全不同 的功能。

发明内容
本发明目的在于针对以上不足,提出一种软件服务语义标识及需求封装方法。本发明的技术方案为首先构建领域模型和软件服务注册模型,所述领域模型包 括领域本体模型和领域需求模型;实现步骤如下,步骤1. 1,构造 领域本体模型,即抽取领域中的基本概念,分别构造领域的实体本 体和操作本体,实体本体用以标识软件服务的输入输出属性项信息,操作本体用以标识软 件服务的操作属性项信息;对RGPS需求元模型实例化生成领域需求模型,包括在RGPS需求元模型下构造领 域的角色模型和目标模型以及它们之间多对多的关联关系;构造用于描述软件服务的软件服务属性本体,构造时在软件服务的基本属性项基 础上添加与领域需求模型相应的角色属性项和目标属性项;并在国际标准IS0/IEC 19763 所提供本体注册元模型的指导下对软件服务属性本体进行细化;步骤1. 2,使用本体编辑工具分别编辑领域本体模型、领域需求模型和软件服务属 性本体,生成相应领域本体模型文件、领域需求模型文件和软件服务属性本体文件;步骤1. 3,根据软件服务属性本体文件,在软件服务注册库中构建软件服务注册模 型;将待注册软件服务注册到软件服务注册库时,使用领域本体模型文件标识软件服 务,使用领域需求模型文件封装软件服务;实现步骤如下;步骤2. 1,导入待注册软件服务的服务描述文件,从服务描述文件读出待注册软件 服务的输入输出属性项信息和操作属性项信息;导入领域本体模型文件,利用领域本体模 型中的实体本体对对软件服务的输入输出属性项信息进行语义标识,利用领域本体模型中 的操作本体对对软件服务的操作属性项信息行语义标识;步骤2. 2,导入领域需求模型文件,从领域需求模型文件中读取领域的角色模型和 目标模型以及它们之间多对多的关联关系;用读取结果封装待注册软件服务的角色属性项 信息和目标属性项信息;步骤2. 3,根据软件服务注册模型,存储待注册软件服务的基础属性项信息、角色 属性项信息和目标属性项信息,并作为软件服务注册信息保存到软件服务注册库中。而且,运用国际标准IS0/IEC 19763-3所提供参考本体和本地本体之间的关系, 对领域本体进行演化,形成个性化的本地本体,支持同一领域下不同本地本体之间进行互 操作,实现基于这些本地本体的软件服务之间的互操作;所述领域本体为领域的实体本体 和操作本体。而且,提供支持语义查找和需求查找的查询接口,语义查找的查找参数从领域本 体模型文件中读取,需求查找的查找参数从领域需求模型文件中读取。本发明将领域本体模型和领域需求模型引入到软件服务注册模型之中,一方面用 领域本体模型去标识软件服务,实现软件服务的语义化;另一方面用基于RGPS需求元模型 的领域需求模型去封装软件服务,建立软件服务和用户需求的对应关系,实现软件服务“面向领域、用户主导”的宗旨。因此本发明技术方案解决了软件服务的语义标识和需求封装, 能够支持在软件服务发现过程中的基于语义和需求的软件服务匹配,实现自上而下的服务 发现和自下而上的需求发现的结合,为后续的软件服务动态组合奠定了基础。



图1为现有OWL-S服务模型示意图;图2为现有RGPS需求元模型的层次关系图;图3为软件服务的语义标识和需求封装过程。
具体实施例方式本发明所提供的技术方案如图3所示。为了实现基于领域本体模型和领域需求模 型的软件服务语义标识及需求封装方法,首先要建立领域本体模型和领域需求模型。(一 )构造领域本体模型,并通过领域本体的构造和选择,进行软件服务的语义标 识,从而支持请求者发出的语义查询,实现面向领域的软件服务的语义查找。领域本体模型是结构化的领域知识,包括领域概念及其关联,可以被计算机解释 和利用。领域本体描述的领域概念及其之间的语义关联为软件服务提供了语义支持。因为 软件服务的功能接口信息包括输入输出属性项信息和操作属性项信息,可以将领域本体概 念划分构造为实体本体和操作本体,前者用来语义标识软件服务的输入输出属性项信息, 后者用来标识软件服务的操作属性项信息。领域需求模型和领域本体模型共同构成了领域 模型,基于领域模型的软件服务真正实现了 “面向领域,用户主导”的宗旨。另外,可以运用国际标准IS0/IEC 19763-3所提供参考本体和本地本体之间的演 化规则,对领域本体(即领域的实体本体和操作本体)进行演化,形成能够个性化的领域本 地本体,并实现个性化的软件服务语义标识。这样可以达到同一领域下不同本地本体之间 能够进行互操作的目的,从而实现基于这些本体的软件服务之间的互操作。(二)根据RGPS需求元模型与领域知识,实例化生成领域需求模型。即在RGPS需 求元模型的指导下构造领域的角色模型和目标模型,用以对软件服务进行需求封装,从而 提高软件服务的查找效率和增强用户的体验感。RGPS需求元模型是在网络化软件的需求工程研究中,针对网络化软件的需求建 模提出的一种指导性方法。参见图2,在现有RGPS需求元模型中,包括角色-目标-过 程-服务四个层次的元模型角色层(Role)、目标层(Goal)、过程层(Process)和服务层 (Service),同时,在四个层次间建立了相应的关联关系。通过这四个层次元模型之间的关 联,能够为领域需求模型的建立和互操作提供有力的支持。因此本发明在RGPS的基础上, 提出利用角色、目标、过程和服务刻画网络式软件用户需求的真实意图,建立能够真正满足 用户需要的需求模型,为进一步提供合适的软件服务奠定基础。本发明重点考察角色层与目标层之间的关系和目标层与过程层之间的关系。具体 的来说,角色层与目标层之间的关系体现在角色承担相应的角色目标;每个参与者都扮 演特定的角色,除了具有其所承担的角色目标外,参与者还具有偏好性的个人目标。目标层 与过程层之间的关系体现在目标的完成或满足要依赖于相关的业务过程,每个过程都与 目标进行关联,一方面,过程可以完成相应的功能目标,直接完成用户对功能方面的要求;另一方面,过程可以促进非功能目标的实现,能够提高非功能目标的满足程度。过程层与服务层之间的关系体现在Web服务可以实现过程,过程可以看成是一个服务组合或服务解 决方案。基于领域的这两个模型能够与软件服务注册模型相结合,成为软件服务语义标识 和需求封装的核心机制。软件服务注册模型的实现过程为首先构造用于描述软件服务的 软件服务属性本体,构造时在软件服务的基本属性项基础上添加与领域需求模型相应的角 色属性项和目标属性项;并在国际标准IS0/IEC19763所提供本体注册元模型的指导下对 软件服务属性本体进行细化。通过细化,可以对软件服务属性进行分类,例如分为基本属 性、提供商属性、情境属性等。然后,编辑软件服务属性本体得到的软件服务属性本体文件, 可以保存到软件服务注册库。最后根据软件服务属性本体文件,在软件服务注册库中构建 软件服务注册模型。软件服务的基本属性项包括服务名称、服务描述文件URL、服务所在领 域、服务分类标准等,软件服务的输入输出属性项和操作属性项也属于软件服务的基本属 性项,因此无需扩展。所谓软件服务注册库,是目前进行软件服务(包括Web服务)注册和管理采用的 资源库,类似UDDI服务注册库。服务发布者可以在软件服务注册库中发布相关服务,服务 请求者可以在软件服务注册库发现相关软件服务满足自己的需求。但是现有服务发布和发 现机制是基于关键字的语法机制,非语义机制,因此应用本发明提供的软件服务语义标识 和需求封装机制,可以在已有软件服务注册库的基础上添加语义信息和需求信息,丰富软 件服务注册库的功能,增强软件服务注册信息的用户体验感。软件服务注册库可以用于支 持多个领域的软件服务注册,因此领域本体模型、领域需求模型编辑并生成相应领域本体 模型文件、领域需求模型文件后可以保存在本地,当进行软件注册时根据待注册软件服务 的领域导入相应领域的领域本体模型文件、领域需求模型文件。本发明的技术方案可由本领域技术人员采用计算机软件技术手段实现,提供自动 支持软件注册和查询的技术方案。具体实施时,领域本体模型及相应文件、领域需求模型及 相应文件和软件服务属性本体及相应文件的生成顺序并没有严格顺序限制。为了便于实 施,本发明提供了实施例的具体实现过程以供参考(1)根据领域知识构造一个领域本体模型,即抽取领域中的基本概念,分别构造领 域的实体本体和操作本体,实体本体用以标识软件服务的输入输出属性项信息,操作本体 用以标识软件服务的操作属性项信息。然后,使用本体编辑工具Prot6g6来构造用以标识 的领域本体模型,并以OWL (Web Ontology Language)文件格式输出文件,保持到本地供软 件服务注册库调用。(2)对RGPS需求元模型实例化生成领域需求模型,包括在RGPS需求元模型下构造 领域的角色模型和目标模型以及它们之间多对多的关联关系。在RGPS需求元模型各层及其层间关系的基础上,针对特定的领域(如物流领域), 应用领域知识在RGPS需求元模型的指导下构造生成领域需求模型。然后,使用本体编辑工 具Prot6g6来构造用以封装的领域需求模型,并以OWL (Web Ontology Language)文件格式 输出文件,保持到本地供软件服务注册库调用。(3)构造用于描述软件服务的软件服务属性本体,构造时在软件服务的基本属性 项基础上添加与领域需求模型相应的角色属性项和目标属性项;并在国际标准IS0/IEC19763所提供本体注册元模型的指导下对软件服务属性本体进行细化。然后,使用本体编辑 工具Prot6g6来构造软件服务属性本体文件,并以OWL (Web Ontology Language)文件格式 输出文件,保持到软件服务注册库中供调用。再根据软件服务属性本体文件生成软件服务 注册模型。(4)应用领域本体模型、领域需求模型对软件服务进行标识和封装。实施例中标识和封装过程如下首先,导入待注册软件服务的原始描述文件(如WSDL文件),从原始描述文件读出 待注册软件服务的功能接口信息(如输入输出属性项信息和操作属性项信息)以备标识之 用,服务发布者选择软件服务所在领域(如物流领域),即可利用该领域的领域本体模型中 定义的概念对这些接口信息进行语义标识,其中实体本体用以标识服务的输入输 出属性项 信息,操作本体用以标识服务的操作属性项信息。具体实施时,为了提高标识准确率,可以 根据软件服务原始的输入输出属性项信息,利用语义匹配算法从领域本体概念中选出相似 度较高的概念作为候选标识对象供注册用户选择,如果没有匹配的领域本体概念,则由用 户根据领域本体模型中的现有概念自行选择,或记录下无法匹配的输入输出信息。当多次 出现该信息无法匹配的情况时,则说明需要对领域本体进行演化。然后,从领域需求模型文件中读取领域的角色模型和目标模型以及它们之间多对 多的关联关系;用读取结果封装待注册软件服务的角色属性项信息和目标属性项信息。具 体实施时,当确定了软件服务所在领域后,从相应领域需求模型文件中读取该领域中的角 色模型和目标模型以及它们之间多对多的关联关系。实施时可以先选择使用该软件服务的 角色,选定角色后即可从领域需求模型中读取该角色所对应的目标,可以选择该服务能够 完成哪些目标。基于角色模型和目标模型以及它们之间多对多的关联关系,也可以先选目 标,后选角色。这样实现了利用领域需求模型中角色模型和目标模型以及它们之间多对多 的关联关系,对待注册软件服务的角色属性项信息和目标属性项信息的封装。注意,一个软 件服务可以由多种角色扮演,也可以实现多种目标。(5)根据软件服务注册模型,存储待注册软件服务的基础属性项信息、角色属性项 信息和目标属性项信息,并作为软件服务注册信息保存到软件服务注册库中。之前,输入输出属性项信息和操作属性项信息已经被语义标识,扩展的角色属性 项信息和目标属性项信息也已经被需求封装;因此只需根据软件服务属性本体构建出的软 件服务注册模型,填充软件服务的其他基础属性项,即可完成待注册软件服务的注册,并将 待注册软件服务保存到软件服务注册库中。包括输入输出属性项信息和操作属性项信息的 基础属性项信息,以及扩展的角色属性项信息和目标属性项信息,都被作为待注册软件服 务的软件服务注册信息保存到软件服务注册库中。具体实施时,可以为每一个注册成功的 软件服务分配其唯一的软件服务ID号,并保存在软件服务注册库中,以便管理。注册成功 后,软件服务注册库还可以提供浏览、修改和删除等管理操作。基于本发明实现的软件服务注册库可以提供强大的服务查询功能,不仅能够提供 基于传统关键字的查询功能,而且可以提供基于语义和需求(角色和目标)的服务查询功 能。具体实施时,服务查询者可选择待查询服务所在领域,领域本体模型中定义的概念和领 域需求模型中定义的角色和目标模型信息即可从相应领域模型文件中读取出来,查找参数 从而可以从这些信息中获取。查询过程中,应用领域本体模型中的语义推理机制可以提高软件服务的查询效率,同时基于领域需求模型封装的服务查询可以极大提高用户查询的体验感。
权利要求
一种软件服务语义标识及需求封装方法,其特征在于首先构建领域模型和软件服务注册模型,所述领域模型包括领域本体模型和领域需求模型;实现步骤如下,步骤1.1,构造领域本体模型,即抽取领域中的基本概念,分别构造领域的实体本体和操作本体,实体本体用以标识软件服务的输入输出属性项信息,操作本体用以标识软件服务的操作属性项信息;对RGPS需求元模型实例化生成领域需求模型,包括在RGPS需求元模型下构造领域的角色模型和目标模型以及它们之间多对多的关联关系;构造用于描述软件服务的软件服务属性本体,构造时在软件服务的基本属性项基础上添加与领域需求模型相应的角色属性项和目标属性项;并在国际标准ISO/IEC 19763所提供本体注册元模型的指导下对软件服务属性本体进行细化;步骤1.2,使用本体编辑工具分别编辑领域本体模型、领域需求模型和软件服务属性本体,生成相应领域本体模型文件、领域需求模型文件和软件服务属性本体文件;步骤1.3,根据软件服务属性本体文件,在软件服务注册库中构建软件服务注册模型;将待注册软件服务注册到软件服务注册库时,使用领域本体模型文件标识软件服务,使用领域需求模型文件封装软件服务;实现步骤如下;步骤2.1,导入待注册软件服务的服务描述文件,从服务描述文件读出待注册软件服务的输入输出属性项信息和操作属性项信息;导入领域本体模型文件,利用领域本体模型中的实体本体对软件服务的输入输出属性项信息进行语义标识,利用领域本体模型中的操作本体对软件服务的操作属性项信息进行语义标识;步骤2.2,导入领域需求模型文件,从领域需求模型文件中读取领域的角色模型和目标模型以及它们之间多对多的关联关系;用读取结果封装待注册软件服务的角色属性项信息和目标属性项信息;步骤2.3,根据软件服务注册模型,存储待注册软件服务的基础属性项信息、角色属性项信息和目标属性项信息,并作为软件服务注册信息保存到软件服务注册库中。
2.如权利要求1所述的软件服务语义标识及需求封装方法,其特征在于运用国际标 准ISO/IEC 19763-3所提供参考本体和本地本体之间的关系,对领域本体进行演化,形成 个性化的本地本体,支持同一领域下不同本地本体之间进行互操作,实现基于这些本地本 体的软件服务之间的互操作;所述领域本体为领域的实体本体和操作本体。
3.如权利要求1所述的软件服务语义标识及需求封装方法,其特征在于提供支持语 义查找和需求查找的查询接口,语义查找的查找参数从领域本体模型文件中读取,需求查 找的查找参数从领域需求模型文件中读取。
4.如权利要求1或2或3所述的软件服务语义标识及需求封装方法,其特征在于所 述本体编辑工具采用Prot6g6。
全文摘要
本发明首先构建领域模型和软件服务注册模型,所述领域模型包括领域本体模型和领域需求模型;将待注册软件服务注册到软件服务注册库时,使用领域本体模型文件标识软件服务,使用领域需求模型文件封装软件服务。因此本发明技术方案解决了软件服务的语义标识和需求封装,能够支持在软件服务发现过程中的基于语义和需求的软件服务匹配,实现自上而下的服务发现和自下而上的需求发现的结合,为后续的软件服务动态组合奠定了基础。
文档编号G06F9/44GK101944016SQ20091006310
公开日2011年1月12日 申请日期2009年7月10日 优先权日2009年7月10日
发明者万彩平, 伍沙沙, 何克清, 余智涛, 彭涛, 曾诚, 李兵, 杨俊峰, 王健, 郜鹏, 钟润, 陈桂生 申请人:武汉大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1