学习总结100515

上午开通博客

看了玉泉老博的《我接触过的Web Service研究方向》一文,博主是本方向的先行者,学习他的精神

看了他收集的一些服务综述性的文章

    这篇论文将这些"Contract Specification Language"分为三个系列:
        Web Services (WS-*): 包括WSDL, BPEL, WS-CDL, WSLA/WS-Policy/WS-Security/WS-TRust
        Semantic Web Services (*-S): OWL-S, WSMO
        Electronic Business (Eb-*): BPSS, CPP, CPA

扩展性的看了一个WS-CDL的PPT介绍,内容较多,对CDL在WS-*协议栈的位置有新的认识,并写了博文一篇

WS-CDL所在的协议栈位置

并扩展性的看了WS-Policy协议,该协议的应用性很强,是服务双方交互时宣布自身的要求和功能的方法,也是协调的方法。

WS-Secunity了解不多,以前看过的都忘了,这也是我现在开始写博客的主要原因。

涉及到以下安全相关内容:
(1) contains specification on how integrity and confidentiality can be enforced on Web services messaging
(2) details on the use of SAML and Kerberos, and certificate formats such as X.509
(3) describes how to attach signatures and encryption headers to SOAP message
(4) describes how to attach security tokes, including binary security tokens such as X.509 certificates and Kerberos tickets, to message.

1.怎样增强web服务消息的正确性和机密性

2.选用SAML(安全声明标记语言)和Kerberos安全认证系统和例如X.509的证书认证格式

3.描述怎么附加签名和加密头部信息到SOAP消息

4.描述怎么附加安全令牌,包括类似X.509证书的二元安全令牌以及Kerberos标签到消息中

WS-Trust The goal is to enable applications to construct trusted message exchange. The trust is represented through the exchange and brokering of security tokens.

 构建信任消息交换,表现为交换和协商安全令牌

Semantic Web Services (*-S)系列
OWL-S (Web Ontology Language for Web Service)
语义层次上描述Web服务. 包括三个部分:
    service profile:  for service discovery, 支持功能性(IOPEs)和非功能性描述
    process model:  support composition of services 服务组合
    service grounding:  associate profile and process concepts with the underlying service interfaces

OWL-S ontology包括4个主要的类:
    Service:  OWL-S service description, textual description of the service
    Profile: IOPEs of a service
    Process: has properties used to describe how the service works
    Grounding: with properties to specify how the service is activated

WSMO (The Web Service Modeling Ontology)
allows to specification of extra-functional properties for each particular element of a Web service description.
WSML(The Web Service Modeling Language)是 WSMO的语言.

Electronic Business (eb-*)系列
ebXML
(electronic business XML):
    a framework that
        provides a global electronic market place
            where enterprises of any size, anywhere can
                 find each other electronically 
                 and conduct business through exchange of XML based business messages.

推动机构: UN/CEFACT and OASIS. exXML包括了以下几部分:
BPSS (Business Process Specification Schema)
describes collaboration between business partners, their roles, relationships and responsibilities.
CPP (Collaboration Protocol Profile)
contains the interaction of partners by describing the capabilities of an individual party through Business capabilities and Technology capabilities.
CPA (Collaboration Protocol Agreement)
expresses an agreement between partners.

三类协议的比较
WS-*/eb-* 属于operational programming style, 是modeling languages.
*-S 则属于predicative style, 是property languages.
作者认为将WS-*与eb-*系列合并在技术上是没有问题的.

image

Classification of Service Contract Specification Languages

 其他

1. 各类语言/协议相互转换的相关文献:
WS-CDL-> BPEL:
    Jan Mendling. From Inter-Organizational Workflows to Process Execution: Generating BPEL from WS-CDL, OTM 2005
OWL-S –> BPEL:
    B Bordbar. Model Transformation from OWL-S to BPEL Via SiTra, LNCS 2007
BPEL –> OWL-S
    MA Aslam. From bpel4ws process model to full owl-s ontology, ECWS 2006

读一篇玉泉老博的[综述泛读] A survey on web services composition (IJWGS, 2005)

摘抄如下:

Dustdar S, Schreiner W. "A survey on web services composition." International Journal of Web and Grid Services: 1-30. 2005 (30 pages, 单栏) (gs:169)

Schahram Dustdar (维也纳技术大学, full prof)
Dusdar是Distributed Systems Group的老大, 主要研究兴趣包括Service-oriented Architecture and Computing. 他是TOSC, IJWSR等期刊的编委, 具有ICWS, ECOWS, ICSOC, GCC等会议的Programe Committe Memberships, 当然也是这些顶级期刊/会议的审稿人. 他的小组中在读的博士生有将近20个, 队伍比较庞大, 发表的论文级别很高(例如TOIT, TEB, WWW等顶级期刊/会议). 我最早是读了他们的一篇WWW08的论文(Non-Intrusive Monitoring and Adaptation for WS-BPEL)开始关注的.

    粗略地扫描了一遍这篇早期服务组合方面的综述, 感觉自己对早期服务组合方面的论文还不是很熟悉, 毕竟平时精读的论文多数都是最近几年的为主. 这次泛读这篇论文的主要目的是想要了解一下这篇被高引用的综述的主要内容, 分类思路等, 有个大概的印象, 对一些细节就不深入了.
    本文讨论的主要内容包括服务组合的迫切性, 实现服务组合必须的技术, 已有的几种服务组合策略等. 以下是论文摘录.

1. 最经典的Web Service Model 
image_2 

