SlideShare una empresa de Scribd logo
1 de 47
Technical Track Session
Service-Oriented
Architecture
Terry Woods
2
Agenda
• A little history
• What is Service-Oriented
Architecture?
• How do you build a Service-Oriented
Architecture Solution?
• What is an Enterprise Service Bus?
• Summary
Technical Track Session
A Little History
4
In the Beginning …
• Computers were the domain of
scientists for scientists
• Business and Government
discovered the value of computing
• Business requirements needed to
be captured and programmed
5
Some Past Attempts …
• COBOL – It was designed to be business-problem
oriented, machine-independent, and capable of continuous
change and development.
• SQL – The SQL "language" allows anyone with a
computer terminal to access and use relational databases.
Originally thought to be an end-user tool.
• SAD – Structured Analysis and Design
(Yourdon/DeMarco)
• IE – Information engineering (design by pictures) James
Martin
• OOAD – Object-Oriented Analysis and Design
6
Revolution …
• Revolution
– COBOL
– Basic programming
language
– C programming
language
– SQL
– Structured analyses
and design
– Electronic data
exchange
• Evolution
– Web Services
– Information Engineering
– CASE
– C++
– Java
– Object-Oriented Analysis and
Design
– HTML
– Common Record (XML)
• Ecosystem
– Standards
– SOA
Technical Track Session
What is Service-Oriented
Architecture?
8
What is Service-Oriented
Architecture?
• Service-Oriented Architecture (SOA)
is an architectural style. Applications
built using an SOA style deliver
functionality as services that can be
used or reused when building
applications or integrating within the
enterprise or trading partners.
9
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
10
What is a Service?
• A service is a reusable component that
can be used as a building block to form
larger, more complex business-
application functionality.
• A service may be as simple as “get me
some person data,” or as complex as
“process a disbursement.”
11
What is a Service?
• A service provides a discrete
business function that operates on
data. Its job is to ensure that the
business functionality is applied
consistently, returns predictable
results, and operates within the
quality of service required.
12
What is a Service?
• How the service is implemented, and
how a user of the service accesses it,
are limited only by the SOA
infrastructure choices of the enterprise.
• From a theory point of view, it really
doesn’t matter how a service is
implemented.
13
Characteristics of a Service
• Supports open standards for
integration: Although proprietary
integration mechanisms may be offered
by the SOA infrastructure, SOA’s
should be based on open standards.
Open standards ensure the broadest
integration compatibility opportunities.
14
Characteristics of a Service
• Loose coupling: The consumer of the
service is required to provide only the
stated data on the interface definition,
and to expect only the specified results
on the interface definition. The service
is capable of handling all processing
(including exception processing).
15
Characteristics of a Service
• Stateless: The service does not
maintain state between invocations. It
takes the parameters provided,
performs the defined function, and
returns the expected result. If a
transaction is involved, the transaction
is committed and the data is saved to
the database.
16
Characteristics of a Service
• Location agnostic: Users of the
service do not need to worry about
the implementation details for
accessing the service. The SOA
infrastructure will provide
standardized access mechanisms
with service-level agreements.
17
Legacy Business Process
Business Process 1
Business Process 2
Business Process 3
18
Architectural Choke Point
• Monolithic
• Extremely complex
• Very tightly coupled
• Difficult to find clean integration points
• Lack of standards makes it difficult to
integrate
• Rigid architecture makes even small
changes complex and costly
19
SOA Business Process
Business Process
Shared Service
Information Framework
Supplier
Technical Track Session
How Do You Build a
Service-Oriented
Architecture Solution?
21
IT Infrastructure is an Ecosystem
• COBOL
• C++
• Java
• J2EE
• Networks
• TCP/IP
• Web Service
• Mid-Tier Servers
• .NET
• Messaging
• HTML
• Operating Systems
• CICS
• Routers
• Databases
• Mainframes
22
Managing the Ecosystem
Technology Management
• Product duplication
• Standards
• Product/Vendor lock-in
• Support skill sets
Version Management
• Managed
Evergreening
• Limited versions in
production
23
Legacy Integration
24
SOA Integration
SOA Architecture
25
Integration Stack
• Industry Standards
• Language
Standards
• Custom API’s
• Native Interfaces
Ubiquity
Proprietary
Technical Track Session
Enterprise Service Bus
27
What is an Enterprise Service
Bus (ESB)?
• An enterprise service bus is an infrastructure used for
building compound applications
• The enterprise service bus is the glue that holds the
compound application together
• The enterprise service bus is an emerging style for
integrating enterprise applications in an
implementation-independent fashion
• An enterprise service bus can be thought of as an
abstraction layer on top of an Enterprise Messaging
System
28
Key Characteristics of an ESB
• Streamlines development
• Supports multiple binding strategies
• Performs data transformation
• Intelligent routing
• Real time monitoring
• Exception handling
• Service security
29
What is an ESB?
In its simplest form:
An ESB delivers a message from one
point to another.
Don’t EAI’s already do this?
Enterprise Service Bus
Point A Point B
Message
30
EAI Limitations
• An EAI can be a tightly coupled
solution
• An EAI can be location-specific
• An EAI can be based on
proprietary transport technology
31
Let’s Walk Through the ESB
• Get Person Data
• Use Standard Student Identification
Method (SSIM) identifiers to find the
person
• Return the Person Data
This is a fictional-use case, and is only intended to
illustrate how an ESB would provide a service.
32
The ESB Boundaries
The ESB (in its simplest form) is
responsible for getting a message from
point A to point B.
Enterprise Service Bus
Point A Point B
Message
33
Get the Message on the Bus
A binding component “speaks” the
service’s protocol, which happens
to be SOAP over JMS.
Enterprise Service Bus
Point B
Message
Get Person Data
Client
Request
Get Person Data
BC
34
Perform the Person Read
The request is now routed to the
Get Person Data Service, which
will perform the business logic.
Enterprise Service Bus
Message
Get Person
Data
Request
Get Person Data
Client
Request
Get Person Data
BC
Get Person Data
BC
35
Do the SSIM Lookup
A call is made to the SSIM service to perform
a lookup of the Student Identifier (SID). The
SSIM service lives inside the bus.
Note: The SSIM binding components are not shown so the diagram can remain simple.
Enterprise Service Bus
SSIM Lookup
Message
Get Person
Data
Request
Get Person Data
Client
Request
Get Person Data
BC
Get Person Data
BC
Request
36
Return the Person Data
The process is reversed, returning
the response to the requester.
Enterprise Service Bus
Response
Message
Response
SSIM Lookup
Message
Get Person
Data
Request
Get Person Data
Client
Request
Get Person Data
BC
Get Person Data
BC
Request
Response
37
ESB Summary
• Loose Coupling
• Location Transparency
• Transport Neutral
38
Defining the Message
• Web Services Description Language
• Open Standard for describing
Interfaces to Services
(http://www.w3.org/TR/wsdl)
• Characteristics
– Describes data expected to be sent and
received
– Describes what the service can do
– Describes how to reach the service
• WSDL description is an XML
document
Services
Bindings
Port Types
Operations
Messages
39
Message-Exchange Patterns
• One-way. The endpoint receives a message.
• Request-response. The endpoint receives a
message, and sends a correlated message.
• Solicit-response. The endpoint sends a
message, and receives a correlated message.
• Notification. The endpoint sends a
message.
Technical Track Session
Building a Compound
Application
41
The Ingredients
Service Definition
WSDL XSD
Service Implementation
Java
Session
Bean
42
Business Processes Flow
• Business processes are a set of activities, supported by
services, that support a particular business activity.
• Business processes are business services built using
other business services.
• Business Process Execution Language (BPEL) is a
specification for describing business processes in a
portable XML format. BPEL is widely supported in
both commercial and open source products.
• BPEL defines how services interact to form complex
business process. It provides a unit of work context,
fault handling, and compensation (transaction rollback).
43
BPEL BPEL Process
In
Java
In
Out
EJB
In
Out
Message
In
Out
Other
In
OutOut
44
What BPEL does …
• BPEL binds services together to form
larger complex business services
• Control Flow (branch, loop, parallel)
• Asynchronous correlation
• Transaction support, Units of Work
• Compensation
45
Sample ESB
• Custom Services
• Transformation Services
• Orchestration
• Routing
• Application Server
BPELService
1
5
4 23
Transform
ServiceGatewayService
RoutingService
J2EE Application Server
Web
Servlet
Portlet
JMS
EJB
MDB
SSB
JCA
CustomService
46
Summary
• What is Service-Oriented
Architecture?
• How do you build a Service-
Oriented Architecture solution?
• What is an Enterprise Service Bus?
47
We appreciate your feedback and
comments. We can be reached at:
Phone: 202 377 3023
Email: Terry.Woods@ed.gov
Contact Information

Más contenido relacionado

La actualidad más candente

SOA Service Oriented Architecture
SOA Service Oriented ArchitectureSOA Service Oriented Architecture
SOA Service Oriented ArchitectureVinay Rajadhyaksha
 
BizTalk: Server, Services and Apps
BizTalk: Server, Services and AppsBizTalk: Server, Services and Apps
BizTalk: Server, Services and AppsSandro Pereira
 
Guide on BizTalk Server 2013 Features
Guide on BizTalk Server 2013 FeaturesGuide on BizTalk Server 2013 Features
Guide on BizTalk Server 2013 FeaturesResolWeb
 
What new in Integration with BizTalk Server 2013 R2
What new in Integration with BizTalk Server 2013 R2What new in Integration with BizTalk Server 2013 R2
What new in Integration with BizTalk Server 2013 R2Bill Chesnut
 
BizTalk Fundamentals
BizTalk  FundamentalsBizTalk  Fundamentals
BizTalk FundamentalsManoj Kumar
 
Cutting Cost with BizTalk Server
Cutting Cost with BizTalk ServerCutting Cost with BizTalk Server
Cutting Cost with BizTalk ServerSudhir Hasbe
 
Introduction to BizTalk Server 2010
Introduction to BizTalk Server 2010Introduction to BizTalk Server 2010
Introduction to BizTalk Server 2010Sandro Pereira
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented ArchitectureSyed Mustafa
 
Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Biniam Asnake
 
The Evolution Of Enterprise Application Architecture
The Evolution Of Enterprise Application ArchitectureThe Evolution Of Enterprise Application Architecture
The Evolution Of Enterprise Application ArchitectureOziel Moreira Neto
 
SOA - Service Oriented Architecture ( Basic Concept & Principle )
SOA - Service Oriented Architecture ( Basic Concept & Principle )SOA - Service Oriented Architecture ( Basic Concept & Principle )
SOA - Service Oriented Architecture ( Basic Concept & Principle )DevTalk
 
Informix NoSQL & Hybrid SQL detailed deep dive
Informix NoSQL & Hybrid SQL detailed deep diveInformix NoSQL & Hybrid SQL detailed deep dive
Informix NoSQL & Hybrid SQL detailed deep diveKeshav Murthy
 

La actualidad más candente (17)

SOA Service Oriented Architecture
SOA Service Oriented ArchitectureSOA Service Oriented Architecture
SOA Service Oriented Architecture
 
SOA unit-3-notes-Introduction to Service Oriented Architecture
SOA unit-3-notes-Introduction to Service Oriented ArchitectureSOA unit-3-notes-Introduction to Service Oriented Architecture
SOA unit-3-notes-Introduction to Service Oriented Architecture
 
BizTalk: Server, Services and Apps
BizTalk: Server, Services and AppsBizTalk: Server, Services and Apps
BizTalk: Server, Services and Apps
 
Guide on BizTalk Server 2013 Features
Guide on BizTalk Server 2013 FeaturesGuide on BizTalk Server 2013 Features
Guide on BizTalk Server 2013 Features
 
What new in Integration with BizTalk Server 2013 R2
What new in Integration with BizTalk Server 2013 R2What new in Integration with BizTalk Server 2013 R2
What new in Integration with BizTalk Server 2013 R2
 
BizTalk Fundamentals
BizTalk  FundamentalsBizTalk  Fundamentals
BizTalk Fundamentals
 
Introduction to SOA
Introduction to SOAIntroduction to SOA
Introduction to SOA
 
Hitesh's Profile
Hitesh's ProfileHitesh's Profile
Hitesh's Profile
 
Cutting Cost with BizTalk Server
Cutting Cost with BizTalk ServerCutting Cost with BizTalk Server
Cutting Cost with BizTalk Server
 
Introduction to BizTalk Server 2010
Introduction to BizTalk Server 2010Introduction to BizTalk Server 2010
Introduction to BizTalk Server 2010
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
 
Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)
 
