service oriented architecture - rti · service oriented architecture j ... what do you think about...
TRANSCRIPT
1
RTI International is a trade name of Research Triangle Institute
3040 Cornwallis Road ■ P.O. Box 12194 ■ Research Triangle Park, North Carolina, USA 27709 Phone 9193163898 email [email protected] Fax 9195416178
Advanced Solutions Using Service Oriented Architecture
J. Eric Peele Brian Olive May 22, 2007
International Field Directors & Technologies Conference 2007
2
What do you think about SOA?
2007 Network Computing Reader Poll: Customer Dissatisfaction Guaranteed
3
Overview
1. What SOA is not
2. SOA Defined
3. Terms
4. From OO to SO
5. What is SOA?
6. 4 Tenets of SOA
8. SOA Benefits
9. Data Collection Drivers
10.What to Build
11.Pitfalls
12.Stated Benefits
13.Resources
4
What SOA is not
§ It is not a revolution, but an evolution
§ It’s not about XMLinyourface, latebound programming, or Web services, although these are parts of an implementation strategy used in SOA
“Service Oriented Architecture (SOA) is widely forecast to be the most profound transformation in the history of business and IT”.
CBDI, an independent research company
5
SOA Defined?
'A set of components which can be invoked, and whose interface descriptions can be published and discovered'
World Wide Web Consortium (W3C)
6
Coming to Terms with SOA
§ Service
§ Service Provider
§ Service Consumer
§ Message
§ Interface
§ Schema
§ Contract
§ Policy
7
From Objects to Services
Polymorphism Encapsulation Subclassing
Messagebased Schema+Contract+Policy Broad Interop
Location Transparent Tight Coupling Runtime Metadata
ObjectOriented ServiceOriented ComponentOriented
1980s 2000s 1990s
Source: “The Windows Communication Foundation” by Payam Shodjai, Microsoft Corporation, May, 2006
8
Compared to the Past
§ Like objects and components, services represent natural building blocks that allow us to organize capabilities in ways that are familiar to us.
§ Similarly to objects and components, a service is a fundamental building block that § Combines information and behavior. § Hides the internal workings from outside intrusion. § Presents a relatively simple interface to the rest of the organism.
§ Where objects use abstract data types and data abstraction, services can provide a similar level of adaptability through aspect or context orientation.
§ Where objects and components can be organized in class or service hierarchies with inherited behavior, services can be published and consumed individually or as hierarchies and or collaborations.
9
SERVICE ORIENTATION SERVICE ORIENTATION
Compatibility Based On Policy Compatibility Based On Policy
Share Schema & Contract, Not Class Share Schema & Contract, Not Class
Services Are Autonomous Services Are Autonomous
Boundaries Are Explicit Boundaries Are Explicit
Four Tenets of Service Orientation
Source: “The Windows Communication Foundation” by Payam Shodjai, Microsoft Corporation, May, 2006
Don Box Don Box Microsoft Corporation Microsoft Corporation January, 2004 January, 2004
“A service is simply a program that one interacts with via message exchanges”
10
Tenet 1: Boundaries Are Explicit
§ Services provide a contract to define the public interfaces it provides.
§ All interaction with the service occurs through the public interface.
§ The interface consists of public processes and public data representations.
§ The public process is the entry point into the service while the public data representation represents the messages used by the process.
11
Tenet 2: Services Are Autonomous
§ A Service’s location can change at (almost) any time due to the fact that they’re dynamically addressable
§ Neither the Service Provider or Service Consumer requires knowledge of each others’ internal workings in order to exchange data – they only need the published schemas & contracts
§ Neither party make demands on each other as to how the work is carried out
§ Services are entities that are independently deployed, versioned, and managed.
12
Tenet 3: Services Share Schema and Contract, Not Class
§ Classes combine behavior and data (messages) into a single programminglanguage or platformspecific construct. Services break this model apart to maximize flexibility and interoperability.
§ Schema defines the structure and content of the messages, while the service’s contract defines the behavior of the service itself.
13
Tenet 4: Service Compatibility Is Based Upon Policy
To interact with a service, two requirement sets have to be met:
§ the functionality, syntax and semantics of the provider must fit the consumer’s requirements,
§ the technical capabilities and needs must match.
14
Stated Benefits of SOA
§ Attain greater business agility from existing IT investments
§ Simplifies management of distributed resources across multiple platforms, requires less hardware, is more reliable, is standardsbased, and is less costly.
§ Enables development of a new generation of dynamic applications addressing a number of toplevel business concerns that are central to growth and competitiveness
§ Enhances business decision making by aggregating access to business services and information into dynamic, composite applications to provide more accurate and comprehensive information
§ Flexibility in access to information in form and presentation (Web, rich client, mobile device)
§ Greater employee productivity by providing streamlined access to systems and information and enabling business process improvement
15
Business Drivers in Data Collection
§ Siloed applications with minimal integration between them
§ Tightly coupled pointtopoint integration
§ Lack of real time business intelligence software that provides realtime key performance indicators (KPI) for decision making
§ Duplicate case data—each channel maintaining its own case data
§ Complex information integration
16
What Types of Services Do We Create?
§ Infrastructure services.
§ Data services—Simple atomic operations on an entity.
§ Activity services—Coordinate data services for business process execution.
§ Process services—Longrunning business processes, possibly complex workflow, and human interaction.
§ Event services—Notify subscribers of events.
17
Top 5 SOA Adoption Pitfalls
1. Not understanding SOA performance requirements
2. Not starting with an xml foundation architecture
3. Not creating a transition plan
4. Not standardizing SOA
5. Building SOA like traditional distributed architecture Source: “ServiceOriented Architecture: Concepts, Technology, and Design” by Thomas Erl
18
Warning
Building SOA for the sake of SOA without reference to the business context is a project without organizing principles and guidance. The result is a chaotic implementation that has no business relevance.
19
General Advice:
•Be skeptical
•Start small
•Assume the worst and plan for it
•Give it time to mature
The Shift to Service Orientation
20
References and Resources
§ “The Four Tenets of Service Orientation” by John Evdemon, Business Architectures and Standards, Microsoft Architecture Strategy Team, May 19, 2005. http://www.bpminstitute.org/articles/article/article/thefourtenetsofserviceorientation.html
§ “OASIS SOA Reference Model TC” by Organization for the Advancement of Structured Information Standards. http://www.oasisopen.org/committees/tc_cat.php?cat=soa
§ “The Windows Communication Foundation” by Payam Shodjai, Microsoft Corporation, October 2006. http://wcf.netfx3.com/files/folders/teched_2006_chalk_talks/entry6680.aspx
§ “Service Orientation and Its Role in Your Connected Systems Strategy” by Mike Burner, Microsoft Corporation, July, 2004. http://msdn2.microsoft.com/enus/library/ms954826.aspx
§ “10 Principles of SOA” by Stefan Tilkov, InfoQ, February, 2007. http://www.infoq.com/articles/tilkov10soaprinciples
§ “A Guide to Developing and Running Connected Systems with Indigo” by Don Box, Microsoft Corporation, January 2004. http://msdn.microsoft.com/msdnmag/issues/04/01/Indigo/default.aspx