2. 介绍了6个服务组合的issues(S4)
(1) Coordination
相关的标准有WS-Coordination (IBM), WS-CF (Sun)
对WS-Coordination的介绍详见 "The next step in Web services"
(2) Transaction
相关的标准有WS-Transaction (IBM), WS-TXM (Sun)
WS-Transaction基于WS-Coordination框架之上, 对centralized和peer-to-peer transaction均定义了协议.
(3) Context
本文对Web service的context定义为:
"Information utilised by the web service to adjust execution and output to provide the client with a customised and personalised  behaviour."
以下信息都可以是Context: consumer's name, address, current location, type of client device等.
相关的标准有WS-Context(Bunting03)(WS-CAF的一部分)
(4) Conversation modelling
(5) Execution monitoring
centralized execution (e.g. EFlow)
distributed execution (e.g. SELF-SERV, by UNSW)
(6) Infrastructure
主要在介绍Ran03的那篇论文(通过添加一个QoS certifier来扩展Web service Model)

3. 讨论了5种组合方式(S5), 这是本文的核心部分
(1) static vs. dynamic service composition
static composition (design time composition), applicable if the service component rarely changes (which is generally not true)
dynamic composition (runtime composition) , rebind the service or even change the process definition. EFlow and StarWSCoP support this kind of composition.(本节对这两个系统进行了详细的介绍)
(2) model driven service composition
(3) declarative service composition
介绍了enTish系统(2003), 与当时其他的系统不同, enTish系统使用PDDL可支持自动生成组合计划.
介绍了SELF-SERV系统(2002), 定义了三个概念(elementary service, composite service, service communities), 服务组合基于state-charts实现.
(4) automated vs. manual web service composition
介绍了SHOP2, OntoMat-Service等系统, 具体不摘录了.
(5) context based web service discovery and composition

image_4   
                                                                          Web Service Composition Models

观后感:对服务组合issues的抽象是确定服务组合能力的依据。

协调,事务处理(集中式的和点对点的事务处理),上下文(无状态的服务调用,上下文随消息传递),动态服务选择,执行控制方式(集中式和分布式),组合策略。

组合策略有:动态组合,基于上下文的组合,语义组合,declarative组合(陈述式?SELF-SERV)

[综述阅读] A Survey of Automated Web Service Composition Methods (SWSWPC, 2004)

J. Rao and X. Su. "A Survey of Automated Web Service Composition Methods". In Proceedings of the First International Workshop on Semantic Web Services and Web Process Composition, SWSWPC 2004, San Diego, California, USA, July 6th, 2004 (12 pages)(gs:218)
这是篇早期服务组合方向的论文, 是最早针对基于AI planning方法服务组合方面的综述, 这部分内容也是本文的重点.

1. 本文中"automated"的含义有2层
(1) generate the process model automatically.  自动产生过程模型
(2) locate the correct services if an abstract process model is given.  在给定抽象过程模型的基础上自动定位正确的服务

文中从workflow和AI planning这两个领域综述automated web service composition.
对于workflow, 主要是针对第二种automation方式.
对于AI Planning, 则可以generate the plan automatically. 这类方法通常都要基于一个假设:
    each web service can be specified by its preconditions and effects in the planning context. 

    每个服务能够具体制定其先决执行条件和执行结果。

2.基于Workflow的服务组合方法
(1) static workflow generation
用户要自己构建abstract process model (包括组成任务及其数据关联). 这种模式中, 只有服务的选择和绑定是自动的.
dynamic workflow generation
自动生成process model并且选择原子服务. 基于graph建模.

(2) EFlow
"a platform for the specification, enactment and management of composite services."
支持static workflow generation模式
(3) PPM (Polymorphic Process Model)
具有static与dynamic service composition的特性.
static: abstract subprocesses(具有功能描述, 但是没有实现), 具体的服务在运行时绑定.
dynamic: 基于state machine的推理(service建模成state machine, service operation触发transition)

3. 基于AI Planning的服务组合方法
(1) Situation Calculus (情景演算)
Situation Calculus是一种逻辑语言, 基于action和change进行推理. Web service被建模为action(PrimitiveAction或ComplexAction).
Golog编程语言即基于Situation Calculus.
这方面的两篇相关论文:
    S Narayanan, SA McIlraith. Simulation, verification and automated composition of web services. WWW 2002
    S McIlraith, TC Son. Adapting golog for composition of semantic web services. KR 2002
(2) PDDL (Planning Domain Definition Language)
不了解这个概念, 以前也没有看到过相关的论文.
(3)Rule-based planning
Medjahed03 (Composing Web services on the Semantic Web)
从high-level declarative description来生成组合服务. 使用composability rules来判断两个服务是否可组合.
分为4个阶段:
    specification phase: 对组合目标使用high-level描述
    matchmaking phase: 使用composability rule产生组合计划
    selection phase: 基于QoS对产生的plan进行打分
    generation phase: 自动生成关于组合服务的详细描述
SWORD02
使用ER model来描述Web Services(而不是通用的WSDL或DAML-S), 用Horn rule对服务进行建模(preconditions, postconditions). 要创建一个组合服务, 只要指定初始和最终状态, 系统就会自动产生plan.

(4) Other AI-Planning Methods
SHOP2 (2003)
基于HTN(Hierarchical Task Network), 使用DAML-S来描述服务

这篇文章对我的作用:自动的两层含义,比静态,半自动,全自动的划分要科学。

对服务组合的方法分工作流和人工智能,没提及软件工程构件思想。

工作流那一部分分为静态过程模型生成+动态绑定,和完全动态生成的两种,有必要自己看下。

原文地址:https://www.cnblogs.com/bang/p/1734972.html