The Evolution Of Enterprise Application Architecture
The Evolution Of Enterprise Application ArchitectureThe Evolution Of Enterprise Application Architecture
The Evolution Of Enterprise Application Architecture
 
SOA - Service Oriented Architecture ( Basic Concept & Principle )
SOA - Service Oriented Architecture ( Basic Concept & Principle )SOA - Service Oriented Architecture ( Basic Concept & Principle )
SOA - Service Oriented Architecture ( Basic Concept & Principle )
 
Service oriented architecture 27 May 2014
Service oriented architecture 27 May 2014Service oriented architecture 27 May 2014
Service oriented architecture 27 May 2014
 
Informix NoSQL & Hybrid SQL detailed deep dive
Informix NoSQL & Hybrid SQL detailed deep diveInformix NoSQL & Hybrid SQL detailed deep dive
Informix NoSQL & Hybrid SQL detailed deep dive
 
Data Access - Best Practice
Data Access - Best PracticeData Access - Best Practice
Data Access - Best Practice
 

Similar a Cs 1023 lec 12 soa (week 4)

Week2 cloud computing week2
Week2 cloud computing week2Week2 cloud computing week2
Week2 cloud computing week2Ankit Gupta
 
nptl cc video.pptx
nptl cc video.pptxnptl cc video.pptx
nptl cc video.pptxMunmunSaha7
 
Introduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web ServicesIntroduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web Servicesecosio GmbH
 
API’s and Micro Services 0.5
API’s and Micro Services 0.5API’s and Micro Services 0.5
API’s and Micro Services 0.5Richard Hudson
 
Pros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitecturePros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitectureAshwini Kuntamukkala
 
WebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development TrainingWebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development TrainingVijaya Raghava Vuligundam
 
Semantic Mediation Bus Presentation at VORTE 2012
Semantic Mediation Bus Presentation at VORTE 2012Semantic Mediation Bus Presentation at VORTE 2012
Semantic Mediation Bus Presentation at VORTE 2012Wen Zhu
 
Value of Smart Business Networks
Value of Smart Business NetworksValue of Smart Business Networks
Value of Smart Business NetworksEric van Heck
 
Oslc case study (poc results) v1.1
Oslc case study (poc results) v1.1Oslc case study (poc results) v1.1
Oslc case study (poc results) v1.1Joseph Lopez, M.ISM
 
Toyota Financial Services Digital Transformation - Think 2019
Toyota Financial Services Digital Transformation - Think 2019Toyota Financial Services Digital Transformation - Think 2019
Toyota Financial Services Digital Transformation - Think 2019Slobodan Sipcic
 
170215 msa intro
170215 msa intro170215 msa intro
170215 msa introSonic leigh
 
