Web Services Based Architectures to Support Dynamic Inter-organizational Business Processes
webservice详解

webservice详解English Answer:What is a Web Service?A web service is a software application that isdesigned to perform specific tasks over the internet. It is a software system designed to support interoperablemachine-to-machine interaction over a network. Web services are typically defined by open standards, such as SOAP, WSDL, and UDDI, which allow them to be used by a variety ofclients and applications.Benefits of Web Services:There are many benefits to using web services. Some of the most common benefits include:Increased flexibility: Web services can be easily integrated with other applications, allowing for greaterflexibility and customization.Improved efficiency: Web services can help to streamline business processes and improve efficiency.Reduced costs: Web services can help to reduce thecost of developing and maintaining applications.Increased agility: Web services can help businesses to be more agile and responsive to changing market conditions.Types of Web Services:There are many different types of web services. Some of the most common types include:SOAP web services: SOAP (Simple Object Access Protocol) is a protocol that is used to create and exchange web services. SOAP web services are typically used for more complex tasks that require a high degree of security.RESTful web services: RESTful (Representational StateTransfer) web services are a type of web service that is based on the HTTP protocol. RESTful web services are typically used for simpler tasks that do not require a high degree of security.XML-RPC web services: XML-RPC (XML Remote Procedure Call) is a protocol that is used to create and exchange web services. XML-RPC web services are typically used for simple tasks that require a simple data format.How to Use Web Services:There are many different ways to use web services. Some of the most common ways to use web services include:Using a web services client library: A web services client library is a library that provides a set of functions that can be used to interact with web services.Using a web services SDK: A web services SDK (Software Development Kit) is a set of tools that can be used to develop and deploy web services.Using a web services gateway: A web services gatewayis a device that can be used to connect to and interactwith web services.中文回答:什么是 Web 服务?Web 服务是一种软件应用程序,旨在通过互联网执行特定任务。
服务计算概述

• 美国乔治亚大学的大规模分布式信息系统实验室
• 澳大利亚新南威尔士大学服务计算研究组
• 国内
– .au/
– 语义服务、服务组合等
– 北航、中科院软件所、北京大学、浙江大学等
2. 面向服务的体系结构(SOA)
什么是“SOA”
• 从字面上看,SOA=Service(服务)+体系结构(Architecture)
– 张良杰承办Web服务计算(Web Services Computing)专题讨论,首 次将服务与计算结合,强调Web服务在分布式计算和动态业务集成 中的重要作用
• 2003年6月,美国拉斯维加斯举行第一届Web服务国际会议 (International Conference on Web Services) • 2003年11月,IEEE成立服务计算技术社区(Technical Community of Services Computing) • 2004年5月,改名为服务计算技术指导委员会(Technical Steering Committee for Services Computing)
Roles
企业向其客户暴露的一系列业务——”服务”
业务模型
一种体系结构风格,包括服务的提供者、服务的使用 者与服务中介。
体系结构
一组体系结构设计原则与模式,强调模块化、封装、 松散耦合、分离关注点、可复用、可组合性、接口与 实现分离等特性。
一种编程模式,包括一系列的标准、开发工具、开发 过程指南、运行时基础架构。
软件实现方式
山东大学软件学院
SSME V4.0
23
服务的含义
• 从外特性上看,一个服务被定义为显式的、独立 于服务具体实现技术细节的接口。 • 从内特性上看,服务封装了可复用的业务功能, 这些功能通常是大粒度业务,如业务过程、业务 活动等。服务的实现可采用任何技术平台,如 构件接口 J2EE、.Net等。
Visual COBOL 移动应用开发指南说明书

