当前位置:首页 >> 信息与通信 >>

智能Web服务及其元模型驱动的开发环境_图文

维普资讯 http://www.cqvip.com

第2 4卷 第 1 2期 
20 0 7年 1   2月

计 算机应 用 与软 件 
Co u e  p i ain   n   ot r   mp tr Ap lc to s a d S f wa e

Vo . 4 No 1   12   . 2

De 2 07 c. 0  

智 能 We b服 务及 其 元模 型 驱 动 的开发 环 境 
陆潇华 李银胜  
( 复旦大学软件学院 上海 20 3 ) 0 4 3 

摘  要 

当前的 We b服务 尚没有充分 的语义支持 , 无法支持 动态的面向服 务组合与协 同。提 出 了智能 We b服 务的参考元模 型,  

强化其语义支持 的交互与推理能力 , 并仔细探讨 了服务的 内部结构及其实现。基于这 一模型 , 开发 了一套集 成开发环境, 并以此来 
验证 模 型 的可行 性 。  

关键词 

We b服务

语 义  智能服务模型  模型驱动 

I NTELLI GENT  EB  W SERVI CES AND  TS  ETA  oDEL    I M M DRI VEN  DEVELoPM ENT  ENVI RoNM ENT 

L   a h a LiYi s e g u Xio u     nhn   (otaeSho,u a   nvrt,h n hi 0 4 3 C ia  S w r colF d nU i sy S ag a  0 3 , hn ) f   ei 2

Ab ta t sr c  

Cu rn  e   e vc sh v   o  e n d v lp d w t  uf in  e n is Dy a cS r ie o in e   p r t n   a e n t e n w l r t e W b s ri e  a en tb e   e eo e   i s f ce ts ma t . n mi  e vc — r td o e ai sh v   o  e   el h i c e o b  

s p o td S ma t s i ic r o ae  no We   e ie   o b i   n i tl g n  b s r ie   e ee c   t  d 1 T e i v le   r h tcu e u p re . e n i  s n o p r td i t  b s r c s t  u l a   nel e tWe   e c s r fr n e mea mo e . h  n o v d a c i tr   c   v d i v e a d itr a c mp n n so   emo e  r  a eul d ni e   n   x mi e .   tg ae   e eo me te vr n n  sd v lp d a d u e  o n  n e n l o o e t ft   d l e c r f l i e t d a d e a n d An i e r td d v lp n  n i me t   e eo e   n   s d t      h a y i f n o i e au t h   e ie mo e. v la e te s r c   d 1 v   Ke wo d   y rs We   e ie   S ma t s I tl g n  e ie mo e Mo e  r e   bsr cs v e n i   n el e ts r c   d l c i v   d l i n d v

0 引 言   
We 服务是一项新兴 的分布式 计算技术 。它使 用开放 、 b 标  准和统一的协议, 软件 商可 以使用 不同 的技术 来实现 。We b服  务因而具备了应 用 、 台与供应 商独立 的特 征  , 平 非常适 合用  于大规模的应用环境 , 例如企业 应 用集 成 ( A ) E I 。企 业在 信息 
基础设施上的投资有 很大一部分 就是用于应 用集成 的。然而 ,  

1 智能 We b服务 
We 服务 面临 的两 项 主要 挑 战是 语 义描 述 与智 能模 型。 b  

有 了语义描述 , b服务就 能被 准确 的识 别 , 与需 求进行 精  We 并 确匹配 , 而智能模 型则 使 We b服务 能支 持动 态配 置 与复杂 交 
互 。当前的 We 服务 尚未加入足够 的语 义。与此 同时 , b服  b We

务应该具有松散耦合 、 动态协作等特征 , 然而 目前并没有能很好  体现这些特征 的 We 务模 型。造 成这些 情况 的主要原 因是  b服 当前支持 We b服务 的主流 平 台, 如 JE 例 2 E和. E 仍然都 是  N T,
基于 面向对象模型的。它们 并未从 内部模 型上对服务与对象进  行 区分 , b服务仅仅是作为分布式对象之上 的一层接 口而 已。 We   为了解决上述 问题 , 文分 析 了 We 本 b服务 的语 义描述 、 知  识表示与 内部结构 , 出了智能 We 提 b服务模 型。该模 型可用于 


由于企业使用的技术过于 复杂, 应用 集成 的投 资 回报率往 往低 
于预期 。如果使用 面向服务架构 ( O ) We SA和 b服务 , 应用集成 

的费用可望大大降低 . 生产效率也能大幅提高。  
然而 , 当前的 We 服 务技术还 存在 一定 的局限 , b 阻碍 了其 