JSLab. Георгий Подсветов "Путь архитектора. Введение в архитектурные паттерны."
JSLab. Георгий Подсветов "Путь архитектора. Введение в архитектурные паттерны."JSLab. Георгий Подсветов "Путь архитектора. Введение в архитектурные паттерны."
JSLab. Георгий Подсветов "Путь архитектора. Введение в архитектурные паттерны."GeeksLab Odessa
 
Introduction to architectural patterns
Introduction to architectural patternsIntroduction to architectural patterns
Introduction to architectural patternsGeorgy Podsvetov
 
Orpos and store practices
Orpos and store practicesOrpos and store practices
Orpos and store practicesShyamChakrapani
 
Integration with dynamics ax 2012
Integration with dynamics ax 2012Integration with dynamics ax 2012
Integration with dynamics ax 2012Ali Raza Zaidi
 
SOA - Unit 1 - Introduction to SOA with Web Services
SOA - Unit   1 - Introduction to SOA with Web ServicesSOA - Unit   1 - Introduction to SOA with Web Services
SOA - Unit 1 - Introduction to SOA with Web Serviceshamsa nandhini
 

Similar a Cs 1023 lec 12 soa (week 4) (20)

Moran wsmx
Moran wsmxMoran wsmx
Moran wsmx
 
