SOA Service Oriented Architecture



Similar documents
Service Oriented Architecture

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures

Presentation Outline. Key Business Imperatives Service Oriented Architecture Defined Oracle SOA Platform SOA Maturity/Adoption Model Demo Q&A

Service Oriented Architectures

Research on the Model of Enterprise Application Integration with Web Services

What is Middleware? Software that functions as a conversion or translation layer. It is also a consolidator and integrator.

Service Oriented Architecture (SOA) An Introduction

How To Understand A Services-Oriented Architecture

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence

Lesson 18 Web Services and. Service Oriented Architectures

EAI OVERVIEW OF ENTERPRISE APPLICATION INTEGRATION CONCEPTS AND ARCHITECTURES. Enterprise Application Integration. Peter R. Egli INDIGOO.

Introduction into Web Services (WS)

Service-Oriented Architecture and Software Engineering

SOA Myth or Reality??

Enterprise Application Integration

How To Develop A Web Service In A Microsoft J2Ee (Java) 2.5 (Oracle) 2-Year Old (Orcient) 2Dj (Oracles) 2E (Orca) 2Gj (J

AquaLogic Service Bus

Cloud Computing & Service Oriented Architecture An Overview

Service-Oriented Architecture: Analysis, the Keys to Success!

SOA and Web Services. Larry Kramer Principal Applied Technologist June 9, A PeopleTools and Fusion perspective

Middleware Lou Somers

Technical Track Session Service-Oriented Architecture

Enterprise Integration Architectures for the Financial Services and Insurance Industries

Enterprise Application Designs In Relation to ERP and SOA

A standards-based approach to application integration

A Quick Introduction to SOA

Chapter 1 Introduction to Enterprise Software

Service-Oriented Architecture (SOA) vs. Component Based Architecture. Helmut Petritsch

ISM/ISC Middleware Module

Web Services Advanced Topics

What Is the Java TM 2 Platform, Enterprise Edition?

The Enterprise Service Bus

David Pilling Director of Applications and Development

The Service Revolution software engineering without programming languages

An Oracle White Paper November Oracle Primavera P6 EPPM Integrations with Web Services and Events

So You Want an SOA: Best Practices for Migrating to SOA in the Enterprise. Eric Newcomer, CTO

2 (18) - SOFTWARE ARCHITECTURE Service Oriented Architecture - Sven Arne Andreasson - Computer Science and Engineering.

CICS Modernization & Integration

Outline SOA. Properties of SOA. Service 2/19/2016. Definitions. Comparison of component technologies. Definitions Component technologies

Enterprise IT Architectures SOA Part 2

B. WEB APPLICATION ARCHITECTURE MODELS

Contents. Client-server and multi-tier architectures. The Java 2 Enterprise Edition (J2EE) platform

Service-oriented architecture in e-commerce applications

3-Tier Architecture. 3-Tier Architecture. Prepared By. Channu Kambalyal. Page 1 of 19

Chapter 6. CORBA-based Architecture. 6.1 Introduction to CORBA 6.2 CORBA-IDL 6.3 Designing CORBA Systems 6.4 Implementing CORBA Applications

What You Need to Know About Transitioning to SOA

Introduction to Service Oriented Architecture (SOA)

SAP NetWeaver & Enterprise Services Architecture

The Business Benefits of the Proliance Architecture. September 2004

An introduction to SOA and the HP NonStop server environment

Web Services - Consultant s View. From IT Stategy to IT Architecture. Agenda. Introduction

Web Services Basics. What Is a Web Service? There s no one official definition of Web services

Introduction to Service Oriented Architectures (SOA)

Leveraging Service Oriented Architecture (SOA) to integrate Oracle Applications with SalesForce.com

SOA Planning Guide The Value Enablement Group, LLC. All rights reserved.

Service Computing: Basics Monica Scannapieco

SOA Best Practices (from monolithic to service-oriented)

SOA REFERENCE ARCHITECTURE

How To Create A C++ Web Service

Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards)

Service Oriented Architecture (SOA) Implementation Framework for Satellite Mission Control System Software Design

Integrating Siebel CRM 8 with Oracle Applications

VALLIAMMAI ENGINEERING COLLEGE SRM NAGAR, KATTANKULATHUR DEPARTMENT OF COMPUTER APPLICATIONS SUBJECT : MC7502 SERVICE ORIENTED ARCHITECTURE

Service Oriented Architecture 1 COMPILED BY BJ

EBXML FEATURE SOAP WSDL. written by Una Kearns UDDI. Content Management & Web Services. 6 November

MIDDLEWARE 1. Figure 1: Middleware Layer in Context

