Service Oriented Architecture
-
Upload
prabhat-gangwar -
Category
Services
-
view
83 -
download
0
Transcript of Service Oriented Architecture
![Page 1: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/1.jpg)
Service Oriented ArchitectureService Oriented Architecture
![Page 2: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/2.jpg)
Overview of the syllabusOverview of the syllabus
SOA characteristicsPrinciples of service orientation Web service and its role in SOAService oriented analysisService oriented designSOA platforms SOA support in J2EE and .NETSOA standardsService composition (BPEL)Security in SOA
![Page 3: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/3.jpg)
Prerequisite for understanding SOAPrerequisite for understanding SOA
Basic knowledge of object orientationUnderstanding of web technologiesBasics of java programmingBasics of internet programmingSoftware Paradigms
![Page 4: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/4.jpg)
Overview of the contentOverview of the content
Current trends Software paradigmsApplication architectureWeb based systems2-tier and 3-tier architectureWeb based technologies component based systems
![Page 5: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/5.jpg)
Current trends …Current trends …
Internet based solutionComplexity of the softwareGrowth in hardware mobile and other smart
devicesDemand for novel / customized services
![Page 6: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/6.jpg)
Software paradigms…Software paradigms…
Procedure oriented Object-orientedComponent based Event-drivenLogic basedAspect-oriented Service oriented
![Page 7: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/7.jpg)
The monolithic mainframe application architecture
Separate, single-function applications, such as order-entry or billing
Applications cannot share data or other resources
Developers must create multiple instances of the same functionality (service).
Proprietary (user) interfaces
![Page 8: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/8.jpg)
The distributed application architecture
Integrated applicationsApplications can share resourcesA single instance of functionality (service) can
be reused.Common user interfacesBottom-up approachReal world scenario
![Page 9: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/9.jpg)
Web based systems …
Client-server model Client side technologiesServer side technologiesWeb client, Web serversApplication servers
![Page 10: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/10.jpg)
Basic idea of TiersBasic idea of Tiers
Thick client
Database server
Tier 1: GUI interactions with the user and basic validations
Request
Response
Tier 3: Database processing
Web server
Tier 2: Application logic, Transaction Management, Calls to the database server
Application server
![Page 11: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/11.jpg)
2-tier architecture2-tier architecture
DatabaseDriver
DatabaseDriver
DatabaseDatabase
Tier Boundary
BusinessLogic
BusinessLogic
BusinessLogic
BusinessLogic
BusinessLogic
BusinessLogic
PresentationLogic
PresentationLogic
Data Layer
Presentation / Business Layer
![Page 12: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/12.jpg)
Two tier architectureTwo tier architecture
• Deployment costs are high
• Database driver switching costs are high
• Business logic migration costs are high
• The client has to recompile if the BL is changed
• Network performance suffers
![Page 13: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/13.jpg)
N-Tier architectureN-Tier architecture
DatabaseDatabase
BusinessLogic
BusinessLogic
DatabaseDriver
DatabaseDriver
BusinessLogic
BusinessLogic
BusinessLogic
BusinessLogic
PresentationLogic
PresentationLogic
Data Layer
Tier Boundary
Tier Boundary
![Page 14: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/14.jpg)
N-Tier architectureN-Tier architecture
• Deployment costs are low• Database switching costs are low• Business migration costs are low• A firewall can secure parts of the
deployment• Each tier can vary independently• Communication performance suffers• Maintenance costs are high
![Page 15: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/15.jpg)
Presentation tier technologiesPresentation tier technologies
At client or server? Property Microsoft Technology Sun Technology
Client HTTP (Web) based HTML browser (Internet Explorer)
HTML browser (Netscape Navigator)
ActiveX Controls Java Applets
Non-HTTP based COM clients CORBA clients
Communication Protocol between client and server
DCOM RMI, IIOP
Server For creating dynamic Web pages
ISAPI, ASP NSAPI, Servlets, JSP
Other pages HTML, XML HTML, XML
![Page 16: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/16.jpg)
Business tier technologiesBusiness tier technologies
Purpose Microsoft Technology Sun Technology
Transaction handing, Business Objects
COM, MTS EJB (Session Beans)
Queuing and Messaging MSMQ IBM’s MQSeries, Java Messaging Service (JMS)
Database access ADO, OLE, ODBC JDBC, J/SQL (via Entity Beans)
![Page 17: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/17.jpg)
Microsoft Web TechnologiesMicrosoft Web Technologies
HTML Browser
HTML Browser
ASP ISAPI
HTML/XML pages
Firewall
COM Client
ActiveX Control
DCOM DCOM
DCOM
MTS Transactional Components
MSMQ Queuing Services
ADO/OLE/ODBC Database Access
Database Database
Database Tier
Presentation Tier
Business Tier
![Page 18: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/18.jpg)
Sun’s Web TechnologiesSun’s Web Technologies
HTML Browser
HTML Browser
Servlet JSP
HTML/XML pages
Firewall
CORBA Client
Java Applet
RMI/IIOP
RMI/IIOP
EJB Session Beans
MQSeries/Java Messaging Service (JMS)
JDBC / SQL/J
Database Database
Database Tier
Presentation Tier
Business Tier
RMI/IIOP
EJB Entity Beans
![Page 19: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/19.jpg)
Component World …Component World …
Justification for component Interface ImplementationReusability standards
![Page 20: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/20.jpg)
Eject
Skip
- Volume +
- Bass +
Actual implementation in terms of voltages, signals, currents etc.
External world (a user of the audio
system)
Interface Implementation
Interface and ImplementationInterface and Implementation
![Page 21: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/21.jpg)
Technologies for implementing Technologies for implementing componentscomponents
RMI / EJB CORBA COM, DCOM, COM+LimitationsWeb services (XML based standards)
![Page 22: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/22.jpg)
Basic model of distributed systemBasic model of distributed system
Service Registry
Service Requestor
Service provider
find
Bind
Publish
![Page 23: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/23.jpg)
An Archetypal Distributed Objects System
o bje ct c lie n t o bje ct s e rv e r
clie n tpro x y
s e rv e rpro x y
ru n t im es u ppo rt
n e two rks u ppo rt
n e two rks u ppo rt
ph y s ica l da ta pa th
lo g ica l da ta pa th
o bje ctre g is t ry
ru n t im es u ppo rt
![Page 24: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/24.jpg)
Distributed Object Systems / Protocols Distributed Object Systems / Protocols
• The distributed object paradigm has been widely adopted in distributed applications, for which a large number of mechanisms based on the paradigm are available. Among the most well known of such mechanisms are: ~ Java Remote Method Invocation (RMI),
~ the Common Object Request Broker Architecture (CORBA) systems,~ the Distributed Component Object Model (DCOM), ~ mechanisms that support the Simple Object Access Protocol (SOAP).
![Page 25: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/25.jpg)
RMI architectureRMI architecture
Client Browse
r
Web server
HTML
Java applets
Stub
Application server
Skeleton
Object Implementatio
n
HTML pages
JRMP / IIOP
HTTP
Applets
![Page 26: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/26.jpg)
CORBA architectureCORBA architecture
Client Brows
er
Web server
HTML
Java applets
Client ORB
Application server
Server ORB
Object Implementation
HTML pages
IIOP
HTTP
Applets
![Page 27: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/27.jpg)
DCOM architectureDCOM architecture
Client Browse
r
Web server
HTML
ActiveX Controls
Proxy
Application server
Stub
Object Implementation
HTML pages
DCOM
HTTP
ActiveX
![Page 28: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/28.jpg)
Limitations of ComponentsLimitations of Components
Tightly coupledCross language/ platform issuesInteroperability issuesMaintenance and managementSecurity issues
![Page 29: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/29.jpg)
Application Centric
Application
ApplicationFinance
DistributionManufacturing
Supply
Narrow Consumers Limited Business Processes
Overlapped resourcesOverlapped providers
Business scope
Application
Integration
Architecture
Business functionality is duplicated in each application that requires it.
EAI ‘leverage’ application silos with the drawback of data and function redundancy.
bound to EAI vendor
Redundancy
![Page 30: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/30.jpg)
Goal - Service Centric
![Page 31: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/31.jpg)
What are services?What are services?
A service is Autonomous unit of automated business
logicAccessible to other systems
A service representsBusiness processSub processActivity (process step)
(or multiple)
![Page 32: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/32.jpg)
What is Service Architecture?
• A collection of services
• classified into types
• arranged into layers
• Governed by architectural patterns and policies
services
identi
ficati
on
gran
ularit
y
depe
nden
cy
type typetype
source:TietoEnator AB, Kurts Bilder
![Page 33: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/33.jpg)
SOA is a software architecture model in which business functionality are logically grouped and encapsulated into self contained,distinct and reusable units called services that represent a high level business concept can be distributed over a network can be reused to create new business applications contain contract with specification of the purpose, functionality, interfaces (coarse grained), constraints, usage
SOA Defined
![Page 34: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/34.jpg)
SOA is a software architecture model in which business functionality are logically grouped and encapsulated into self contained,distinct and reusable units called services that represent a high level business concept can be distributed over a network can be reused to create new business applications contain contract with specification of the purpose, functionality, interfaces (coarse grained), constraints, usage
SOA Defined
Services are autonomous, discrete and reusable units of business functionality exposing its capabilities in a form of contracts. Services can be independently evolved, moved, scaled even in runtime.
Services are autonomous, discrete and reusable units of business functionality exposing its capabilities in a form of contracts. Services can be independently evolved, moved, scaled even in runtime.
![Page 35: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/35.jpg)
Big (outer) vs. Little (inner) SOA
![Page 36: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/36.jpg)
Service RelationshipsService Relationships
GUI Applications
Student
This is not a use case
Goals Business Processes
Serv ices
Business Applications
uses
hashelp usersachieve
participatesin
invokes
supportedby
are realized by (partially)
exposes
orchestrate / are composed of
![Page 37: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/37.jpg)
Why SOA?Why SOA?
Heterogeneous cross-platformReusability at the macro (service) level rather
than micro(object) level Interconnection to - and usage of - existing IT
(legacy) assetsGranularity, modularity, composability,
componentizationCompliance with industry standards
![Page 38: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/38.jpg)
SOA is an evolutionary step for architecture
![Page 39: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/39.jpg)
SOA is an evolutionary step
in reusability and communication
![Page 40: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/40.jpg)
SOA is an evolutionary step
Project-ware SOAEAI
in distributed communications
source:Sam Gentile
![Page 41: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/41.jpg)
Features of SOAFeatures of SOA
Self- describing Interface (WSDL)Message communication via formally defined
XMLServices are maintained in a registryEach service has a Quality Of ServiceApplications adapt to changing technologiesEasy integration of applications with other
systemsLeverage existing investments in legacy
applications
![Page 42: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/42.jpg)
Service Architecture CompositionService Architecture Composition
Service architectures are composed ofServices
• Units of processing logic• Example: Credit card Service
Messages • Units of communications between services• Needed for services to do their job
Operations • Units of Work• Example: Determine Cost of Attendance
Processes• Composed / orchestrated groups of services• Example: Financial Aid Disbursement
![Page 43: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/43.jpg)
SOA principlesSOA principles
Service EncapsulationService Loose couplingService ContractService abstractionService DocumentationService reusabilityService composabilityService autonomyService optimization and DiscoveryService statelessness
![Page 44: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/44.jpg)
Encapsulation
![Page 45: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/45.jpg)
Loose Coupling
“Service contracts impose low consumer coupling requirements and are themselves decoupled from their surrounding environment."
Create specific types of relationships within and outside of service boundaries with a constant emphasis on reducing (“loosening”) dependencies
between Service contract Service implementation Service consumers
Source: Thomas Erl
![Page 46: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/46.jpg)
Standardized Service Contracts
“Services within the same service inventory are in compliance with the same contract design standards."
Services use service contract to Express their purpose Express their capabilities
Use formal, standardized service contracts
Focus on the areas of Functional expression Data representation Policy
Source: Thomas Erl
![Page 47: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/47.jpg)
Abstraction
“Service contracts only contain essential information and information about services is limited to what is published in service contracts”
Avoid the proliferation of unnecessary service information, meta-data.
Hide as much of the underlying details of a service as possible. Enables and preserves the loosely coupled
relationships Plays a significant role in the positioning and
design of service compositions Source: Thomas Erl
![Page 48: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/48.jpg)
Documentation
![Page 49: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/49.jpg)
Reusability
“Services contain and express agnostic logic and can be positioned as reusable enterprise resources."
Reusable services have the following characteristics: Defined by an agnostic functional context Logic is highly generic Has a generic and extensible contract Can be accessed concurrently
Source: Thomas Erl
![Page 50: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/50.jpg)
Composability
"Services are effective composition participants, regardless of the size and complexity of the composition."
Ensures services are able to participate in multiple compositions to solve multiple larger problems
Source: Thomas Erl
![Page 51: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/51.jpg)
Autonomy
"Services exercise a high level of control over their underlying runtime execution environment."
Represents the ability of a service to carry out its logic independently of outside influences
To achieve this, services must be more isolated
Primary benefits Increased reliability Behavioral predictability
Source: Thomas Erl
![Page 52: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/52.jpg)
Discoverability
"Services are supplemented with communicative meta data by which they can be effectively discovered and interpreted."
Service contracts contain appropriate meta data for discovery which also communicates purpose and capabilities to humans
Store meta data in a service registry or profile documents
Source: Thomas Erl
![Page 53: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/53.jpg)
Statelessness
"Services minimize resource consumption by deferring the management of state information when necessary."
Incorporate state management deferral extensions within a service design
Goals Increase service scalability Support design of agnostic
logic and improve service reuseSource: Thomas Erl
![Page 54: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/54.jpg)
Applying SOA - Governance
Goal: Establish SOA organization governance (SOA Board) that governs SOA efforts and breaks down capabilities into non-overlapping services
Governance is a program that makes sure people do what is ‘right’
In conjunction with software, governance controls the development and operation of software
![Page 55: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/55.jpg)
Applying SOA - Governance
Policies Codification of laws, regulations, corporate
guidelines and best practices Must address all stages of the service lifecycle
(technology selection, design, development practices, configuration management, release management, runtime management, etc.)
![Page 56: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/56.jpg)
Applying SOA - Governance
Processes Enforce policies System-driven processes (code check-in, code
builds, unit tests) Human-driven process (requests, design
reviews, code reviews, threat assessment, test case review, release engineering, service registration, etc.)
![Page 57: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/57.jpg)
Applying SOA - Governance
Metrics Measurements of service reuse, compliancy
with policy, etc. Organization Governance program should be run by SOA
Board, which should have cross-functional representatives
![Page 58: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/58.jpg)
Business service model
ServiceDesigners
Foundation Service Blocks
Core APIs
I/CA
D
InService
Service specificationmodel
EnterpriseArchitects
SOABoard P
atternsM
odelsStandardsPolicy
Service implementation and deployment
model
Software and IT Architects
BusinessCapabilities
Applying SOA – Governance
![Page 59: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/59.jpg)
Business functionality has to be made available as services. Service contracts must be fixed
Implemented services must be designed with reuse in mind. This creates some overhead.
Potential service users must be involved in the design process and will have influence on the service design
Applying SOA - Challenges
Service Orientation
Reuse
Sharing of Responsibilities
Increased complexity!
![Page 60: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/60.jpg)
(Source: Enterprise SOA: Service Oriented Architecture Best Practices by Dirk Krafzig, Karl Banke, and Dirk Slama, Prentice Hall 2004)
Applying SOA – Renovation Roadmap
![Page 61: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/61.jpg)
Service Oriented Architecture modelService Oriented Architecture model
![Page 62: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/62.jpg)
Before SOA – After SOA
source:IBM
![Page 63: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/63.jpg)
Why SOA?To enable Flexible, Federated Business Processes
Enabling a virtual federation ofparticipants to collaborate in anend-to-end business process
Enabling alternativeimplementations
Enabling reuse ofServices
Enabling virtualization of business resources Enabling aggregation from multipleproviders
Identification
Ticket Sales
Ticket Collection
InventoryLogistics
ManufacturingAvailability
Service
Service
Service
Service Service
Service
ServiceService Service
Service
Ordering
source:TietoEnator AB, Kurts Bilder
![Page 64: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/64.jpg)
Why SOA? To enable Business Process Optimization and the Real Time Enterprise (RTE)
Seamless End to End Process
Internal Systems
SOA Pattern: Standardized Service provided by multiple suppliers
Service from Multiple Suppliers
SOA Patterns: Single, Multi-ChannelService for consistency
BPM Expressed in terms of ServicesProvided/Consumed
Enterprise
source:TietoEnator AB, Kurts Bilder
Smart Clients
Stores POSMobile
3rd Party Agents
Portal
Service to Customers
![Page 65: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/65.jpg)
Why SOA? Enable Structural Improvement
ERP X Process Z Partner A Process Y
Service
Standardizing capabilities Information Consistency
Policy Consistencye.g. Single Customer
Details Service
Consolidation/Selection process
Reducing impactof change
Encapsulatingimplementation
complexity
ERP ZCRM
System 2CRM
System 1Product System
Policy Rationalization and Evolution
Resource Virtualization
e.g. Multiple Sources of Customer Details
![Page 66: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/66.jpg)
Service Architecture Organized by Layers
Reasons for Layering
1. Flexible composition.
2. Reuse.
3. Functional standardization in lower levels
4. Customization in higher layers
5. Separation of Concerns.
6. Policies may vary by Layer
Example Layers
Presentation& workflow
Composed Services
Basic Services
Underlying API
according to:TietoEnator AB, Kurts Bilder
![Page 67: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/67.jpg)
Different layers of SOADifferent layers of SOA
![Page 68: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/68.jpg)
Service Composition ExampleService Composition Example
Aid Disbursement Process
FAAwardService
RegistrationService
LoanService
BursarService
FA SystemMicrosoft .NET
Registrar SystemMainframe
Dept of Ed???
BursarJava on Linux
Aid DisburseService
Is Realized By
Are Executed In / Controlled By
Orchestratesaccount info
Debit Account
ServiceInterfaceLayer
AppLogic
NotPhysical
![Page 69: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/69.jpg)
Applying services to the problemApplying services to the problem
MonolithicBefore
The System
After
S1 S2 S4S3
System replacement is a total processSystem modules are tightly interdependent making change difficult
System composed of many logical service units (decomposition)Underlying business logic decoupled as much as possible from other services (autonomy and loose coupling)
![Page 70: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/70.jpg)
Goal of SOAGoal of SOA
Loosely coupledThe goal for a SOA is a world wide mesh of
collaborating services, which are published and available for invocation on the Service Bus.
SOA is not just an architecture of services seen from a technology perspective, but the policies, practices, and frameworks by which we ensure the right services are provided and consumed.
![Page 71: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/71.jpg)
Major service types
Basic Services: Data-centric and logic-centric services Encapsulate data behavior and data model and
ensures data consistency (only on one backend).
Basic services are stateless services with high degree of reusability.
Represent fundamental SOA maturity level and usually are build on top existing legacy API (underlying services.
![Page 72: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/72.jpg)
Major service types
Composed Services :
expose harmonized access to inconsistent basic services technology (gateways, adapters, façades, and functionality-adding services).
Encapsulate business specific workflows or orchestrated services.
![Page 73: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/73.jpg)
Service Types
Foundation Service Blocks
Core APIs
I/CA
D
InService
Servic
e
Infra
struc
ture
SOA Management & Security service mediation, routing, trust enablement. ESB, Service Registry
Multi channel applications: Mobile, Smart, Thin, Thick clients, Portals.
Business centric services, orchestrated workflows. Intermediate services (gateways, facades )
Data centric and logic centric consistent services. Highly reusable, stateless servers
BusinessCapabilities
![Page 74: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/74.jpg)
SOA Benefits SummarySOA Benefits Summary
Allow us to execute complex business processes by composing systems from small, less complex building blocks
Fosters collaborative business and technical environment through sharing and coordination of services
Create outward facing self-service applications not constrained by organizational boundaries
Enables creating adaptive, agile systems that are resilient to changes in the business environment
![Page 75: Service Oriented Architecture](https://reader030.fdocuments.net/reader030/viewer/2022032513/55d15253bb61eb15368b4802/html5/thumbnails/75.jpg)
Conclusions Conclusions
SOA represents a fundamental change to the way information systems will designed in the future
Long term impact on IT portfolio management is dramatic
Adds a significant dimension to system evaluation process
Undertaking SOA requires commitment from all levels of the organization and significant investments (people, process, and tools)