Week2 cloud computing week2
Week2 cloud computing week2Week2 cloud computing week2
Week2 cloud computing week2
 
nptl cc video.pptx
nptl cc video.pptxnptl cc video.pptx
nptl cc video.pptx
 
Enterprise Service Bus
Enterprise Service BusEnterprise Service Bus
Enterprise Service Bus
 
Introduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web ServicesIntroduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web Services
 
API’s and Micro Services 0.5
API’s and Micro Services 0.5API’s and Micro Services 0.5
API’s and Micro Services 0.5
 
Pros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitecturePros & Cons of Microservices Architecture
Pros & Cons of Microservices Architecture
 
WebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development TrainingWebSphere Message Broker Application Development Training
WebSphere Message Broker Application Development Training
 
Soa 1 7.ppsx
Soa 1 7.ppsxSoa 1 7.ppsx
Soa 1 7.ppsx
 
Semantic Mediation Bus Presentation at VORTE 2012
Semantic Mediation Bus Presentation at VORTE 2012Semantic Mediation Bus Presentation at VORTE 2012
Semantic Mediation Bus Presentation at VORTE 2012
 
Value of Smart Business Networks
Value of Smart Business NetworksValue of Smart Business Networks
Value of Smart Business Networks
 
Oslc case study (poc results) v1.1
Oslc case study (poc results) v1.1Oslc case study (poc results) v1.1
Oslc case study (poc results) v1.1
 
Toyota Financial Services Digital Transformation - Think 2019
Toyota Financial Services Digital Transformation - Think 2019Toyota Financial Services Digital Transformation - Think 2019
Toyota Financial Services Digital Transformation - Think 2019
 
170215 msa intro
170215 msa intro170215 msa intro
170215 msa intro
 
JSLab. Георгий Подсветов "Путь архитектора. Введение в архитектурные паттерны."
JSLab. Георгий Подсветов "Путь архитектора. Введение в архитектурные паттерны."JSLab. Георгий Подсветов "Путь архитектора. Введение в архитектурные паттерны."
JSLab. Георгий Подсветов "Путь архитектора. Введение в архитектурные паттерны."
 
Introduction to architectural patterns
Introduction to architectural patternsIntroduction to architectural patterns
Introduction to architectural patterns
 
Orpos and store practices
Orpos and store practicesOrpos and store practices
Orpos and store practices
 
Integration with dynamics ax 2012
Integration with dynamics ax 2012Integration with dynamics ax 2012
Integration with dynamics ax 2012
 
Enterprise service bus part 1
Enterprise service bus part 1Enterprise service bus part 1
Enterprise service bus part 1
 
SOA - Unit 1 - Introduction to SOA with Web Services
SOA - Unit   1 - Introduction to SOA with Web ServicesSOA - Unit   1 - Introduction to SOA with Web Services
SOA - Unit 1 - Introduction to SOA with Web Services
 

Más de stanbridge

Micro Lab 3 Lecture
Micro Lab 3 LectureMicro Lab 3 Lecture
Micro Lab 3 Lecturestanbridge
 
Creating a poster v2
Creating a poster v2Creating a poster v2
Creating a poster v2stanbridge
 
Creating a poster
Creating a posterCreating a poster
Creating a posterstanbridge
 
OT 5018 Thesis Dissemination
OT 5018 Thesis DisseminationOT 5018 Thesis Dissemination
OT 5018 Thesis Disseminationstanbridge
 
Ot5101 005 week 5
Ot5101 005 week 5Ot5101 005 week 5
Ot5101 005 week 5stanbridge
 
Ot5101 005 week4
Ot5101 005 week4Ot5101 005 week4
Ot5101 005 week4stanbridge
 
Compliance, motivation, and health behaviors
Compliance, motivation, and health behaviors Compliance, motivation, and health behaviors
Compliance, motivation, and health behaviors stanbridge
 
Ch 5 developmental stages of the learner
Ch 5   developmental stages of the learnerCh 5   developmental stages of the learner
Ch 5 developmental stages of the learnerstanbridge
 
