ServiceOriented Architecture and Web Service Technologies Veli Bier
Service-Oriented Architecture and Web Service Technologies Veli Biçer
Outline What is a service? Application Architectures Service-Oriented Architecture Web Service Technologies Semantic Web Services
Service What is a service? A service is a contractually defined behavior that can be implemented and provided by a component for use by another component. The mechanism by which needs and capabilities are brought together Well-defined, self-contained modules that provide standard business functionality and independent of the state or context of other services
Service Nurse Doctor Receptionist Technician -Patient-care -Manage files -X-ray films -Drugs -Inspection -Treatment Process Patient HIS ECP Clinical Systems RIS External Clinic Cure Business Objective PIS Hospital Policy SLAs Clinical Document
Service External Hospital External EHR [EHR System] Drug Info [Drug DB] Hospital Administration Patient Demographics Department [HIS] Radiology Order [RIS] Radiology Insurance Drug Company Pathology Order [PIS] Pathology Payment Claim Processing [ECP] Billing [ERP] Accounting Laboratory Order [LIS] Laboratory
Services are : a way of enabling business automation collection of capabilities Doctor service: inspect illnesses, treat patients, perform surgeries etc. implemented based on design principles Self-descriptive, loosely-coupled, autonomous, composable, discoverable
Application Architectures Monolithic Application Object-Oriented Application Client-Server 3 -tier, n-tier Distributed Objects Component Orientation Service Orientation
Service-Oriented Architecture What is SOA? A new generation distributed computing platform including: its own design paradigm, design principles, design patterns, architectural model, and related concepts, technologies, and frameworks.
Service-Oriented Architecture
Service-Oriented Architecture
Service-Oriented Architecture Client Applications Security Choreography Business Rules Orchestration Communication Trans. & Reliabil. Services Discovery Description
Service-Oriented Architecture Reference Architecture Define the essence of service oriented architecture To create a vocabulary and a common understanding of SOA Based on concepts present in all SOA’s A Reference Model defines SOA in an abstract sense. Example: Abstract = Service Description Concrete = WSDL
Service-Oriented Architecture
Service-Oriented Architecture
Service-Oriented Architecture
Web Services Current State-of-the-art in Web Service Technologies Enterprise Service Bus Description (WSDL, WS-Policy) Discovery (UDDI, eb. XML) Service-Components (SCA, SDO) Messaging (XML, XSD, SOAPAttachment) Transaction (WS-Transaction) Semantic Web Services (WSMO, OWL-S) Management (WSMF, WSDM) Orchestration (WS-BPEL) Security (WS-Security) WS-Choreography (WS-CDL, eb. BP) Transport (HTTP, HTTPS, SMTP, FTP) Internet Protocols Service-Composition Foundations Quality of Service
WSDL Web Service Description Language W 3 C effort, WSDL 2 final construction phase describes interface for consuming a Web Service: Interface: operations (input & output) Endpoint (location of service, URL) Access (protocol binding)
UDDI Universal Description, Discovery, and Integration Protocol OASIS driven standardization effort Registry for Web Services: provider service information technical access
WS-BPEL Web Services Business Process Execution Language a notation for specifying business process behavior based on web services Owned by OASIS, originally created by IBM and Microsoft
WS-BPEL Constructs: sequence: executes one or more activities sequentially. flow: executes one or more activities in parallel. switch: executes one of several paths based on the value of a condition. while: executes a specified activity as long as a condition is true. invoke: calls a web service. receive: receives an incoming web services call. reply: sends a response to a received web services call. variables: defines any global variables the process uses. assign: allows copying and manipulating data using XPath partner. Link: specifying the roles and message exchanges between communication partners
WS-BPEL Popular BPEL Architectures: Oracle SOA Suite IBM Web. Sphere Process Server Active. BPEL Software AG web. Methods Business Process Management Suite Microsoft Biz. Talk Apache ODE
Choreography Describe collaborations of parties by defining from a global viewpoint their common and complementary observable behavior Information exchanges, the jointly agreed ordering rules… Unlike processes, more than one party is included More like a global contract which can be realized by more than one parties W 3 C’s Web Services Choreography Description Language (WS-CDL) eb. XML Business Processes (eb. BP)
Choreography Place Lab Order Cardiology Hospital X Order Result Laboratory Hospital Y Confirmed Check Insurance Company
Enterprise Service Bus Gartner “An ESB is an architecture that exploits Web services, messaging middleware, intelligent routing, and transformation. It must support request/response communication between loosely coupled SOA business components and one-way message delivery for sending notifications to event-driven business components. It must also allow more-complex message exchange patterns (MEPs). ”
Enterprise Service Bus
Enterprise Service Bus What if we have more than one client: We need something to simplify this
Enterprise Service Bus route messages between WSs:
Enterprise Service Bus Connect Composite Applications, Portals, BI and BAM fx ESB Viewer Portlets BPEL Human Task BAM SOAP/HTTP/ Reliable SOAP OEMS, JMS, MQ, TIBCO Local, In Memory, Fastpath UDDI MDS Web UI SOAP JCA In Memory JMS EDI . NET SAP Java Mainframe Trading Partner Adapters Metadata Enrich WS Manager Transformation Security Value Mappings Distribute Apps Events Business Rules Protocol Bus Workflow Messaging System Routing. Xref Interoperability HA, Scalability
Enterprise Service Bus Popular ESB Architectures: Oracle SOA Suite IBM Web. Sphere ESB Sun’s open. ESB Mule ESB Apache Service. Mix Software AG web. Methods ESB Platform
Semantic Web Services Web 3. 0 Semantic Web Services, Semantic Wiki, Semantic BPs Web 2. 0 Web Services, AJAX, Wikis, Blog, RSS Semantic Web Ontology, OWL, RDF Logic, Rule, Query Web 1. 0 URL, HTML, HTTP, XML
Semantic Web Services Theseus: Research program for a new internet-based knowledge infrastructure Funded by German Federal Ministry of Economy and Technology(180 M€) http: //theseus-programm. de Research Topics: Automatic generation of metadata for multimedia files Semantic processing of multimedia documents Integrated methods and tools for ontology management Machine learning Situation-sensitive dialogue processing Innovative user interfaces
Semantic Web Services Annotate the WSs with machine interpretable descriptions Allow the automatic publication, discovery, selection, composition, mediation and execution of interorganization business logic Internet becomes a global common platform to support SWS applications Ontologies - basic building block
Semantic Web Services Usage Process: Publication: Make available the description of the capability of a service Discovery: Locate different services suitable for a given task Selection: Choose the most appropriate services among the available ones Composition: Combine services to achieve a goal Mediation: Solve mismatches (data, protocol, process) among the combined Execution: Invoke services following programmatic conventions
Thank you for your attention
- Slides: 34