Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Agenda
SOA evolution
SOA Story Service Oriented Architecture vs. Distributed Object Architecture XML - Extensible Markup Language Web Services A new Business Environment A new Enterprise Environment Pressures on the business Web Services Vs. Business Processes SOA Definitions Legacy Business Process Architectural Choke Point SOA Business Process
What is SOA?
Agenda
SOA potential benefits
SOA shifts the way we think Why an Enterprise SOA Strategy is Important Improve quality of service Vs. Drive costs down Consequences of not having an Enterprise SOA Strategy
Technology providers
Market Trends Technology Providers SOA Solution Types
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Story
SOA is not a new concept. Software engineers understand its principles mid 80's with distributed computing and remote procedure calls. Distributed Computing Architectures of the 90 did not reach the expected acceptance:
Open Software Foundation's (OSF's) Distributed Computing Environment (DCE) Object Management Group's (OMG's) Common Object Request Broker Architecture (CORBA)
Source: http://www.gartner.com/resources/111900/111987/111987.pdf
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Story
In 2003, SOA finally goes fully into the enterprise IT world, through web services Unlike CORBA and DCE, web services standards do not have detractors among manufacturers The flexibility of Web services to support multichannel applications The ability of SOAP to pass through firewalls, leveraging the ubiquity of HTTP Web services support application servers that host business logic The ESBs, which combine Web services with message-oriented middleware (MOM), plus some processing and routing capabilities
Fuente: http://www.gartner.com/resources/111900/111987/111987.pdf
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Story
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Some object-orientation principles, such as inheritance, do not fit into the service-orientation world. Some service-orientation principles, such as loose coupling and autonomy, are not directly promoted by objectorientation. 7
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Object-Orientation
Based on predefined class dependencies, resulting in more tightly bound objects.
Coarse-grained interfaces (service description) Fine-grained interfaces (APIs), Communication Message-based communication based on RPC or local API calls. Large unit of processing logic (service), May vary significantly in scope. Promotes the creation of activity-agnostic units of processing logic (services) that are driven into action by intelligent units of communication (message). Prefers that units of processing logic (services) be designed to remain as stateless as possible. Unit of logic (object) tend to be smaller and More specific in scope. Encourages the binding of processing logic with data, resulting in highly intelligent units (object). Promotes binding of data and logic, resulting In the creation of more stateful units (objects).
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
UML
Modeling
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Presentation
Three Tier
Client
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Web based
Browser + Dynamic content generation Enabling techniques: CGI, Java Servlet/JSP, MS ASP
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
MS DCOM
Distributed Component Object Model
OMG CORBA
Common Object Request Broker Architecture
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
CORBA Objectives
Distributed object computing middleware that shields applications from heterogeneous platform dependencies. To simplify development of distributed applications by automating/encapsulating
Object location Connection & memory mgmt. Parameter (de)marshaling Event & request demultiplexing Error handling & fault tolerance Object/server activation Concurrency Security
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Object Services: a collection of services (interfaces and objects) that support basic functions for using and implementing objects.
e.g. Naming, Trading, and Life Cycle Service
Common Facilities: a collection of services that many applications may share, but which are not as fundamental as the Object Services
e.g. e-mail facility
Application Objects: products of a single vendor on in-house development group that controls their interfaces.
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Domain Facilities
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Client
Object
Dynamic Invocation
IDL Stub
ORB Interface
IDL Skeleton
Dynamic Skeleton
Object Adapter
ORB Core
GIOP/IIOP/ESIOPS
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Object
IDL Skeleton
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Two-way Processing
Activate server
Implementation Repository 1S
In args
Client
Obj. ref.
1C
Object
3S
Process Request
4C
Return Request
Send request to server
IDL Skeleton
ORB CORE
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
CORBA Services
Services Object Life Cycle Naming Events Relationships Externalization Transactions Concurrency Control Property Trading Query Description Define how CORBA objects are created, removed, moved and copied Define how CORBA objects can have friendly symbolic names Decouple the communication between distributed objects Provides arbitrary typed n-ray relationships between CORBA objects Coordinates the transformation of CORBA objects to and from external media Coordinates atomic access to CORBA objects Provides a locking service for CORBA objects in order to ensure serialized access Supports the association of name-value pairs with CORBA objects Supports the finding of CORBA objects based on properties describing the services offered by the object Support queries on objects
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
J2EE
A platform for developing applications
Oct. 1994, Public introduction of Java Jan. 1996, JDK 1.0 released Apr. 1997, EJB specification announced Dec. 1998, Java 2, SDK 1.2 released Jun. 1999, J2EE announced Dec. 1999, J2EE platform released Sep. 2001, J2EE 1.3 released Nov. 2003, J2EE 1.4 released
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
JSP Desktop Java Application Other Device J2EE Client Java Servlet
EJB
EJB
J2EE platform
J2EE platform
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
J2EE Services
HTTP/HTTPS JAAS Java Authorization and Authentication Service JTA Java Transaction API JNDI Java Naming and Directory Service RMI-IIOP JDBC Java DataBase Connectivity JMS Java Message Service JavaMail JAXP Java API for XML Parsing Java IDL
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Proprietary
Microsoft controlled DCOM Implementing a CORBA architecture typically necessitated the decision to work with a single vendor's implementation of the specification.
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
loosely couples
Separates the participants in distributed computing interactions so that modifying the interface of one participant in the exchange does not break the other.
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
book loc=library
123
article ref
555
year
author
title
1995 California
Su
Purdue
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
DTD (contd)
Consider an XML document: <db><person><name>Alan</name> <age>42</age> <email>agb@usa.net </email> </person> <person> </person> . </db>
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
DTD (contd)
DTD for it might be: <!DOCTYPE db [ <!ELEMENT db (person*)> <!ELEMENT person (name, age, email)> <!ELEMENT name (#PCDATA)> <!ELEMENT age (#PCDATA)> <!ELEMENT email (#PCDATA)> ]>
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Comparisons
XML
Extensible set of tags Content orientated Standard Data infrastructure Allows multiple output forms
HTML
Fixed set of tags Presentation oriented No data validation capabilities Single presentation
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Web Services
Web services is an effort to build a distributed computing platform for the Web. Yet another one!
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Web service applications are encapsulated, loosely coupled Web components that can bind dynamically to each other
Video 1
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Client/Server WSDL CORBA NFS VT3270 MQ RPC EJB VT100 EAI SOAP TCP/IP WWW
SOA SOA
Stored Procedure COBOL Modular2 Pascal Smalltalk Java PROLOG Ada SIMULA
1970 1980
C# C++
1990 2000
Agenda
SOA evolution
SOA Story Service Oriented Architecture vs. Distributed Object Architecture XML - Extensible Markup Language Web Services A new Business Environment A new Enterprise Environment Pressures on the business Web Services Vs. Business Processes SOA Definitions Legacy Business Process Architectural Choke Point SOA Business Process
What is SOA?
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Value added networks and proprietary protocols support most B2B interactions Ad-hoc bridges support interorganizational interactions.
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
The frequency of external interactions and their reach inside the enterprise increases dramatically.
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Competition
Changing Markets
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Organization A
t1
Setup
+
Organization B
+
Organization C
t6 t7
Sequence Processing
t5 t2
Prepare Sample
t8
Process Report
t3
Prepare Clones and Sequence
t4
Assembly
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Globalization of Processes
B2B E-Services
Workflows Enterprise
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA
Uses open standards to integrate software assets as services Standardizes interactions of services Services become building blocks that form business flows Services can be reused by other applications
53
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Business Process 2
Business Process 3
54
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Shared Service
56
Video 3
Agenda
SOA evolution
SOA Story Service Oriented Architecture vs. Distributed Object Architecture XML - Extensible Markup Language Web Services A new Business Environment A new Enterprise Environment Pressures on the business Web Services Vs. Business Processes SOA Definitions Legacy Business Process Architectural Choke Point SOA Business Process
What is SOA?
Agenda
SOA potential benefits
SOA shifts the way we think Why an Enterprise SOA Strategy is Important Improve quality of service Vs. Drive costs down Consequences of not having an Enterprise SOA Strategy
Technology providers
Market Trends Technology Providers SOA Solution Types
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Reduces risk
More control over business processes by business people
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Improve availability
Consumption-based costing
Capacity
Heterogeneity
P&L contribution
Deliver services
Reduce complexity
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Agenda
SOA evolution What is SOA? SOA potential benefits
SOA shifts the way we think Why an Enterprise SOA Strategy is Important Improve quality of service Vs. Drive costs down Consequences of not having an Enterprise SOA Strategy
Technology providers
Market Trends Technology Providers SOA Solution Types
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Market Trends
Market development of software vendor integration / EAI to SOA Suites Market development of technology providers MOM / JMS to ESB (Enterprise ServiceBus) Market development of applications software vendors Web / Application Servers / APS(Application Platform Suites) to SOA Suites Market convergence of technology provider Web Services and SOA Convergence / fusion providers EAI / MOM / BPM / Integration / B2B / Application Servers / APS / Web
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
Technology Providers
Microsoft IBM BEA TIBCO Sun / SeeBeyond Oracle webMethods / Software AG SAP
IONA Cape Clear Progress / Sonic Software iWay Fujitsu Fiorano InterSystems PolarLake
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
http://mediaproducts.gartner.com/reprints/microsoft/vol1/article1/article1.html
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
SOA Evolution
What is SOA?
SOA Benefits
Tec. Providers
B2B
ETL
ESB
Video 5
Agenda
SOA evolution
SOA Story Service Oriented Architecture vs. Distributed Object Architecture XML - Extensible Markup Language Web Services A new Business Environment A new Enterprise Environment Pressures on the business Web Services Vs. Business Processes SOA Definitions Legacy Business Process Architectural Choke Point SOA Business Process
What is SOA?
Agenda
SOA potential benefits
SOA shifts the way we think Why an Enterprise SOA Strategy is Important Improve quality of service Vs. Drive costs down Consequences of not having an Enterprise SOA Strategy
Technology providers
Market Trends Technology Providers SOA Solution Types