OT 5101 week2 theory policy
OT 5101 week2 theory policyOT 5101 week2 theory policy
OT 5101 week2 theory policystanbridge
 
OT 5101 week3 planning needs assessment
OT 5101 week3 planning needs assessmentOT 5101 week3 planning needs assessment
OT 5101 week3 planning needs assessmentstanbridge
 
NUR 304 Chapter005
NUR 304 Chapter005NUR 304 Chapter005
NUR 304 Chapter005stanbridge
 
NUR 3043 Chapter007
NUR 3043 Chapter007NUR 3043 Chapter007
NUR 3043 Chapter007stanbridge
 
NUR 3043 Chapter006
NUR 3043 Chapter006NUR 3043 Chapter006
NUR 3043 Chapter006stanbridge
 
NUR 3043 Chapter004
NUR 3043 Chapter004NUR 3043 Chapter004
NUR 3043 Chapter004stanbridge
 
3043 Chapter009
3043 Chapter0093043 Chapter009
3043 Chapter009stanbridge
 
3043 Chapter008
 3043 Chapter008 3043 Chapter008
3043 Chapter008stanbridge
 
Melnyk ppt chapter_21
Melnyk ppt chapter_21Melnyk ppt chapter_21
Melnyk ppt chapter_21stanbridge
 
Melnyk ppt chapter_22
Melnyk ppt chapter_22Melnyk ppt chapter_22
Melnyk ppt chapter_22stanbridge
 

Más de stanbridge (20)

Micro Lab 3 Lecture
Micro Lab 3 LectureMicro Lab 3 Lecture
Micro Lab 3 Lecture
 
Creating a poster v2
Creating a poster v2Creating a poster v2
Creating a poster v2
 
Creating a poster
Creating a posterCreating a poster
Creating a poster
 
Sample poster
Sample posterSample poster
Sample poster
 
OT 5018 Thesis Dissemination
OT 5018 Thesis DisseminationOT 5018 Thesis Dissemination
OT 5018 Thesis Dissemination
 
Ot5101 005 week 5
Ot5101 005 week 5Ot5101 005 week 5
Ot5101 005 week 5
 
Ot5101 005 week4
Ot5101 005 week4Ot5101 005 week4
Ot5101 005 week4
 
Compliance, motivation, and health behaviors
Compliance, motivation, and health behaviors Compliance, motivation, and health behaviors
Compliance, motivation, and health behaviors
 
Ch 5 developmental stages of the learner
Ch 5   developmental stages of the learnerCh 5   developmental stages of the learner
Ch 5 developmental stages of the learner
 
OT 5101 week2 theory policy
OT 5101 week2 theory policyOT 5101 week2 theory policy
OT 5101 week2 theory policy
 
OT 5101 week3 planning needs assessment
OT 5101 week3 planning needs assessmentOT 5101 week3 planning needs assessment
OT 5101 week3 planning needs assessment
 
Ot5101 week1
Ot5101 week1Ot5101 week1
Ot5101 week1
 
NUR 304 Chapter005
NUR 304 Chapter005NUR 304 Chapter005
NUR 304 Chapter005
 
NUR 3043 Chapter007
NUR 3043 Chapter007NUR 3043 Chapter007
NUR 3043 Chapter007
 
NUR 3043 Chapter006
NUR 3043 Chapter006NUR 3043 Chapter006
NUR 3043 Chapter006
 
NUR 3043 Chapter004
NUR 3043 Chapter004NUR 3043 Chapter004
NUR 3043 Chapter004
 
3043 Chapter009
3043 Chapter0093043 Chapter009
3043 Chapter009
 
3043 Chapter008
 3043 Chapter008 3043 Chapter008
3043 Chapter008
 
Melnyk ppt chapter_21
Melnyk ppt chapter_21Melnyk ppt chapter_21
Melnyk ppt chapter_21
 
Melnyk ppt chapter_22
Melnyk ppt chapter_22Melnyk ppt chapter_22
Melnyk ppt chapter_22
 

Último

Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseAnaAcapella
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxJisc
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Jisc
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the ClassroomPooky Knightsmith
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxCeline George
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jisc
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxPooja Bhuva
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptxMaritesTamaniVerdade
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.pptRamjanShidvankar
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Association for Project Management
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSCeline George
 