在业界的进一步推广。 目前 的 We b服务 缺乏语 义描述 与通用  模型  。We b服务 的各种 标准 都不 支持 足够 的语 义 。而 缺乏 
通用 的语义模型, 面向服务的应用框 架与 开发方法就 失去 了基  础 , b服务的快速开发和应 用也就不 可能实现 。考 虑到在遗  We

个结合 了面向服务架 构 与分布 式对 象技术 各 自优 点 的框架 

内。智能 We b服务支持语 义推 理 、 流程随需 集成 、 动态配 置和 
自动交互 。智能 We b服务 的两 个最为关 键 的挑 战是语 义表示 
与 内 部结 构 。  

留技术上 的巨大投资 , 软件商们 大多选择 将 We b服务集成 到它  们原有 的分 布 式平 台 中, 不 是开 发 新 的 面 向 服务 的框 架 。 而   We b服务仅仅是作为面向对 象技术之 上的一层 接 口, 而不是 一  种 自主的计算实体 。这样 , 在实 际 的企 业 中 , b服务 的精确  We 匹配 、 动态集成 、 自动交互等应用都受到限制。  
本文提出把语义 We b技术 , 别是 O -  特 WLS , We 与 b服  务技术结合起来 , 并在这个语义模 型的基础上 构建智 能的 We  b 服务元模型。该模 型能够支持 We b服务间 的语 义推 理 、 态集  动 成与复杂交互。   .  

We b服务 的语 义描 述 包 括 服 务 的 概 况 、 流程 模 型 与 实  现  。服务 的概况 描述 服务 可 以做 什么 , 即服 务 的功能。它  提供 了关 于服务 的精确而全 面的信息 。用户可以根据这些信息 
来发现 并判 断服务能否满足需求 。流程模型描述 了服务是如何 
收稿 日期 :0 5—1 20 1—2 。陆潇华 , 2 硕士 生, 研领域 : 主 电子商 务 
We b服 务 。  

维普资讯 http://www.cqvip.com

8  6

计算 机应 用与软件 

2o O 7年 

工作的, 包含服务 的流 程结构 、 涉及到 的合 作伙伴 、 输入 、 出、 输   前提和结果 。用户可以用这些 信息来对服 务做进一步 的分析 ,   从而决定是否在应 用中采用该服务 。服务实现则告诉 用户 如何 

包 、 l和类之 间的关 系 , 以用 U 接: l 可 ML图来表 示。其 中三个最  重要 的接 l是 “ r l” “ rcs” “ ru dn ” 它们 共 同描  : l Po e 、 Poes 和 Go nig , i f
述 “e i ” Sr c 这一接 口。这些接 口都位 于本体层 面的包 中。一个  ve

与服务进行交互 。We b服务 的位置 、 消息 格式 、 传输 协议 等都 
是重要 的实现信息。服务的概况 、 流程模 型和实现三者协同 , 使  We b服务能支持面 向服务的动态配置 与 自动交互 。目前 已有一  些用于描 述 We 务 的本 体语 言, O .1 。O . 于  b服 如 WLS]   WLS基 O WL, 支持 自动的 We 服务发现 、 、 b 执行 交互 、 与观测  。 集成  
有 了语 义 描 述 , b 务 就 具 备 了 自动 交 互 的 前 提 。然 而  We 服

“e i ” Sr c 拥有一个“ r l” 通过一个“ r es 来描述 , v e Po e , i f Po s” c 并且支 
持一种“ ru d g 。这些 关 系在 O ? G on i ” n WLS的规 范 中定义  , 并 

在本文提 出的元模 型中得到 了体现。设计 智能 We b服务时 , 开 
发人员只要实现 在这些 接 口中定义 的方法 即可 。由此生成 的 
类 , “ e i lp”、 PolIp”、 Poesm l 和 “ rudn  即 Sr c m l “ r i m l “ r sl p” v e fe c G oni— gm ” 位 于用 户 自定 义 的包 中 。 图 2描 绘 了这 些 接 口与 类 之   lp 则 间 的关 系 

要在语义基础 上实现推 理 , b服务还 需要一个 智能模型 。在  We

这方面软件代理技术 可以作为十分有益的参考。软件代理 已经  发展 了多年 , 它们 能够 实现 复杂 的交互 , 这正是 今天 的 We  而 b
服务所缺乏的。以协同智 能理性 代理 模型 ( I CR代理 ) 为例 , 其  具备 以下基本组 件 : 问题求 解 、 知识 表示 、 交互与通信  。受到 