Integration using IBM Solutions

Service-Oriented Architectures

What is the NXTware Evolution Server Peter Marquez, Product Marketing ecube Systems

Middleware and the Internet. Example: Shopping Service. What could be possible? Service Oriented Architecture

Classic Grid Architecture

The ESB and Microsoft BI

Service Oriented Architecture

Web Services and Service Oriented Architectures. Thomas Soddemann, RZG

SOA CERTIFIED JAVA DEVELOPER (7 Days)

Ambientes de Desenvolvimento Avançados

Cloud Computing Evolution Not Revolution

Oracle SOA Reference Architecture

WHITE PAPER. TimeScape.NET. Increasing development productivity with TimeScape, Microsoft.NET and web services TIMESCAPE ENTERPRISE SOLUTIONS

Service Mediation. The Role of an Enterprise Service Bus in an SOA

SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems

Movex vs Integration. Integration demands. Integration demands. Programvarurådet Agenda. Välkommen till Programvarurådets Seminaruim:

ITU-T Kaleidoscope Conference Innovations in NGN. Managing NGN using the SOA Philosophy. Y. Fun Hu University of Bradford

25 May Code 3C3 Peeling the Layers of the 'Performance Onion John Murphy, Andrew Lee and Liam Murphy

Base One's Rich Client Architecture

How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer

IBM Rational Rapid Developer Components & Web Services

Enterprise Server and Direct COBOL Web Services