Último (20)

Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 

Cs 1023 lec 12 soa (week 4)

  • 2. 2 Agenda • A little history • What is Service-Oriented Architecture? • How do you build a Service-Oriented Architecture Solution? • What is an Enterprise Service Bus? • Summary
  • 3. Technical Track Session A Little History
  • 4. 4 In the Beginning … • Computers were the domain of scientists for scientists • Business and Government discovered the value of computing • Business requirements needed to be captured and programmed
  • 5. 5 Some Past Attempts … • COBOL – It was designed to be business-problem oriented, machine-independent, and capable of continuous change and development. • SQL – The SQL "language" allows anyone with a computer terminal to access and use relational databases. Originally thought to be an end-user tool. • SAD – Structured Analysis and Design (Yourdon/DeMarco) • IE – Information engineering (design by pictures) James Martin • OOAD – Object-Oriented Analysis and Design
  • 6. 6 Revolution … • Revolution – COBOL – Basic programming language – C programming language – SQL – Structured analyses and design – Electronic data exchange • Evolution – Web Services – Information Engineering – CASE – C++ – Java – Object-Oriented Analysis and Design – HTML – Common Record (XML) • Ecosystem – Standards – SOA
  • 7. Technical Track Session What is Service-Oriented Architecture?
  • 8. 8 What is Service-Oriented Architecture? • Service-Oriented Architecture (SOA) is an architectural style. Applications built using an SOA style deliver functionality as services that can be used or reused when building applications or integrating within the enterprise or trading partners.
  • 9. 9 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
  • 10. 10 What is a Service? • A service is a reusable component that can be used as a building block to form larger, more complex business- application functionality. • A service may be as simple as “get me some person data,” or as complex as “process a disbursement.”
  • 11. 11 What is a Service? • A service provides a discrete business function that operates on data. Its job is to ensure that the business functionality is applied consistently, returns predictable results, and operates within the quality of service required.
  • 12. 12 What is a Service? • How the service is implemented, and how a user of the service accesses it, are limited only by the SOA infrastructure choices of the enterprise. • From a theory point of view, it really doesn’t matter how a service is implemented.
  • 13. 13 Characteristics of a Service • Supports open standards for integration: Although proprietary integration mechanisms may be offered by the SOA infrastructure, SOA’s should be based on open standards. Open standards ensure the broadest integration compatibility opportunities.
  • 14. 14 Characteristics of a Service • Loose coupling: The consumer of the service is required to provide only the stated data on the interface definition, and to expect only the specified results on the interface definition. The service is capable of handling all processing (including exception processing).
  • 15. 15 Characteristics of a Service • Stateless: The service does not maintain state between invocations. It takes the parameters provided, performs the defined function, and returns the expected result. If a transaction is involved, the transaction is committed and the data is saved to the database.
  • 16. 16 Characteristics of a Service • Location agnostic: Users of the service do not need to worry about the implementation details for accessing the service. The SOA infrastructure will provide standardized access mechanisms with service-level agreements.
  • 17. 17 Legacy Business Process Business Process 1 Business Process 2 Business Process 3
  • 18. 18 Architectural Choke Point • Monolithic • Extremely complex • Very tightly coupled • Difficult to find clean integration points • Lack of standards makes it difficult to integrate • Rigid architecture makes even small changes complex and costly
  • 19. 19 SOA Business Process Business Process Shared Service Information Framework Supplier
  • 20. Technical Track Session How Do You Build a Service-Oriented Architecture Solution?
  • 21. 21 IT Infrastructure is an Ecosystem • COBOL • C++ • Java • J2EE • Networks • TCP/IP • Web Service • Mid-Tier Servers • .NET • Messaging • HTML • Operating Systems • CICS • Routers • Databases • Mainframes
  • 22. 22 Managing the Ecosystem Technology Management • Product duplication • Standards • Product/Vendor lock-in • Support skill sets Version Management • Managed Evergreening • Limited versions in production
  • 25. 25 Integration Stack • Industry Standards • Language Standards • Custom API’s • Native Interfaces Ubiquity Proprietary
  • 27. 27 What is an Enterprise Service Bus (ESB)? • An enterprise service bus is an infrastructure used for building compound applications • The enterprise service bus is the glue that holds the compound application together • The enterprise service bus is an emerging style for integrating enterprise applications in an implementation-independent fashion • An enterprise service bus can be thought of as an abstraction layer on top of an Enterprise Messaging System
  • 28. 28 Key Characteristics of an ESB • Streamlines development • Supports multiple binding strategies • Performs data transformation • Intelligent routing • Real time monitoring • Exception handling • Service security
  • 29. 29 What is an ESB? In its simplest form: An ESB delivers a message from one point to another. Don’t EAI’s already do this? Enterprise Service Bus Point A Point B Message
  • 30. 30 EAI Limitations • An EAI can be a tightly coupled solution • An EAI can be location-specific • An EAI can be based on proprietary transport technology
  • 31. 31 Let’s Walk Through the ESB • Get Person Data • Use Standard Student Identification Method (SSIM) identifiers to find the person • Return the Person Data This is a fictional-use case, and is only intended to illustrate how an ESB would provide a service.
  • 32. 32 The ESB Boundaries The ESB (in its simplest form) is responsible for getting a message from point A to point B. Enterprise Service Bus Point A Point B Message
  • 33. 33 Get the Message on the Bus A binding component “speaks” the service’s protocol, which happens to be SOAP over JMS. Enterprise Service Bus Point B Message Get Person Data Client Request Get Person Data BC
  • 34. 34 Perform the Person Read The request is now routed to the Get Person Data Service, which will perform the business logic. Enterprise Service Bus Message Get Person Data Request Get Person Data Client Request Get Person Data BC Get Person Data BC
  • 35. 35 Do the SSIM Lookup A call is made to the SSIM service to perform a lookup of the Student Identifier (SID). The SSIM service lives inside the bus. Note: The SSIM binding components are not shown so the diagram can remain simple. Enterprise Service Bus SSIM Lookup Message Get Person Data Request Get Person Data Client Request Get Person Data BC Get Person Data BC Request
  • 36. 36 Return the Person Data The process is reversed, returning the response to the requester. Enterprise Service Bus Response Message Response SSIM Lookup Message Get Person Data Request Get Person Data Client Request Get Person Data BC Get Person Data BC Request Response
  • 37. 37 ESB Summary • Loose Coupling • Location Transparency • Transport Neutral
  • 38. 38 Defining the Message • Web Services Description Language • Open Standard for describing Interfaces to Services (http://www.w3.org/TR/wsdl) • Characteristics – Describes data expected to be sent and received – Describes what the service can do – Describes how to reach the service • WSDL description is an XML document Services Bindings Port Types Operations Messages
  • 39. 39 Message-Exchange Patterns • One-way. The endpoint receives a message. • Request-response. The endpoint receives a message, and sends a correlated message. • Solicit-response. The endpoint sends a message, and receives a correlated message. • Notification. The endpoint sends a message.
  • 40. Technical Track Session Building a Compound Application
  • 41. 41 The Ingredients Service Definition WSDL XSD Service Implementation Java Session Bean
  • 42. 42 Business Processes Flow • Business processes are a set of activities, supported by services, that support a particular business activity. • Business processes are business services built using other business services. • Business Process Execution Language (BPEL) is a specification for describing business processes in a portable XML format. BPEL is widely supported in both commercial and open source products. • BPEL defines how services interact to form complex business process. It provides a unit of work context, fault handling, and compensation (transaction rollback).
  • 44. 44 What BPEL does … • BPEL binds services together to form larger complex business services • Control Flow (branch, loop, parallel) • Asynchronous correlation • Transaction support, Units of Work • Compensation
  • 45. 45 Sample ESB • Custom Services • Transformation Services • Orchestration • Routing • Application Server BPELService 1 5 4 23 Transform ServiceGatewayService RoutingService J2EE Application Server Web Servlet Portlet JMS EJB MDB SSB JCA CustomService
  • 46. 46 Summary • What is Service-Oriented Architecture? • How do you build a Service- Oriented Architecture solution? • What is an Enterprise Service Bus?
  • 47. 47 We appreciate your feedback and comments. We can be reached at: Phone: 202 377 3023 Email: Terry.Woods@ed.gov Contact Information