该模型的启发 , 我们提 出了一个参考 以上 四个组 件的 We b服务  内部模型 , We 使 b服务能 部分实 现软件 代理 同等的复杂 交互 。  
基于O — WLS的服务 描述 可用 于 以上这 四个 模块 , 支持基 于信  念、 愿望 、 意图( D ) B I 的推 理  。通 过这样 的结构 化模 型, 再结  合语义描述和推理模 式 , b服务 就能够 支持 精确 匹配 、 We 智能  推理与 自动交互 。   图l 是本文提 出的智 能 We b服务模 型。该 模型为 We b服 
务 加 上 以 下 四个 组 件 : 于 O — 语 义 描 述 与 知 识 组 件 、 基 WLS的 问 
图 2 本体层面的包  口及其实现类之 间的关系  接

题求解组 件 、 交互组件与通信组 件。这一模型遵循 了 W3 C提 出 

的面 向服务架构 。基 于 O LS的语义描 述与知 识是其 它三个  W.
组件 的基础。知识 可用 于构建推理功能 , 从而 实现 We 务的  b服 智能 。问题求解组 件运 行于知识 模块之上 , 为用 户提供真 正的  服务功能 。有了知识 , 问题求 解组件就 能提供更 为精确 与动态  的服务 。为了适应不断 变化 的业 务环境 , 交互组件 f h 用 知识  i U C 来实现 We b服务 的精确匹配 、 动态配置 与 自动集成 。通信组 件  则扮演了 S A O P引擎 的角色 , We 为 b服务 提供 了独立 于其 他软 

3 模型驱动的 We b服务开发 
我们开发 了一套名为“nei n  bS r cs td (WS ? It let  ev e Su i 1 S  lg We i   o tdo ” ui) 的集成 开发 环境 , 于设 计 与开 发企 业应 用 中的智 能  用 We b服务。We b服务的开发基 于本文提 出的模 型 , 有智 能组  具 件, 并用 O . WLS进行语 义描述 。服务 使用 者可 以用 O — WLS信 
息来 实现服务 的动态查找与配置 。   如 图 3所示 ,WStdo为用 户提 供 了统 一 的图形 用户 界  I Sui

件系统进行通 信的能力 。通 信 的消息通 常基 于 S A O P格式 , 用  HI’ r P协议进行 传 输 。所 有这 些组 件 都 以额 外类 库 的形 式存  T I
在, 因而能够与以前的 We b服务代码保持兼容。  

面。这套界面包括以下三个工作 区: 服务描述工作 区” “ “ 、 服务  开发工作 区” 服务部署工作区” 服务描述工作区” 与“ 。“ 用于定  义智能 We b服务 。用户在这里定 义当前项 目与 We b服务的各  种信息 , 特别是 O . WLS的服务概况 、 流程与实现 的各 个项 目, 由  此来形成对 We b服务 的完整语义描述。完成定义后 , 开发人员 

图 1 智 能 We b服 务通 用 模 型 

智能 We b服务模型与当前 的 We b服务 协议可 以组成 一个  协议栈。协议 栈的 底部 是智能 We b服务 模 型。WS L等 当前  D

主要 的 We b服务协议 位于智 能模 型的上层 。这样 , 智能 We 服  b 务就能与那些没有采用智能模型 的 We b服务交互 , 从而保持 与 
现有系统的兼 容性 。协议栈 的顶部是具体业务相关的协议 。  