Step-by-step: the path from COBOL to mobileCreating an Air Miles Calculator demo in Visual COBOLStartThe move to mobile starts here A step-by-step guide to developing mobile apps using Visual COBOL.If you think mobile is beyond the capabilities of COBOL technology, think again – it’s easy to embrace mobile technology with Visual COBOL using this simple step-by-step guide.As developers, we have to act fast to keep up with enduser demands, one being the growth in mobile use, and the corresponding demand for mobile access to applications. With Visual COBOL, delivering great mobile apps doesn’t have to be complicated. Follow this guide, download the sample code provided, and see how you can develop a new mobile application based on your existing COBOL code.We’ve documented the process to show you just how easy it can be.Get started nowBring your application functionality togetherOnce you’ve decided on the key functions, isolate this code from the rest of the main application. Y ou might need to strip away code to achieve this, especially if there is an existing user interface in place. Now is also a good time to identify any application dependencies since these must be available too (or deleted out of the code if not required).Your goal is to arrive at a callable API that provides access to discrete functions for your mobile application. Y our existing application may already have this API architecture in place, in which case you won’t need to worry about this. Otherwise, look to bring your application functionality together under a single program or series of programs that can be called directly to provide the results. Remember, web services are generally stateless architectures – so you should treat every invocation as the initial program call and initialize elements, such as data items and opening files, as you need them. SOA approaches like REST pass state between client and server within the HTTP request, allowing you to pick up from where you last left off for any given user request.You can also take care of these aspects later on from the comfort of an IDE. You may also be wondering how to keep data and data files separate from another user request. Visual COBOL actually provides call containers (we call them run units) which run your procedural COBOL programs in isolation from the same set of programs that may be supporting another user’s request.1of 3Java or .NET based infrastructureThe next stage is thinking about the architecture of your application and the tools you’ll need to do the job. First you need to decide whether to base the application on a Java or .NET based infrastructure (you may already have an in-house standard defined). Either way, Visual COBOL enables you to compile your COBOL API directly to Java byte code or Microsoft Intermediate Language so it can run directly inside either the Java Virtual Machine or the .NET CLR.This means you can draw on tools in JVM and .NET to enhance your mobile application – here is what you’ll need: A web server orapplication serverThe mobile client will be sendingHTTP requests to the COBOL systemand these need to be processedand returned as HTML web pagesfor the client’s mobile browser.If you’re a Java-based companyand already have a Java AppServer available, use the Java AppServer, or consider an open sourcesolution such as T omcat. [Link to:http:// ] If yourarchitecture preference is .NET you’llneed Microsoft IIS installed. If youdon’t have IIS installed, Visual Studioincludes a limited version you canuse to get started.PortabilityBy choosing to build an HTML5application, the challenge of portabilitymoves from the device into thebrowser. While HTML5 offers goodcoverage, we still need to think aboutJavaScript for web programming.Fortunately, it’s a problem the softwareindustry has addressed – there arenow plenty of portable JavaScriptlibraries you can use. In this example,we’re utilizing a popular frameworkcalled jQuery. The jQuery Mobileextensions will provide us not only witha portable JavaScript library, but also arich, touchresponsive user experiencefor the end users.AJAX& JSONThe HTML5 application will needto communicate with a server-side COBOL service which we’llenable using web services. Webservice requests are achieved usingAsynchronous JavaScript and XML(or AJAX for short). The content ofthe request will be transmitted usingJavaScript Object Notation (or JSONfor short). APIs for both of thesecapabilities are available within thejQuery framework.What’s next?Watch the video showing how we built the appGet started! Take a free Visual COBOL trial and download the application code。
Web services

Web services
7
Structure in XML documents
• Well-formed
– All start-tags must have a matching end-tag
Example XML document
<persons> <person> <name>Anders</name> <city>Roskilde</city> </person> <person> <name>Peter</name> <city>Sorø</city> </person> </persons>
Web services
Implementing a service-oriented architecture
Web services
1
SOA Service-Oriented Architecture
• Nodes in a network make resources available to other participants in the network as services • Accessed in a standardized way • Loosely coupled services • Platform independent • Programming language independent • Web services makes SOA happen!
基于SOA体系结构软件开发的研究与实现

基于SOA体系结构软件开发的研究与实现SOA(Service Oriented Architecture,面向服务体系结构)是一种软件开发和设计方法,用于构建松散耦合、可重用和可扩展的系统。
SOA的核心理念是将业务功能划分为独立的服务,并通过网络进行通信和交互。
在基于SOA体系结构进行软件开发的研究与实现中,需要考虑以下几个关键点:1. 服务定义与描述:为了实现服务的独立和可复用性,需要对服务进行清晰的定义和描述。
通常使用Web Service Description Language (WSDL)或者Unified Modeling Language(UML)等标准化工具来描述和定义服务。
2.服务注册与发现:在SOA中,服务的注册与发现是实现服务间通信和交互的关键。
服务提供者需要将自己的服务注册到服务注册表中,而服务消费者则通过查询服务注册表来发现适合自己需求的服务。
这样可以实现服务的动态组合和调用。
3. 服务协作与编排:在SOA中,服务之间可能需要进行复杂的协作和编排。
这可以通过BPEL(Business Process Execution Language)等工具来实现。
BPEL允许将多个服务组合成为一个业务流程,并定义各个服务之间的交互规则。
4.服务安全与可靠性:在SOA体系结构中,服务的安全和可靠性是至关重要的。
因为通过网络进行通信,存在数据泄漏、篡改和服务不可用等风险。
为了保证服务的安全和可靠性,可以使用安全令牌、身份认证、消息加密和滚动事务等机制。
5.服务监控与管理:SOA体系结构中的服务是分布式的,因此需要对服务进行监控和管理。
监控可以包括服务的调用次数、响应时间、失败率等指标。
通过监控,可以及时发现和解决问题,确保服务的高可用性和可靠性。
在实际的软件开发中,可以使用一些成熟的SOA框架和工具来支持基于SOA体系结构的开发。
例如,Apache CXF、IBM WebSphere和Oracle SOA Suite等。
外文翻译---J2EE WEB应用架构分析

附录附录一:文献资料原文J2EE WEB应用架构分析1、架构概述J2EE体系包括java server pages(JSP) ,java SERVLET, enterprise bean,WEB service等技术。
这些技术的出现给电子商务时代的WEB应用程序的开发提供了一个非常有竞争力的选择。
怎样把这些技术组合起来形成一个适应项目需要的稳定架构是项目开发过程中一个非常重要的步骤。
完成这个步骤可以形成一个主要里程碑基线。
形成这个基线有很多好处:各种因数初步确定:为了形成架构基线,架构设计师要对平台(体系)中的技术进行筛选,各种利弊的权衡。
往往架构设计师在这个过程中要阅读大量的技术资料,听取项目组成员的建议,考虑领域专家的需求,考虑赞助商成本(包括开发成本和运行维护成本)限额。
一旦架构设计经过评审,这些因数初步地就有了在整个项目过程中的对项目起多大作用的定位。
定向技术培训:一旦架构师设计的架构得到了批准形成了基线,项目开发和运行所采用的技术基本确定下来了。
众多的项目经理都会对预备项目组成员的技术功底感到担心;他们需要培训部门提供培训,但就架构师面对的技术海洋,项目经理根本就提不出明确的技术培训需求。
怎不能够对体系中所有技术都进行培训吧!有了架构里程碑基线,项目经理能确定这个项目开发会采用什么技术,这是提出培训需求应该是最精确的。
不过在实际项目开发中,技术培训可以在基线确定之前与架构设计并发进行。
角色分工:有了一个好的架构蓝图,我们就能准确划分工作。
如网页设计,JSP 标签处理类设计,SERVLET 设计,session bean设计,还有各种实现。
这些任务在架构蓝图上都可以清晰地标出位置,使得项目组成员能很好地定位自己的任务。
一个好的架构蓝图同时也能规范化任务,能很好地把任务划分为几类,在同一类中的任务的工作量和性质相同或相似。
这样工作量估计起来有一个非常好的基础。
运行维护:前面说过各个任务在架构图上都有比较好的定位。
主流Web架构相互比较

主流Web架构相互比较2019年3月5日做WEB好几年了,各种语言和技术都稍有涉猎。
今天心血来潮,突然想总结⼀下。
其实不论什么技术,什么需求,通常WEB开发就是通过WEB前端管理⼀个或⼤或⼩或独⽴或分布式的关系型数据库,很多东西都是相通的。
这⾥说的WEB架构,是指WEB应⽤开发中每种技术独有的资源组织形式(包括⽂件,数据库,HTTP请求处理等。
注意并⾮OO的开发⽅式才有架构⼀说),也许说开发⽅式更容易让⼈理解⼀些。
REST架构风格是全新的针对Web应用的开发风格,是当今世界最成功的互联网超媒体分布式系统架构,它使得人们真正理解了Http 协议本来面貌。
随着REST架构成为主流技术,一种全新的互联网网络应用开发的思维方式开始流行。
REST是什么REST是英文Representational State Transfer的缩写,中文翻译为“表述性状态转移”,他是由Roy Thomas Fielding博士在他的论文《Architectural Styles and the Design of Network-based Software Architectures》中提出的一个术语。
REST本身只是为分布式超媒体系统设计的一种架构风格,而不是标准。
基于Web的架构,实际上就是各种规范的集合,这些规范共同组成了Web架构。
比如Http协议,比如客户端服务器模式,这些都是规范。
每当我们在原有规范的基础上增加新的规范,就会形成新的架构。
而REST正是这样一种架构,他结合了一系列的规范,而形成了一种新的基于Web的架构风格。
传统的Web应用大都是B/S架构,它包括了如下一些规范。
客户-服务器这种规范的提出,改善了用户接口跨多个平台的可移植性,并且通过简化服务器组件,改善了系统的可伸缩性。
最为关键的是通过分离用户接口和数据存储这两个关注点,使得不同用户终端享受相同数据成为了可能。
无状态性无状态性是在客户-服务器约束的基础上添加的又一层规范。
物联网专业英语参考答案

Text AExercisesI. Answer the following questions according to the text.1. The Internet of Things refers to uniquely identifiable objects (things) and their virtual representations in an Internet-like structure. The term Internet of Things was first used by Kevin Ashton in 1999.2. It stands for Radio-frequency identification. It is often seen as a prerequisite for the Internet of Things.3. Casagras is a global network infrastructure, linking physical and virtual objects through the exploitation of data capture and communication capabilities. This infrastructure includes existing and evolving Internet and network developments.4. In the IoT, physical and virtual …things‟ have identities, physical attributes, and virtual personalities.5. The original idea of the Auto-ID Center is based on RFID-tags and unique identification through the Electronic Product Code.6. The next generation of Internet applications which use Internet Protocol Version 6 would be able to communicate with devices attached to virtually all human-made objects because of the extremely large address space of IPv6.7. In the future the Internet of Things may be a nondeterministic and open network in which auto-organized or intelligent entities (Web services, SOA components), virtual objects will be interoperable and able to act independently (pursuing their own objectives or shared ones) depending on the context, circumstances or environments. 8. Embedded intelligence can be more clearly defined as: leveraging the capacity to collect and analyze the digital traces left by people when interacting with widely deployed smart things to discover the knowledge about human life, environmentinteraction, as well as social connection/behavior.9. In an Internet of Things, the precise geographic location of a thing — and also the precise geographic dimensions of a thing — will be critical.10. Currently, Internet of Things frameworks seem to focus on real time data logging solutions like Pachube: offering some basis to work with many "things" and have them interact. Future developments might lead to specific software development environments to create the software to work with the hardware used in the Internet of Things.II. Translate the following terms or phrases from English into Chinese and vice versa.1. deploy 1. v.展开,配置2. capability 2. n.(实际)能力,性能,容量,接受力3. framework 3. n.构架,框架,结构4. tag 4. n.标签,标识5. n.索引vi.做索引 5. index6. barcode 6. n.条形码7. identify 7. vt.识别,鉴别8. Intranet 8. n.内联网9. n.体系结构9. architecture10. sensor 10. n.传感器III. Fill in the blanks with the words given below.1. interconnected2. technology3. development4. predicting5. communications6. devices7. size8. speed9. affordable 10. seamlessIV. Translate the following passages from English to Chinese.Passage One在计算中,物联网指物(如家用电器)的网络。
基于Web Service的智能建筑信息集成

集 成 带 来 了 很 大 的 开 放 性 和 互 联 性 。 但 是 随 着 It n tn ae ne e t t的发展 ,使得智 能建筑 的智 能化 设备 r Or n 监控 、维护、管理 的应用 向着 It t n e 迁移 ,并可能与 me 高层其他平台管理系统进行连接 , 这对 O C技术的跨 P
Ss m C nt ci 系 统建 设 1 yt o s ut n e r o 3
计 算 机 系 统 应 用
ht:v .- a r. t l  ̄wcS . Bc pl —o a
21 0 2年 第 2 卷 第 7期 1
有重要 的作用 ,随着 科技 的不断进步, 智能建筑系统集 成技术 自 2 0世纪 9 0年代发展至今 已经经历了三个不
技术 ,但这种技术与平 台相关 。为 了实现跨平 台的系
统集成 ,又出现 了面向 We b的集成技术 。 1 向 We _ 3 b的集成 技术 面 向 We b的集成技术的核 心是利用 We evc b S ri e 技术进行 系统集成 。 bSri 技术采用 了面 向服务 W 了面 向协议 的系统 集成技术 ,这种技术的核心就是通信协议 的转换 ,实
质 上是 在 二进 制编码 层 面上进 行 协议 信息 模 型的转
换 ,这种集成技术的代价较 大,随着 I T技术的发展 出 现 了面 向平 台的集成技术 。 1 向平 台的集成技术 . 2
同的发展 阶段: 11面 向协议 的集成技术 .
调用该服务时 ,它首先到服务代理提供 的 目录上去 查 找该服 务,得到该服 务的 WS DL描述信息 ,然后根据 这些信息利用 S A O P的标准 R C方法来调用 服务提 供 P
WebServcies

WebServcies整理总结。
Web Service主要是为了使原来各孤立的站点之间的信息能够相互通信、共享而提出的一种接口。
Web Service所使用的是Internet上统一、开放的标准,如HTTP、XML、SOAP (简单对象访问协议)、WSDL等,所以Web Service可以在任何支持这些标准的环境(Windows,Linux)中使用。
注:SOAP协议(Simple Object Access Protocal,简单对象访问协议),它是一个用于分散和分布式环境下网络信息交换的基于XML的通讯协议。
在此协议下,软件组件或应用程序能够通过标准的HTTP协议进行通讯。
它的设计目标就是简单性和扩展性,这有助于大量异构程序和平台之间的互操作性,从而使存在的应用程序能够被广泛的用户访问。
在面向服务的体系结构(Service-Oriented Architecture,SOA)中,一组以这种方式交互的Web 服务定义了特定的Web 服务应用程序。
Web Service 最基本的组成部分为服务的提供者(Service Provider)和服务的请求者(Service Requester)。
这看起来很像C/S 架构的软件,与之不同的是,Web Service 两端的应用是通过基于标准的XML 格式的协议进行通信的,这种最常用的协议就是SOAP(Simple Object Access Protocol)。
当然,Web Services 不简单地只是按这种方式进行通信。
按照Web Service 的相关标准描述,服务的提供者应该首先通过WSDL(Web Service Definition Language)和UDDI (Universal Description, Discovery, and Integration)发布它所提供的服务到一个统注册这些服务信息的存储库中去。
这样,服务的请求者就也可以通过WSDL 和UDDI 发现到服务提供者提供的服务,并可以通过应用的调用方法来使用这个服务了。
Infoblox 服务关键网络顶层架构与系统考虑说明书

DevOps Automation IPAM & DNS
DHCP Infra Rollout and Zero Trust Provisioning
Security Ecoystem Integration &DNS Secutity
automation is overlooked or considered to be ?mandatory?with no consideration of integration points, metadata discontinuity and functional requirements for infrastructure automation. Choosing a unified end to end DNS solution from core to edge and far edge across all network slices provides the most redundant, recoverable and reliable solution available.
Security Considerations
Restrict caching DNS service to "subscribers only" to avoid acting as an open resolver to the Internet. ACLs must be set appropriately to ensure only valid users or applications are accessing DNS infrastructure. Enabling RPZ, ADP, Threat Insight for Data Exfiltration, provides best in class DNS security. Protect the DNS server and all the underlying protocols required to deliver DNS services (UDP/TCP/NTP/OSPF/BGP etc.) against security threats. By enabling and tuning Infoblox Advanced DNS Protection ?Threat Protect?. Implement Role Based Access Control such that access rights are aligned with the tasks to be executed using a least permissions model. Discover unknown devices deployed in the network and provide those details to IPAM (IP Address Management) with Infoblox Discovery. Secure DNS service for GRX/IPX (Behavioral and Signature-based protection). Enabling "Threat Defense, Threat Protect and Threat Insight" for Reputation, Signature and Behavioral threat mitigation improves security posture & reduces overall attack surface exposed to the Internet and internally. Increase visibility into which devices are making requests to connect to
IBM_ESB介绍

IBM_ESB介绍ThankYou!Thistime,therequestispassedthroughaMediationModule.TheMediationModule usesaMessageLoggerMediationPrimitivetologthemessagetoadatabase.TheRequestcontinuesonitswayasbefore:passedtotheimporttobesenttoXQuote.Thistime,whentherequestpassesthroughtheMediationModule,aDataBaseLookupPrimitiveisusedtolookuptheuseridinatableof“gold”users,thenaFilterisappliedIftheuserisagoldcustomer,therequestwillbepassedtoadifferentexternalWebService(offeredbyXIgnite)otherwiseitwillcontinueasbefore.Becausethemessageformatsdiffer,therequestisfirstpassedthroughanXSLTPrimiti vethatwilltransformthemessageusinganXPathexpression.Th eresponsefromXIgnitewillalsoneedtobetransformedaspart oftheMediationsothattheformatisasexpected.WebSphere ESBisdesignedtobeeasytousefrombothatoolsandaruntimeperspective.WebSphereIntegrationDeveloper,thetoolthatworkswithWebSphereESB,isbuiltforanintegrationdeveloper—some onewhounderstandsITsystemsandarchitecturesbutwhoisnotaJavadeveloper.BothWESBandWIDaredesignedtohelpcustom ersgetupandrunningquicklyandeasily,withcomprehensiveout oftheboxdocumentationandasimplifiedandvisualdevelopmentenvironment.Avisualcompositionmodelallowseasyorchestrationofmediationfunctions.Thefactthatthetoolisrolebasedmakesadministrationmucheasier.AdditionalNotes:Themediatio nfloweditorprovidesauniformapproachtoauthortheprocessingofmessage-basedone-waymodel(message-oriented)andrequest-responsebasedtwo-waymodel(service-oriented).WebSphereESBa ndWebSphereIntegrationDeveloperaresoldseparately.WIDcosts$3500/perseat.Forplanningpurposes,pricesforWebSphereESBareprojectedtobe$25KperCPU,however,thisissubjecttochange.Additionalinformationaboutlistedfeatures:Gain supportforavarietyofmessagingprotocolsincludingJMS1.1JMS1.1providedbyWebSphereApplicationServerCanexploitavarietyoftransports,includingTCP/IP,SSL,andHTTP(S)Allowsint eroperationwiththeWebSpherefamily,eg,WAS,MQ,Message/Event BrokersUtilizeabroadrangeofinteractionmodels(request/reply,point-to-point,publish/subscribe,etc.)tomeetyourrequire mentsLeverageadvancedWebservicessupporttoincorporateleadingedgecapabilitiesSOAP/HTTP,SOAP/JMS,WSDL1.1UDDI3.0ServiceRegistry,WebServicesGatewayWS-StandardsincludingWS-Security,WS-AtomicTransactionsTakeadvantageofacomprehensivec lientspackagetoextendyourenvironmentMessageServiceClientforC/C++extendstheJMSmodelformessagingtonon-JavaapplicaapplicationstoparticipateinJMS-basedinformationflowsWebServicesClientisaJAX-RPC-likewebservicesclientforC++toenabl esuserstoconnecttoWebserviceshostedonWebSpherefromwithinaC++environmentJ2EEclientsupportfromWebSphereApplicationServer,includingWebservicesClient,EJBClient,andJMSCli entAdditionalNotesforPossibleQuestions:Q.WhatareyourplansforaServicesRegistry?A.Todayyoucanstoreandlocate informationaboutservicesthroughtheIBMWebSphereUDDIRegistry.Youcandiscoverservicesintheregistrywhendevelopingnewservices,andatrun-timeyourmediationscanaccesstheregistry.Inthenearfuture,aServicesRegistryinWebSphereESBwill allowyoutolocateandmanageservicesinyourregistrythrough aflexibleregistrationandqueryinterfaceeitherthroughaUI oranAPIthatcanbeusedinpackagedorcustomtools.Longerterm,you’llbeabletointegrateyourserviceregistryentitiesan dyourgeneralmetadataandworkwiththemasaunit,e.g.,throughsharedclassificationschemes,acommonapproachtoqueryinga ndmanipulatingyourmetadataandregistrycontent.Additionalinformationaboutlistedfeatures:GainsupportforavarietyofmessagingprotocolsincludingJMS1.1JMS1.1providedbyWeb SphereApplicationServerCanexploitavarietyoftransports,includingTCP/IP,SSL,andHTTP(S)AllowsinteroperationwiththeWebSpherefamily,eg,WAS,MQ,Message/EventBrokersUtilizeabroadrangeofinteractionmodels(request/reply,point-to-point,publish/subscribe,etc.)tomeetyourrequirementsLeverageadvance dWebservicessupporttoincorporateleadingedgecapabilitiesSOAP/HTTP,SOAP/JMS,WSDL1.1UDDI3.0ServiceRegistry,WebServicesGatewayWS-StandardsincludingWS-Security,WS-AtomicTrans actionsTakeadvantageofacomprehensiveclientspackagetoexte ndyourenvironmentMessageServiceClientforC/C++extendstheJMSmodelformessagingtonon-Javaapplications.MessageServiceapplicationstoparticipateinJMS-basedinformationflowsWebServicesClientisaJAX-RPC-likewebservicesclientforC++toenablesuserstoconnectto WebserviceshostedonWebSpherefromwithinaC++environmentJ2EEclientsupportfromWebSphereApplicationServer,includingWebservicesClient,EJBClient,andJMSClientAdditionalNotesforPossibleQuestions:Q.WhatareyourplansforaServicesRegistry?A.Todayyoucanstoreandlocateinformationaboutser vicesthroughtheIBMWebSphereUDDIRegistry.Youcandiscovers ervicesintheregistrywhendevelopingnewservices,andatrun-timeyourmediationscanaccesstheregistry.Inthenearfuture,aServicesRegistryinWebSphereESBwillallowyoutolocatea ndmanageservicesinyourregistrythroughaflexibleregistrati onandqueryinterfaceeitherthroughaUIoranAPIthatcanbeusedinpackagedorcustomtools.Longerterm,you’llbeableto integrateyourserviceregistryentitiesandyourgeneralmetadataandworkwiththemasaunit,e.g.,throughsharedclassificationschemes,acommonapproachtoqueryingandmanipulatingyourmetadataandregistrycontent.Beyonditsintelligentconnectivityandeaseofusebenefits,WebSphereESBisdesignedtoimproveyourtimetovalue.Asacosteffectivesolutionforservicesintegration,WESBisdesignedtomakeSOA“real”andassuchwisintegration,WESBisdesignedtomakeSOA“real”andassuchwillallowyoutoLeverageyourSOAITinvestmentsbyquicklybuildingaflexibleintegrationinfrastructuretoextendthevalueofyourexistinginvestments,regardlessofvendor.Itsmodularapproachsupportsabilitytostartsmallandgrowasfastasthebusinessrequires,andtheextensivebusinessandITstandardssupportfacilitategreaterinteroperability&portability.FirstclasssupportforhundredofISVsolutionsthroughextensiveWebSpher eAdaptersupportandthenumerousWASandMQpartnersintheWeb SpherePartnerecosystemmakeiteasytoconnecttoyourexistingassets.Pre-builtmediationfunctionssavetimeandmoneybecauseverylittleadditionaldevelopmentisrequired.Furthermore,w ithWebSphereESByousavetimewhenyoucanchangeyourserviceinteractionswithouttakingyoursystemdown.AdditionalNotes:CompleteMediationlist,delliveredateGA:XSLTMessageLoggerM essageRouterFailStopDatabaseLookupCustomComponentFinally, WebSphereESBofferswhatsimilarofferingsdonot—seamlessintegrationwiththeWebSpherePlatform.AsImentionedbefore,WebS phereESBisbuiltontopofWebSphereApplicationServerNetworkDeployment.Assuch,itinheritsallofthemarket-leadingqualitiesofservice,includingscalability,clustering,andfail-over,uutilizesthecommonWebSphereAdministrativeConsoletoenabl esystemmanagementacrossWebSphereApplicationServer,WebSphereESB,andWebSphereProcessServer,andaaddressesend-to-endsecurityrequirementsonauthentication,resourceaccesscontrol,dataintegrity,confidentiality,privacy,andsecureinteroperabilityBecauseWebSphereESBisbuiltonthisfoundation,customers caneasilyextendtoleverageWebSpherePlatformasneedsdictate.CustomerswiththerightskillscantakefulladvantageoftheunderlyingcapabilitiesofWebSphereApplicationServerNetworkDeployment.ExtendyourexistingWebSphereMQmessagingfoundationtointegratenewenvironmentsinanopen,standards-basedway.Finally,ccommontoolingandadministrationmeansthemovefromWebSphereESBtoWebSphereProcessServerispainless.WebSphereESBintegrateswithotherIBMSoftwareofferings,aswell,includingIBMTivolisecurity,directory,andsystemsmanagementofferings.WESBincludesTivoliAccessManager,foroptionaluse,todeliverasecure,unifiedandpersonalizedexperiencethatwillhelpmanagegrowthandcomplexity,anditintegrateswithIBMTivoliCompositeApplicationManagerforSOAforaddedmonitoringandmanagementcapabilities.Managingcompositeapplicationsbasedonserviceorientedarchitecturespresentamixofnewandtraditionalchallenges,asservicesneedtobetreatedbythemanagementinfrastructureasfirst-classmanagedobjects,conformingtodefinedservicecharacteristics.IBMTivoliCompositeApplicationManagerforSOAhelpsyoumonitor,manageandcontroltheseservice-basedapplications.ThissolutionisintegratedwiththeIBMTivoliEnterprisePortal,whichenablesend-to-endresource,application,transactionandservicemanagementacrossyourITinfrastructure.Attheoperationallevel,eachmodulemapstoasingleWebSphereapplication.AdminpanelsallowsimplenavigationtoandcontroloftheseapplicationsScenario1demonstratesthecapabilitiesofWebSphereESBwhenusedalone.Itassumesthatalmostalloftheinterfacesareservices-based(eitherSOAP/JMSorSOAP/HTTP).ItcanalsotalktoWebSphereMQorWebSphereMessageBrokeroranadapterifitneedstotalktoanysystemthatisnotusingtheWebServicesorJMSmodel.Solution:ShareTraderutilizedWebSphereESBtoimplementanEnterpriseServiceBusthat:RoutesincomingrequestsfromtheWebsitetotheappropriateservicebasedonthecustomer’sstatususingcontentbasedroutingTransformstherequesttotheappropriateformatforthetargetdestinationusingXSLTandprotocoltransformationandroutesrequestbacktosourceEnablesShareTradertoseamlesslytransitionserviceendpoints.ShareTraderrecentlymovedfromaninternallyprovidedstockquoteservicetoamoredependableexternalproviderwithoutanyimpacttotherestoftheoffering.NotethatWindows2000supporthasbeenremoved!!ThisisduetoMicrosofthavingdroppedsupportforthisplatformrecently.LinuxonpSeriescomingpostGA.Solaris10supportcomingpostGA.NotethatWindows2000supportisgone!!ShipswithWebSphereMQV6–ifV5.3isnotdetectedthenV6isinstalled.IBMESB案例分享民航航空安全系统整合技术⽅案民航信息建设要求利⽤现代信息技术建⽴完整的⾼速⽹络交换平台建⽴⾼效、及时、准确、完整、统⼀的民航安全运⾏管理信息系统满⾜各种应⽤系统集成的需要完整的管理机制满⾜运⾏和维护的需要航安系统整合实现框架⽅案总结-民航航空安全系统整合技术⽅案⾸先保证在⼀个异构的环境中实现信息稳定、可靠的传输屏蔽掉⽤户实际中的硬件层、操作系统层、⽹络层等相对复杂、烦琐的界⾯,为⽤户提供⼀个统⼀、标准的信息通道,保证⽤户的逻辑应⽤和这些底层平台没有任何关系提供⼀个基于application-hub的先进应⽤整合理念,最⼤限度地减少应⽤系统互联所⾯临的复杂性基于WBI系统的实现维护都相对简单,保证每⼀个应⽤系统的更新和修改都能够实时地实现,当新的应⽤系统出现时能够简便的纳⼊到整个IT环境当中,与其它的应⽤系统相互协作,共同为⽤户提供服务,是我们实现企业应⽤互联和流程管理的最佳实现⽅案中国⼈民银⾏国库信息处理系统建设⽬标国库信息处理系统(TreasuryInformationProcessingSystem)是⼀个以国库横⾏联⽹的业务流程和⼯作流程为基础,连接税务、财政、国库及商业银⾏等业务部门的信息集成处理系统,⽤于传递、处理税款缴纳、划分、⼊库、退库、对账、业务监管、统计分析等各项业务的电⼦信息。
Web服务实现

服务部署
myFirstWebService.asmx 部署在IIS上。 如:新建一个虚拟目录firstService (物理路径为 F:\myfirst) myFirstWebService.asmx复制到F:\myfirst 在IE中输入
firstService /myFirstWebService.asmx
public partial class Login : System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e) { } protected void ImageButton1_Click(object sender, ImageClickEventArgs e) {
<%@ WebService Language="C#" CodeBehind="~/App_Code/myFirstWeb Service.cs" Class="myFirstWebService" %>
指示C#编译器把类myFirstWebService编 译成一个具有Web输出方法的Web服务。
//登录 string name = txtName.Text.Trim(); string password = txtPwd.Text.Trim(); erService user = new erService(); if (user.CheckLogin(name, password)) {
Web服务的使用者永远是另一个应用程序
实例应用
访问网络中已有的Web服务 如 .NET系列的Web服务,扩展名.asmx 系统列出了有关操作的简单说明、测 试接口、一些请求和响应的示例。
第5章Web Services与SOA

WSRF
OGSI通过封装资源的状态,将具有状态的资源建 模为Web服务,这种做法引起了“Web服务没有 状态和实例”的争议。同时某些Web服务的实现不 能满足网格服务的动态创建和销毁的需求。 OGSI单个规范中的内容太多,所有接口和操作都 与服务数据有关,缺乏通用性,而且OGSI规范没 有对资源和服务进行区分。OGSI使用目前的Web 服务和XML工具不能良好工作,因为它过多地采用 了XML模式的基本用法和属性等,这可能带来移植 性较差的问题。 上述原因促使了Web服务资源框架(Web Service Resource Framework,WSRF)的出现。
5.3 SOA
SOA是一场革命,其实质就是将系统模型与 系统实现分离。
SOA定义
大致上可分为狭义和广义两大类: (l)狭义上认为SOA主要是一种架构风格,是以基 于服务、IT与业务对齐作为原则的IT架构方式。 (2)广义上把SOA看作是包括了编程模型、运行环 境和方法论等在内的一系列企业应用解决方案和企 业环境,而不仅仅是一种架构风格。SOA覆盖了软 件开发的整个生命周期,包括软件建模、开发、整 合、部署、运行等环节。rvices定义为:Web Services是为实现跨网络操作而设计的软件 系统,提供了相关的操作接口,其他应用可 以使用SOAP消息,以预先指定的方式来与 Web Services进行交互。
Web Services的目标
Web Services的目标是消除语言差异、平 台差异、协议差异和数据结构差异,成为不 同构件模型和异构系统之间的集成技术。 Web Services独立于开发商、开发平台和 编程语言,提供了足够的交互能力,能够适 合各种场合的应用需求。
Web Services体系结构模型
web服务工作原理

web服务工作原理Web services are an integral part of today's digital world. It is important to understand the working principles of web services to fully appreciate their significance and utility. Web services operate on a client-server model, where the client sends a request to the server, which in turn provides a response. This interaction follows a set of rules and standards that allow different systems to communicate with each other seamlessly.Web服务是当今数字世界的一个组成部分。
了解Web服务的工作原理对于充分认识它们的重要性和效用至关重要。
Web服务采用客户端-服务器模型运行,其中客户端向服务器发送请求,服务器则提供响应。
这种交互遵循一套规则和标准,使不同的系统能够无缝地相互通信。
At the core of web service working principles is the use of standard protocols such as HTTP, XML, SOAP, and WSDL. These protocols enable the exchange of data between the client and the server in a format that is understandable and interoperable across different platforms and programming languages. For example, HTTP is used for sending requests and receiving responses, XML is utilized forencoding the data, SOAP is employed for structuring the messages, and WSDL is used for describing the web services.Web服务工作原理的核心是使用诸如HTTP、XML、SOAP和WSDL等标准协议。
基于Web Services架构的国际结算平台设计

捌
.
— 瑁一
l浏览器l ———' 丽 两
上
Act 。 理I
曩糍霹展 教曩痒■舞●
■ 鬣 务
州
ic欺变付量菇
奠 ●摩 持久 属
H · *
托 燃蚺 纂朦 务 德用谖■壕 静
…
j’ …_¨j 二 墨~
意 =0 t 鼍 蠢
_
~
lob 靠 眶{ I计
。 I
国 际结 算一 般是 国际 间的用 货 币清偿 债 权和 债 务 的行为 ,或 者 在转 移 资金 中产 生 的交往 或 者联 系 ,信用 证 、汇 款 以及托 收 均为 目 前较 通用 的 主流 国 际结算 方 式 ,在信 息 交互 的流 程 中如 果采 取此 类 方式 与客 户 交换 信 息 ,涉 及 的范 围会 及其 广 泛 ,除 了客户 、客户 所 在 银 行之 外 ,甚 至代理 行也会被涉 及, 问题是 ,业务系统在 三方之 间 往 往达不 到一致 , 因而 产生 了一系列 的问题 ,其 中尤 其突 出的弊端则 是在企业 的信息 化这一 项上 ,在 业务进 行信息 交流 、访 问业务数 据 资 源进 行数据 结算 时产生 限制 ,影 响正 常结算 。此类 问题 成为 了各方关 注 的 问题 ,在 国际结算 平台 的开发过程 中 ,解 决 问题 的重心就在 于如 何保障 资源访 问和 消息传 递稳 定、 安全 、有效 ,以Web Services技术 对 国际结算 系统核心进行 实现则是一种 有效解决 问题的方式 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Web Services Based Architectures to Support Dynamic Inter-organizational Business ProcessesRainer SchmidtDepartment of Computer ScienceUniversity of Applied SciencesBeethovenstraße 173430 AalenRainer.Schmidt@fh-aalen.deAbstract. Dynamic inter-organizational business processes are necessary to en-able the flexible creation of partnerships in areas such as e-commerce and sup-ply-chain-management. Although many information system architectures forthe support of static inter-organizational business processes exist, such archi-tectures are still not available for supporting dynamic inter-organizational busi-ness processes. In this paper the special requirements created by dynamic inter-organizational business processes will be analyzed and the contributions of ex-isting approaches and web services evaluated. Based on the paradigm of thecomposite application, an architecture designed to support dynamic inter-organizational business processes has been developed and will be introduced.Keywords: Dynamic Inter-organizational business process, composite appli-cation1 IntroductionSuccessful enterprises must be able to cope with quickly changing market require-ments and keep pace with the accelerated speed of economic change in areas such as e-commerce, e-procurement, supply-chain-management, etc. Enterprises, for exam-ple, must continually seek out new suppliers, which provide better products, or be willing to cooperate with new partners to develop more efficient supply chains. Each new partnership implies the creation or adaptation of business processes that cross organizational boundaries, and are best identified as “dynamic inter-organizational business processes”. The dynamic inter-organizational business processes entail a permanent building and dismantling of partnerships, which is the key difference be-tween them and (static) inter-organizational business processes, which have existed since the 1960s and have been based on technologies such as EDI [EDI]. The change from static to dynamic inter-organizational processes is further promoted by the ap-pearance of technologies that allow for the dynamic coupling of information and application systems. The Internet, the World Wide Web and, ultimately, Web Serv-ices [W3C] provide transparent access to services in distributed and heterogeneous environments. Web services based languages such as BPEL4WS [BPEL] offer the specification of business processes using web services. However, an architecture M. Jeckle and L.-J. Zhang (Eds.): ICWS-Europe 2003, LNCS 2853, pp. 123–136, 2003.© Springer-Verlag Berlin Heidelberg 2003124 R. Schmidtwhich describes how to create process instances of dynamic inter-organizational pro-cesses, and how to execute them, still does not exist.There is a plenty of research which covers the support of inter-organizational proc-esses (also named cross-organizational processes, cross-enterprise processes etc. see “3 Existing Approaches for the Support of Static Inter-organizational Business Proc-esses” later in this text). However, these approaches refer to static inter-organizational processes and not to dynamic ones. In order to analyse the requirements of dynamic inter-organizational business processes and to propose an architecture to support them, this paper will proceed as follows: first, basic terms and concepts in the area of business processes will be defined. Then, the requirements for the support of dynamic inter-organizational business processes will be identified. Using these requirements, existing approaches will be examined to determine whether they can provide at least partial solutions. This analysis is the basis for the development of an architecture to support dynamic inter-organizational business processes.2 Basic Concepts of Business Process SupportA business process is a bundle of activities, which requires one or several inputs and which creates value for the customer. [HaCh93]. A business process is formalized using a business process model, as illustrated in Fig. 1. The business process model defines a set of elements which represent the parts of the business process. It can be seen as a kind of language description containing words and rules about how to com-bine words to phrases. In most cases this ‘language’ consists of graphical elements and rules on how to connect them.Fig. 1. Business process supportUsing the elements and rules of the business process model, the real business proc-ess is formalized as business process schema (or schema for short). The business process schema abstracts the individual execution of the business process instance. Basically the schema defines the sequence of activities to be completed by the busi-ness process and the rules for carrying out certain activities in certain defined circum-stances. For example a schema of an order processing defines the activities to be per-formed to process the order and rules i.e. “Reject the order if the ordered product is out of stock”.Web Services Based Architectures 125 The business process schema is the template for creating business process in-stances. Business process instances (or instances for short) represent the concrete processing of an order, e.g. the processing of order number 4711. During execution of the business process instance, services are used to perform activities and to access data. The creation of instances and their execution is called, ‘support of business pro-cesses’.2.1 Requirements for the Support of Dynamic Inter-organizational BusinessProcessesDynamic inter-organizational business processes are processes that are distributed over several organizations and show a high fluctuation of partners. The set of organi-sations participating in the definition and execution of business process is dynamic and not static. Organizations participate in the execution of a dynamic inter-organizational business process by executing one, or more, sub-processes and pro-viding services for process execution even for sub-processes executed by other or-ganizations. To clarify these points, we will introduce the scenario that is illustrated in Fig. 2. The scenario contains a mechanical engineering firm and an electronic control systems manufacturer that combine their core competencies. The mechanical engi-neering company profits from making their products more ‘intelligent’ with the inte-gration of electronic control systems. The company for the production of electronic control systems gains access to new markets.Fig. 2. Scenario for dynamic inter-organizational business processes As both companies do not have infinite financial resources, they rely on represen-tation offices to acquire orders. Only one of these representation offices is shown in Fig. 2. Acquired orders are sent to both companies to verify the technical details of the order from both mechanical engineering and the control systems perspectives. Then, an external rating agency is consulted in order to verify customer credit-worthiness. This is done by querying the rating agencies rating system. The delivery date is calculated by querying the logistics system of an appropriate logistics provider. Lastly, an order confirmation is sent out (potential exceptions, e.g. a bad credit rank-ing are yet not covered). Six requirements for the support of dynamic inter-organizational business processes can be identified:126 R. SchmidtProcess AutonomyProcess autonomy is defined as the capability of autonomously defining and execut-ing business processes. Since the participating organizations of a dynamic inter-organizational business processes change quickly, all participants should be assured to retain their capability to define and execute business processes, even when they leave such a partnership. All participants must be able to enter into newer partnerships quickly. In the scenario, process autonomy would be destroyed by using a centralized business process support system installed at the mechanical engineering company. As process schemas and service descriptions are centralized at the mechanical engineer-ing company, the control systems company loses the rapid response ability to switch to another partner.FlexibilityDynamic inter-organizational business processes are subject to more changes than static inter-organizational business processes since greater potential sources of change requests exist. Therefore, the support of dynamic inter-organizational business proc-esses must be highly flexible.ScalabilityIn order to react to market changes it must be possible to provide quick support for additional business processes or to augment the instances of an existing business process significantly. Therefore, scalability is an important requirement of supporting dynamic inter-organizational business processes.Service AutarchyService autarchy is defined as the capability of independently associating the services needed to support business processes or sub-processes of them. Service autarchy guarantees that each organization participating in a certain business process can use the necessary services to execute their business processes without the involvement of a third party. Service autarchy is necessary to cope with business partner fluctuation typical to dynamic inter-organizational business processes. Only when it is possible to quickly change a service provider is it possible to change a business process quickly. In the scenario shown in Fig. 2, service autarchy would be lost by using a centralized Enterprise Application Integration (EAI) system at one company. For example, an EAI-system is installed at the mechanical engineering company. Services s1 and s2 provided by the rating agency and the logistics provider are centrally integrated. This means that they can not be directly accessed; every usage of the services would have to pass through the EAI system. This could be disastrous when the controls systems company switches to another partner because access to the services would be lost. Service Extensibility and IntegrationBecause dynamic inter-organizational business processes are subject to continual change, the set of services necessary to enable them is highly dynamic as well. New services must be continually integrated due to changes in the business processes. Therefore, an architecture to support inter-organizational business processes must be capable of integrating new and previously unknown services. The services may be highly-distributed and heterogeneous, because different organizations use different infrastructures. Service extensibility and integration describes the possibility ofWeb Services Based Architectures 127 quickly and transparently switching from a service, referred to as s2, and provided by the old logistics, to the service s3 provided by the new logistics service. Service s3 may be implemented in a totally different way than s2.Asynchronous Service EevolutionWhen dealing with dynamic inter-organizational business processes, services evolve independently. There is no centralized institution coordinating the evolution of serv-ices. In the scenario, illustrated in Fig. 2, the rating agency could introduce new and enhanced versions of its rating service s1 called s1’. This should not influence the established business process in any way. Asynchronous service evolution is defined as the capability to cope with services which evolve independently and without cen-tral coordination.The requirements for supporting dynamic inter-organizational business processes can be divided into two groups. Process autonomy, flexibility and scalability are pro-cess oriented requirements. They deal with the definition, management and execution of business processes. The second group are service oriented requirements, which include service autarchy, service extensibility and integration and asynchronous service evolution.3 Existing Approaches for the Support of StaticInter-organizational Business ProcessesThe support of (static) inter-organizational business processes is a frequently men-tioned topic with many concepts. To identify possible contributions to the support of dynamic inter-organizational business processes, a selection of approaches will be examined using previously identified requirements.The first group of approaches tries to create a support for inter-organizational busi-ness processes based on CORBA [OMG] such as [VoWe99]. The most advanced approach is the WorCos-concept [Schu99]. The primary goal of the WorCos-concept is the support of business processes on the basis of a workflow service, which is inte-grated into the Object Management Architecture (OMA) [OMG]. In [SBMW96] and [Böhm97], a proposal for a CORBA-Facility [OMG] is made. WorCos is a purely object-oriented approach. Business processes, are represented as CORBA objects, created by compilation. The objects contain nearly the complete functionality to exe-cute a specific business process, such as role associations, process state and meta data. Therefore, the execution of business process instances is centralized in these objects. The Mentor project [WoWe97], [WeMW98] is aimed at supporting business proc-esses organization-wide. The fundamental idea of the ‘Mentor Project’ is to model business processes in the form of state and activity charts [Hare88]. In this manner, different schemas can be easily distributed and executed. However, the execution of the business process instances is centrally managed. The Meteor- and Meteor2-Projekt [Wang95] creates a fully distributed process support for company wide busi-ness processes based on CORBA. Integration into the WWW is described in [DKMS96], [MPSK98]. In Meteor, business processes are represented in a Workflow Intermediate Language (WIL). This specification is used to generate task managers128 R. Schmidtwhich control parts of a business process. Task managers are independent execution units, which may be distributed throughout an organization.When the approaches listed above are carefully analyzed, two basic architectures can be identified. They are called, direct and indirect instance creation. In the direct instance creation architecture process instances are created directly from the process schema, and no intermediate structure exists. The process instances are created by interpreting the process schema as shown in Fig. 3. The engine which interprets the process schema also integrates services, e.g. s1 and 2. This architecture can be found in the Mentor approach.Fig. 3. Direct and indirect process instance creation High flexibility is the primary advantage of the direct instance creation. Changes to the process schema can be immediately implemented because the schema is inter-preted. However, this advantage is acquired by accepting the disadvantage of limited scalability since the interpretation is centralized and cannot be distributed. Since every step in the execution of the business process requires the involvement of the interpreter a central bottleneck is created. Furthermore, the existence of a centralized engine obliterates the process autonomy and service autarchy. Changes to sub proc-esses can only be implemented by interacting with the centralized interpretation en-gine, which also integrates all the services used during process execution. The inter-pretation also impedes service extensibility and integration, since the interpretation engine is not designed in an extensible way. The same applies for asynchronous service evolution.The other basic architecture - indirect instance creation - is also illustrated in Fig.3. Here, process instances are created in two steps. In the first step, a so-called schema representation is generated. It is a template used for the automatic generation of proc-ess instances called instantiation. In the second step, the schema representation is used to create business process instances, which can be executed independently. Both in-stantiation and execution can be separated from the generation of the schema repre-sentation. Furthermore, services such as s1 and 2 have, for example, have not to be centrally integrated.Indirect instance creation can be found in the Meteor and WorCos approaches. In WorCos, the schema representation consists of an object class created from the proc-ess schema. The instance creation is done in WorCos by creating instances of the object class. The use of two steps to create process instances is the reason for the high scalability of the indirect instance creation. The creation of a schema representationWeb Services Based Architectures 129 can be separated from instance creation and execution. By copying the schema repre-sentation and distributing it, process instances can be executed on a multitude of sys-tems. Thus a high scalability is achieved because many process instances are executed in parallel on separate systems. However, indirect instance creation offers only lim-ited flexibility, as changes to the process schema cannot be implemented incremen-tally. Process autonomy can be achieved by creating separate (sub-) schema repre-sentations for each sub process. In this way process autonomy can be achieved. Serv-ice extensibility and integration are impeded by the generating mechanism for the schema representation. The set of services is fixed, with the integration capabilities limited. The same applies for the asynchronous service evolution. Finally, the re-quirement of service autarchy is orthogonal to the concept of the indirect instance creation. By comparing the direct and indirect creation of process instances it can be easily seen, that there is a dilemma between flexibility and scalability. Direct ap-proaches provide flexibility but limited scalability; indirect approaches provide scal-ability but only limited flexibility.3.1 Web ServicesWeb Services [W3WS], [GrSi02] provide transparent access to services in a highly distributed, heterogeneous and dynamic environment. This achievement has been a goal within the field of computer science research for a long time. Web services real-ize the concept of a component as software unit, which is transparently accessible and makes explicit all context dependencies [Szyp96], [ScCi96]. An essential ingredient for the success of web services is the so-called, loose coupling of services. The im-plementation of loosely coupled services can be exchanged at run-time without side effects for the web service user. Loose coupling is crucial for service autarchy, be-cause such services can be quickly integrated or sorted out. Furthermore, the name space concept already introduced with XML [XML] is very useful for coping with asynchronous service evolution by creating a decentralized versioning mechanism. Different versions of a web service are differentiated by different name spaces. The basic Web Services technologies provide no direct business process support. When they are combined with the architectures identified so far, the direct and indirect in-stance creation, only an improved service integration and support for service evolu-tion is achieved. Therefore, applying Web Services to those architectures is not a remedy for the fundamental deficiencies found in these approaches.3.2 Web Services Based Approaches for Business Process SupportSoon after the definition of basic Web Services technologies such as SOAP [W3C] it became more and more obvious that web services also have to provide concepts for orchestrating and coordinating web services in order to support business processes.The Business Process Execution Language for Web Services (BPEL4WS) [BPEL] is based on WSFL and XLANG. It allows the specification of business processes and the definition of web services to be used in executing a specified business process [LeRo02].130 R. SchmidtBPEL4WS, WSFL and XLANG are language definitions which provide a set of elements and rules to describe business processes. Therefore, they can be thought of as a type of business process model. However, none of them provides concepts for executing and instantiating the defined schemas.3.3 Execution EnvironmentsA first approach for supporting the execution of business processes specified with the BPEL4WS is the IBM Business Process Execution Language for Web Services, JavaTM Run Time (BPWS4J) [BPWS4J]. The BPWS4J executes business processes using 3 documents. The process schema is represented in a BPEL4WS document. A WSDL-document [WSDL] specifies the interface that the business process provides to other business processes. A third document is used for specifying the web services used during execution [LeRo02]. BPWS4J creates process instances directly from the process schema by interpretation. Thus, BPWS4J is an approach using the direct in-stance creation. Therefore, the advantages and disadvantages of the direct instance creation approach also apply to BPWS4J. It is flexible, because process changes can be implemented immediately. However this flexibility is acquired in exchange for limited scalability.3.4 SummaryThe result of our investigations can be summarized as shown below in Fig. 4. Direct instance creation provides flexibility but fails to fulfil all other requirements. Indirect instance creation offers scalability and process autonomy, but does not provide serv-ice oriented requirements. Web services are not designed to support business proc-esses directly. Therefore, it is not surprising that they fulfil only the service orientedFig. 4. Fulfilment of the requirements for dynamic inter-organizational processes To create support for dynamic inter-organizational business processes by fulfilling all requirements, one has to combine the advantages of direct and indirect instance creation and combine them with the benefits gained from employing web services.Web Services Based Architectures 1314 Support for Dynamic Inter-organizational Business Processes byUsing Composite ApplicationsTo create an architecture which escapes from the dilemma of trading off either scal-ability or flexibility and to fully make use of the advantages offered by web services, two different strategies are possible.One strategy is to improve the scalability of direct instance creation architectures. For example, an attempt could be made to use several interpretation engines instead of only one. However, this does provide an answer to the fundamental problem that the ‘flow of control’ of the business process always returns to the interpretation en-gine. Therefore the centralized engine remains the bottleneck.The other alternative is to use the indirect instance creation architecture and to make the schema representation incrementally adaptable, so that it can be quickly modified according to a changed business process. To achieve this, the paradigm for creating a schema representation has to be changed. Up until now, all the approaches resulted in the creation of a schema representation as a classical monolithic applica-tion. One has to go through a kind of edit-compile-link cycle to change the schema representation.A paradigm which avoids these limitations is the composite application [Schm97]. Composite applications break with the thinking that applications and executables have to be one. A composite application is created by a set of interconnected and special-ized services as shown in Fig. 5.Fig. 5. Composite applicationThere is no central “executable” anymore which contains application functionality.All functionality remains in services which can participate in different composite applications. The services are integrated into composite applications via speciali-zation. The specialization is done by applying specialization information to the services. The specialization information contains both parameterisation and con-nection information. Parameterisation information adapts the service to the indi-vidual needs of the composite application. The connection information contains in-formation about the connection of the service with other services within the context of the composite application. The specialization information is not centrally stored but attached to the services. Therefore, every service “knows” what to do. An ex-ample is given also in Fig. 5. There are two composite applications A and B. They132 R. Schmidtare created using three services s1, s2 and s3. Composite application A is created by using services s1 and s2 with the specialization information denoted as “a”. The specialization information “a” of s1 contains the connection information repre-senting the connection between s1 and s2. Furthermore, both services are param-eterized. Composite application B is created by using services s2 and s3 using spe-cialization information denoted with a “b”. The paradigm of the composite appli-cation is used to create an incrementally adaptable and thus flexible schema repre-sentation. The starting point for this is the decomposition of processes and sub-processes into so-called representation elements. Representation elements can be easily identified by separating the business process functionality according into so-called aspect-elements [ScAs98]. Aspect elements are not further dividable; they are atomic parts of business processes which contain only functionality of one so called aspect [JaBu96]. Aspects are disjoint sets of elements of business process or workflow models. There are 5 basic aspects: the functional, control, informational, organisational and operational aspect [JaBu96]. The functional aspect describes how a business process is composed of sub-processes. The control aspect describes how activities are executed dependent on the result or completion of other activi-ties. In the organizational aspect, the relation between the business process and the organization structure is established. The operational aspect describes external services to be used during the process. The data flow is covered in the informa-tional aspect.Fig. 6. Decomposition of business processes into representation elements In order to illustrate the generation of a schema representation, a small fragment of a business process is transformed. The fragment defines, that above an order value of 5000 Euro, an extended check of the customer’s credibility by querying an (external) rating system shall take place. Otherwise a standard check is done by the accounting department. The representation elements are coloured according to the aspect they belong to. The full lines indicate temporal connections. Two representation elements connected in this way are meant to be executed consecutively. Dotted lines indicate client-server relationships.The first step to creating a composite application is the generation of representation elements from a business process schema provided as BPEL4WS document for ex-Web Services Based Architectures 133 ample, as illustrated in Fig. 7. The second step for creating a composite application is to search for web services which can implement the representation elements. This may be done by querying a service repository such as UDDI [UDDI]. For each repre-sentation element, an appropriate service has to be found. In the scenario below, the service associated with the representation element is delineated below the representa-tion element. In most cases, there is not a perfect fit; therefore, the search has to also include also services which can be properly adapted using specialization. Furthermore one service may fit well with several representation elements.Fig. 7. Generation of a composite applicationFor example service s3 can be used to implement a check of whether the order value is greater 5000 euro and a check of whether a customer is credit-worthy. This is possible, because the service may be adapted via parameterization to the respective criterion. The first use of the service tests the criterion order value, the second checks the credit-worthiness. The same applies to service s8 which is used to implement both the order confirmation and potential order rejection.In the third step, the specialization information is generated, as shown in Fig. 7. Appropriate parameterization information has to be provided to adjust the service to the individual needs of the business process. For example the order value which should initiate a detailed investigation of the customer’s credit-worthiness can be adjusted. At the same time, connection information also has to be generated according to the connections of the representation elements in the business process. It is impor-tant to notice, that services s3 and s3 have 2 sets of specialization information because both are used twice. The types of use are differentiated using context identifications, which are issued by the antecedent service. For example s1 issues context identifica-tion 1, s5 and s6 issue context identification 2. In this manner, s3 will test the order value if it is called by s1 and test credit-worthiness if it is called by s5 or s6.。