Invocación remota (based on M. L. Liu Distributed Computing -- Concepts and Application

The Integration Between EAI and SOA - Part I

App Servers & J2EE Platform. Contents: Transaction Processing Monitors. TP Monitors (cont) TP-Monitors. TP Standards. TP Monitors (cont)

Web Services Strategy

4. Concepts and Technologies for B2C, B2E, and B2B Transaction

Web Services in Oracle Fusion Middleware. Raghu Kodali Consulting Product Manager & SOA Evangelist Oracle Fusion Middleware Oracle USA

Table of Contents. 1 Executive Summary SOA Overview Technology Processes and Governance... 8

Transcription:

Ambientes de Desenvolvimento Avançados http://www.dei.isep.ipp.pt/~jtavares/adav/adav.htm Aula 16 Engenharia Informática 2006/2007 José António Tavares jrt@isep.ipp.pt 1 SOA Service Oriented Architecture 1

Evolução para os Componentes na Industria B L M Component-based dept. C++, Eiffel, OOA/D B L M CORBA3.0, Pascal, Ada, (Booch, OMT, EJB, DNA, Distributed objects/systems Objectory) XML, e-commerce, COBOL, RPG, B L M CORBA2.0, Business component Structured OpenDoc, Object-orientation approach methodologies ActiveX, DCOM, B L M UML Structured programming 1970 1980 1990 2000 2010 B, Bleeding edge is a phase in which a few visionary organizations start to work out certain concepts and apply them, having to create new technologies from scratch or use existing technologies in a very unusual. L, Leading edge is a phase in which there is industry support for a new technology, but the right way to use this technology is still known to only a few organization. M, Mature is the phase in which the knowledge of a new approach is largely available and the supporting technologies are stable. 3 History of Distributed Computing Phase III Messaging MOM Phase II Components CORBA DCOM EJB Phase I Downsize Client/Server DCE 4 2

Issues with Existing Models Proprietary protocols Interoperability Platform lock-in Flexibility What is SOA? IT architecture for request - reply applications functions are modularized and presented as services Services are loosely coupled Service interface is independent of the implementation 3

Terminology Message Data exchanged between services Not Objects. Code doesn't travel Context Defines scope of action, conversation Clothes-line for state and infrastructure Destinations Target service or service class. Not "http://somewhere/" 7 Service Orientated Architecture An architectural approach to creating systems built from autonomous services Integration as a fore-thought rather than an after-thought A service is a program you interact with via message exchanges Services are built to last Availability and stability are critical A system is a set of deployed services cooperating in a given task Systems are built to change Adapt to new services after deployment 8 4

Four Tenets of Service Orientation 1. Boundaries Are Explicit 2. Services Are Autonomous 3. Services Share Schema And Contract, Not Class 4. Service Compatibility Is Determined By Policy ten et [ténnət] [ténnət] (plural (pluralten ets) noun noun something accepted accepted as as an an important important truth: truth: any any of of a set set of of established and fundamental and beliefs, beliefs, especially especially one one relating relating to to religion religion or or politics politics (formal) (formal) a tenet tenet of of Christianity [Late [Late 16th 16th century. century. From From Latin Latin,, literally literally he he or or she she holds, holds, the the 3rd 3rd person person present singular present singular form form of of tenere tenere to to hold. ] hold. ] Microsoft Microsoft Encarta Encarta Reference Reference Library Library 2005. 2005. 1993-2004 1993-2004 Microsoft Microsoft Corporation. Corporation. All All rights rights reserved. reserved. 9 Examples of Services Storage service Data transfer Troubleshooting service Common theme is monitoring service, storage services and query services. 10 5

Technology Agnostic Interaction SOAP / XML is the only hope COM, CORBA, RMI assume platform Anything binary assumes platform Any transport assumes platform XML InfoSet is the focal point 11 Characteristics of SOA Services have platform independent, self describing interfaces (XML) Messages are formally defined Services can be discovered Services have quality of service characteristics defined in policies Services can be provided on any platform Interoperable Composable SOA Loosely Coupled Re-Usable 12 6

Why SOA? The Cruel Reality Screen Scrape Message Queue Download File Screen Scrape ORB Download File Sockets Message CICS Gateway Transaction File Source: Gartner Transaction File Message Queue Screen Scrape Message Sockets Screen Scrape APPC Transaction File CICS Gateway Transaction File Download File RPC APPC ORB Message Queue RPC Why SOA? Respond to business changes Address new needs with existing applications Unlock existing application investments Support new channels & complex interactions Support organic business Oracle Financials Standard Interface Custom Order Standard Interface New Web Standard Interface New Supply Chain Management (Business Process or Composite ) Standard Interface Siebel CRM Standard Interface Mainframe HR Standard Interface.NET Inventory 14 7

Anatomy of a Service Service Consumer New Service Wrapped Legacy Interface Proxy Service Interface Service Implementation Composite Service 15 Service Communication Communicate with messages No knowledge about partner Likely heterogeneous Service Consumers Service Producers 8

Service Platform Service Consumers Service Delivery Bus Change Service Rules & Config Service Reporting & Mgmt Control Service Interfaces and Service Implementations 17 SOA Based on Standards SOA Tools App Dev Framework Web Service Distributed Management Web Service Choreography Web Service Orchestration Web Service Coordination Web Service Transactions Web Service Security Web Service Policy Web Service Reliable Messaging J2EE 1.4 WS-I I Basic Profile SOAP, WSDL, UDDI TPM, Mainframe, Legacy Sys s Databases J2EE Server (OracleAS 10g) B2B Partners 18 9

Benefits of SOA Better reuse Build new client functionality on top of existing Business Services Well defined interfaces Make changes without affecting clients Easier to maintain Changes/Versions are not all-or-nothing Better flexibility 19 Web Services 20 10

Conteúdo Introdução história da computação distribuída Arquitecturas SOAP WSDL UDDI 21 Web Services A Web Service is a method that is callable remotely across a network The Service Web will be the backbone of functionality for the coming generation of distributed applications 22 11

Web Services Web services são serviços oferecidos via Web. Web services são aplicações modulares que são autodescritas e podem ser publicadas, localizadas e invocadas de qualquer local na Web (ou numa LAN). let stock_value = apli2.get_stock("ibm") 23 Web Services 24 12

Web Services Companies, suppliers, partners, and customers must be able to work together Faster than ever before Over the Internet Or risk death by isolation Leverage Internet cost structure 25 Web Services Possible Solutions Distributed computing Web sites (portals) Web Services 26 13

Computação Distribuída CORBA/IIOP (OMG) www.corba.org/ Common Object Request Broker Architecture Internet Inter-ORB Protocol especialização TCP/IP de GIOP (General...) Statefull Programming Model Modelo orientado à ligação (overheads de sessão) COM e DCOM (MS) www.microsoft.com/com/ Complexo Orientado à ligação (overheads de sessão) RMI (SUN) java.sun.com/products/jdk/rmi/ Bom desempenho Apenas para a linguagem JAVA 27 Comunicação síncrona/assíncrona DCOM e RMI são orientados ao pedido/resposta Síncronos; não permitem envio de mensagens só num sentido JMS (Java) java.sun.com/products/jms/ Java Message Service Suporta filas de mensagens e o modelo editor/subscritor MSMQ (MS) www.microsoft.com/msmq/default.htm Microsoft Message Queueing Suporta trocas segura e fiável de mensagens, suporte para transacções, etc. 28 14

Web Services 29 Web Services Portal Limitations No standard way to expose functionality Integration is expensive and error-prone Hard to outsource Not designed to be used outside original scope The problem? HTML is designed for presentation to people Can t repurpose it in a general, reliable way Don t even think about screen scraping 30 15

Web Services 31 What Is a Web Service? The solution? Web Services! A Web Service exposes functionality to a consumer Over the Internet or intranet A programmable URL Functions you can call over the Internet 32 16

What Is a Web Service? Based on Web standards HTTP, XML, SOAP, WSDL, UDDI, with more to come Can be implemented in any language on any platform Black boxes Component-like, reusable 33 Web Services Standards XML is the lingua franca SOAP (Message format and protocol) WSDL (Web Services Description Language) UDDI (Directory) 34 17

What Is a Web Service? A Web Service combines the best features of distributed computing and portals and eliminates the worst Provides a mechanism for invoking methods remotely Uses Web standards (e.g. HTTP, XML) to do so 35 What is a Web Service? Web Services allow you to interconnect: Different companies Many/any devices s Different clients Not just browsers Distribution and integration of application logic Enable the programmable Web Not just the purely interactive Web Web Services are loosely coupled 36 18

What is a Web Service? New paradigm for Internet development Deliver applications as services Richer, customer-driven experience Continuous delivery of value/bits Third-generation Internet 37 What is a Web Service? Web Services fornecem uma abstracção entre o código da aplicação cliente e o código da aplicação servidor 38 19

What Is a Web Service? "Web services are modular, self-describing applications that can be published, located and invoked from just about anywhere on the Web or a local Network. The provider and the consumer of the XML Web Service do not have to worry about the Operating System, language environment or component model used to create or access the XML Web Service, as they are based on ubiquitous and Open Internet standards, such as XML, HTTP and SMTP." 39 Evolution of the Web HTML HTML HTML, XML HTML, XML Generation 1 Static HTML Generation 2 Web s Generation 3 Web Services 40 20

What is a Web Service? Web Service as an API Web Services API API OS BIOS Hardware 41 Benefits Everyone Leverage existing infrastructure Build or buy development decisions Minimize development time/costs Enterprises Integration imperative Dynamic, easy B2B relationships New Web-based businesses Greater personalization New services/new revenue streams Be everywhere vs. single destination 42 21

Web Services Overview Model Partner Web Service Other Web Services Internet + XML Partner Web Service End Users YourCompany.com Business Logic Tier Data Access and Storage Tier Other s 43 The Components of Web Services Web services are comprised of six fundamental components: 1. Delivery medium: Internet 2. Delivery protocol: HTTP 3. Message format/encoding: SOAP 4. Service descriptions: WSDL 5. Web Service Publication: UDDI 6. Web Service Discovery: WS-Discovery 44 22

Web Services Delivery Medium Web services use the Internet as the medium for service delivery. Therefore, only computers connected to the Internet can provide or consume a Web service. (Of course, what computers aren t connected to the Internet nowadays?) 45 Web Services Delivery Protocol Web services use HTTP HyperText Transfer Protocol as the delivery protocol. HTTP is a well-known, simple, open standard that is supported by Web servers, programming libraries, and common client applications, like Web browsers. 46 23

Web Services Message Format Communications to and from a Web service are packaged in messages formatted in SOAP, which stands for Simple Object Access Protocol. SOAP defines a protocol for formatting a message. SOAP messages are XML-formatted. We ll be examining SOAP extensively in future lectures! 47 Web Services Service Description Web services need to be self-describing. That is, a Web service needs to be able to spell out precisely what services it offers, how the services can be invoked, and the service interface. This description is accomplished with WSDL, or Web Service Description Language. WSDL is an XML-formatted file that provides this information vital to those who wish to consume the Web service. 48 24

Web Services Publication In order for others to be able to find out about the Web services a company offers, there is a public directory of Web services. UDDI, or Universal Description, Discovery, and Integration, is an online directory of Web services. This directory is jointly managed by IBM, SAP, SUN, Microsoft, and other major players. 49 Web Services - Discovery WS-Discovery specifies a protocol for developers to discover the Web services a particular Web site/company offers. WS-Discovery is useful for learning about the Web services a particular company or department provides. We ll talk about WS-Discovery in more detail in future lectures! 50 25

Two Views of Web Services Keep in mind that when working with Web services you will be taking one of two approaches: You will be a producer. This means you will be creating a Web service for others to utilize. You will be a consumer. This means you know of some Web service that you wish to utilize via a desktop application or Web page. As we will see throughout this class, both producing and consuming Web services with.net is a breeze! 51 Questionário Indique quais os problemas da herança por implementação na COP (Component Oriented Programming). Em que medida a composição tenta resolver esses problemas? Resposta por email até 06/12/2005 para jtavares@dei.isep.ipp.pt no corpo da mensagem. Não são admitidos ficheiros em anexo. 52 26

Questões? 53 27