2 面向We b服务 实现的智能元模型 
智能 We 务模型 的 目的是要让设 计人员 能够顺利 的表  b服 示各种复杂应用。为了实现智 能模型 , 必须有一种标 准化 的方  式。元模型是标 准 化 方法 的一 个 很好 的 切入 点 , 时对 智 能  同 We 服务开发也至关重 要。元模 型表达 了智能 We b b服务各 个 
图 3 Itl et bSri s tdo I Sui)   ne i n   evc   u i(WStdo  lg We eS

维普资讯 http://www.cqvip.com

第1   2期

陆潇华等 : 智能 We 服务及其元模型驱动的开发环境  b

8  7

就可 以用 I Sui 来生成对应 的 O ? WS t o d WLS和 WS L描 述文件 。 D   “ 服务开发工作区” 使用 户能够 结合预 定义 的服务模 型与 自定 

义的服务特性来创建新 的智 能 We b服务 。I Su i WS t o提供 了一  d 些在 电子商务系统 中常用的 We b服务 , 开发 人员可 以先从 中选  择再进行适当的定制 , 以满足特定 的业 务需求 。We b服务 的可 
执行文 件 都 是 根据 预定 义 的 服务 和 用 户 的定 制 来 生 成 的。  

I Su i还会生成简单的测试客户端 , WStdo 使用 户能快速 的验证 开 
发 出来的 We b服务是否正确 。“ 服务部 署工作 区” 开发人 员  使 能够将智能 We b服务 的所 有文件 , 括 O - 包 WLS描述 文件 、 . WS 

D L接 口文件与可执行文件 , 都部署 到指定 的 We b服务 平 台上 。  
当然测试客户端也会同时部署。 目前 I Sui WS td o使用 A ah 组  pce 织的 T m a 和 A i作为 We o ct x s b服务 的部署 与运行 平 台。这三 个 

工作 区一起 , 为用户设 计与开发智能 We 务提 供 了统一而 全  b服
面 的支 持 。  

4 案例分析 
I Su i提供 了多个 电子 商务 中 常见 的 We 务 , 如  WS t o d b服 例

信用查询 、 谈判 、 采购 、 账等。图 4展示 了正在 开发 中的信用  转 查询取务 。用户创建名 “rdt的项 目, c i e ” 这也成为该项 目所开发 
的 We b服 务 的名 字 。然 后 用 户 从 模 板 列 表 中选 择 “ edr V n o 

图5 信用查询服务的各种描述 文件 

Cei 服 务 , 填 入 各 种 描述 信 息。基 于 这 些信 息 , 户用  rd ” t 并 用 I S do生成服务的 O ? WS t i u WLS描述 文件。随后生成 的还有可执 

5 结  

论 

行文件和客 户端 。所 有文件 都准备 好后 , 户用 I S d 把  用 WSt i uo
文件部署 到指定 的 We b服务平 台上并启动服务器 。  

本文提出 了一个通用的 We b服务模 型, 该模型强化 了现 有  We 服务所缺乏 的语义与智能 。为了实现 We b b服务的智能 , 语 

义描述与 自治性的内部结构 是两 个最 为关键 的问题 。这 两个 特 
性是 We b服务支持语 义推理 、 流程按需 集成 、 动态 配置 与 自动  交互 的基 础。本 文详 细分 析 了其 中 涉及 到 的主 要 问题 , 括  包

We b服务 的语义描述与知 识 、 内部组件结 构 、 于 U 基 ML的元 模  型等。一套名为 I Sui WS td o的集成 开发环 境也 已经 开 发出来 ,  

用于支持智能 We 服务 的设计 与开发 。当然其 中还 有一些 问 b  
题需要改进 , 例如语义描述需要进 一步组织成结 构化 的知识 , 从  而支持推理 ; We 在 b服务的集成 与协作 中需要采用更为 复杂的  交互模式。这些都需要 进一步的研究 。  

参 考

文 献 

[1]W3 . bSrcsAcicu  u :/ w , 3ogT / sa h , O. C We e i  rhetr hp/ w ww .r R w - c/2 4 ve t e / r 0  

[ 2] Ynhn iH m d  hni , ii   hn Aet a dWe  i egL, a aaG en a We n Se. gn bs   b s w mg — e
s r ie   r me r   n   v l p n   v r n n , o u ain l I - e vc s F a wo k a d De eo me t En i me t C mp t t a  n   o o

tlgne20 2 ( :7 6 2 elec ,04,0 4)6 8— 9  i

[ 3]D M   r, WLS n o utn h p/ w w dm . r s i so l A L o O - Itd c o , t: w   a 1 g e c /w - g   r i t / o/ r e v  
s 20   /, 0 4.

[ 4] D L ogOWLS Smat  ak pf  bSri s h p/ w w  AM  r, -:e ni M ru o We e c ,t :/ w . c r v e t
d ml o g e i e / wls  1 o e iw 2 0   a   r/s r c s o -/1 / v r e /, 0 4 v v

[ 5] M la hSA SnT C H nl  eg Sm n cWe s v e, E   cri   , o   , og i n  e at  b e i s I E lt   eZ i   rc E
Itlgn ytm ,0 1 1 ( ):6— 3  neiet s s20 ,6 2 4 5 . l S e

[ 6] M la h   , a i D L Bi i   m ni    e  r csIE   c ri  A M rn   . r g g e at s oW bs v e , E l tS t  nn s ct ei E
It l e t ytm ,0 3,8 1 :0— 3  ne i n  s s 2 0 1 ( ) 9 9 . lg S e

图 4 I S t i 开发 中的信用查询 服务    WSd uo

[ 7]C oeaieDs i tdSs m E gneigGo p T eCR A eth- oprt   ir ue yt   nier   ru ,h I ? gn,t v tb e n  
t / ww e g a U O a d g o p cr g n   t , 0 0  p: / w  n g . W  c /e s r u / i e t h m 2 0 . a

服务器成功启 动后 , 信用 查询 服务就 可 以供用 户调 用 了。  
用户可以通过 U L访 问到 服务 的 WS L和 O . 述文 件 , R D WLS描   图 5是这些文件的截图。  

[ 8]FP ,IA A sat r i c r S ei a o , t : w w f ao / IA FP   b r   c t t e pc ctn h p/ w   p  r   tcA he u   f i t / i i g
s e s i a 0 01 C 0 01 . t , 0 2   p c /f O 0 /S O 0   h ml2 0 . p L