SlideShare a Scribd company logo
Course 1 service oriented architecture.pdf
Service Oriented Architecture:
Right on Track
Agenda
• Defining SOA
– SOA, Service Orientation, Connected Systems and how they
relate
• Benefits of SOA
• M i
crosoft’
s vi
si
on for S O A
– Why Microsoft provides the best platform
for building your SOA today, and in the
future
Defining SOA
• SO is an architectural paradigm for
building distributed systems
• SO is evolutionary
• SO is a means to an end
• SO can and should be an
incremental process
• SO is easy and can be done in-
house
• SO is a technology or set of
technologies
• SO is revolutionary
• SO is the end goal
• SO requires business and
technology overhaul
• SO is complex and requires an
army of consultants
Reality
Myth
T he onl
y w ay you can use S O A for everythi
ng i
s to renam e everythi
ng to ‘
S O A ’
Roy Schulte, Gartner
Cutting through the SOA Hype
• Service – An endpoint that reacts to messages
• Service Orientation – An architectural paradigm
that employs the following four tenets:
– Boundaries are explicit
– Services are autonomous
– Services share schema and contract, not class
– Service compatibility is determined based on policy
• Service Oriented Architecture (SOA) – Any
architecture the adheres to the Four Tenets of Service
Orientation
Services, Service Orientation and SOA
• Services interact by exchanging
messages
• Each message exchange traverses
boundaries and may have costs
• SO formalizes intentional, and explicit
interaction
Tenet 1 – Boundaries are Explicit
• Services expose schemas defining data
structures and contracts defining
available operations
• Contracts and schema may be
independently versioned over time
Tenet 2 – Share Schema and Contract, Not Types
• Policy is the statement of communication
requirements necessary for service
interaction
• Service capabilities and requirements are
expressed in terms of a policy expression
• A policy can contain multiple assertions
Tenet 3 – Policy defines Service Compatibility
• A utonom y ≠ Independence
• Topology of a system evolves over time
• Unlike OO, services do not share
behavior
• Services gracefully handle failure
Tenet 4 – Services Are Autonomous
Web Services and SOA
Web
Services
EDI/B2B
EAI
Distributed Computing
Web Site/Portal
Messaging
Policies
Practices
Standard Protocols
Universal Support
Low Cost
Existing Assets
Best
Practice
Approach
Technology
Realization
Frameworks
SOA
Service Orientation Big
Picture
• Business Process View
Business
Business
Component
Component
Business
Business
Component
Component
Business
Business
Process
Process
Composite
Composite
Application
Application
Finer Grained
Finer Grained
Internal
Internal
Service
Service
Operations
Operations
Coarse
Coarse
Grained Web
Grained Web
Service
Service
Operations
Operations
Fine Grained
Fine Grained
Object and
Object and
database calls
database calls
Composition Platform
Composite Applications
• Applications composed of multiple service building blocks
– Composed, not built
– Cut across functional silos
Composite Application
Composite Application
Portal Devices Office Other
Existing
Systems
Benefits of SOA
Today
• Business
Issues
– Increased
Customer
Focus
– Outdeliver the
Competition
– Get the most
value for your
investment
• Technical Issues
– Integration costs
– Development time
– Future proof against
new technologies
– Heterogeneous
environment
– Support new
devices
Shift To Service Orientation
• Connections = cost
• Function oriented
• Build to last
• Prolonged
development
From
From To
To
• Connections = value
• Process oriented
• Build for change
• Incrementally
deployed
• Application silos
• Tightly coupled
• Object oriented
• Orchestrated solutions
• Loosely coupled
• Message oriented
SOA Business Benefits
Cost
• Decreased cost
– Reduces TCO and increase ROI on evolving
systems
– Add value to core investments by
leveraging existing assets
– New systems can be built faster for less
money because existing services can be
more easily reused
– Built for flexibility
– Long term value of interoperability
SOA Business Benefits
Productivity
• Increased employee productivity
– Unlock data
– Built on existing skills
– Consolidate Duplicate Functionality
SOA Business Benefits
Partnership
• Built for partnerships
– Standards based
– Business relationships expressed via
service interactions
– Integration is driven by what is needed,
not what is technically possible.
SOA Business Benefits
Agility
• Agility - Built for change
– Helps applications evolve over time and
last
– Abstract the backend and replace over
time
– Access to the business value, no matter
what technology delivers it.
– Focusing on core-competencies
– Incremental implementation approach is
supported.
Microsoft leading the way with
SOA
Microsoft and SOA
• Connected Systems is the moniker we use
to describe the eco-system of SOA enabled
applications
• SOA enables integration
• Web Services is the messaging fabric for
SOA
• .NET is the programming model for
Services
• Windows and server platform is the hosting
platform for Services
Microsoft SOA Business Value
• XML and Web Services Built in from the ground up
– Servers have had XML objects since 2000 versions
– .NET Framework built for web services
• More productive development environment
– Fewer lines of code
– Larger Ecosystem
– Faster time to market
• Integrated Application Environment
– Developer tool built for the Framework
– Framework integrated into the OS
– OS services optimized for the Framework
• The Application Server is built-in and evolving
M i
crosoft’
s SO A Strategy
• Leading the charge with Web Services
• Building Connected Systems
• Best platform to realize service orientation
– Visual Studio – ASMX, WSE
– SQL – XML
– Smart Client – Office, Windows Mobile
– Committed to open standards, interoperability
– WS-I, W3C, OASIS, HL7, AIAG, SWIFT
Perceived as leaders
Perceived as leaders –
– even before w e started …
even before w e started …
Visual Studio Team System Edition for
Software Architects
Application Designer (AD)
Endpoints and Application
Prototypes
• Endpoints
– WebServiceEndpoint
– WebContentEndpoint
– GenericEndpoint
• Applications
– WindowsApplication
– ASP.NETWebService
– ASP.NETWebApplication
– OfficeApplication
– ExternalWebService
– ExternalDatabase
– BizTalkWebService
– GenericApplication
Defining Web Service
Operations
Implementing the Application
Implementing the Application
• Application architects and/or developers can implement one
or more of the applications on the diagram
• Implementing is the process of creating the Visual Studio
projects (similar to File > New)
• Generates starter source code, content, and config files
based on Visual Studio templates
• Implementing requires the Team Edition for Software
Architects or Team Suite
Create
seamless, rich
user
experiences
Connect
heterogeneous
systems
Provide
seamless and
integrated
security
Compose and
integrate
business
processes
Provide
seamless
access to
multiple data
stores
Messaging
Messaging
and Services
and Services
Workflow
Workflow
and Process
and Process
Federated
Data
Identity
Identity
and Access
and Access
User
User
Interaction
Interaction
Connected Systems
Architectural
Architectural
Guidance
Guidance
SQL Server
SQL Server
MOM
MOM
Visual Studio 2005
Visual Studio 2005
Active
Active
Directory
Directory Windows
Windows
Communication
Communication
Foundation
Foundation
BizTalk Server
BizTalk Server Office and
Office and
VSTO
VSTO
Microsoft SOA Enablement
Windows Communication Foundation
• U ni
fi
es today’
s di
stri
buted technol
ogy stacks
• Composable functionality
• Appropriate for use on-machine, cross
machine, and cross Internet
Windows Communication
Foundation
“The uni
fi
ed program m i
ng m odelfor rapi
dl
y bui
l
di
ng
service-ori
ented appl
i
cati
ons on the W i
ndow s pl
atform ”
• WS-* interoperability with applications running on
other platforms
• Interoperabi
l
i
ty w i
th today’
s di
stri
buted stacks
• Service-oriented programming model
• Supports 4 tenets of service-orientation
• Maximized developer productivity
Unification
Unification
Productive
Productive
Service
Service-
-Oriented
Oriented
Programming
Programming
Interoperability
Interoperability
& Integration
& Integration
WS
WS-
-*
*
Protocols
Protocols
Service
Service-
-
Oriented
Oriented
Programming
Programming
Interop
Interop
Attribute
Attribute-
-
Based
Based
Programming
Programming
Message
Message-
-
Oriented
Oriented
Programming
Programming
Composability
Composability
Extensibility
Extensibility
Windows Communication
Windows Communication
Foundation (WCF)
Foundation (WCF)
(formerly Indigo)
(formerly Indigo)
U nion ofToday’s S tacks
[ServiceContract]
Class EnterpriseTradeApp {
[ServiceOperation]
message ExecuteTrade ();
}
Class TradeApp
Class TradeApp
{
{
[WebMethod]
[WebMethod]
message ExecuteTrade();
message ExecuteTrade();
}
}
WCF
WCF –
– Windows Communication Foundation
Windows Communication Foundation
Service Model Layer
Service Model Layer Messaging Layer
Messaging Layer
Behaviors
Behaviors Channels
Channels
Transaction
Behavior
CLR Type
Integration
Instancing
Behavior
Security
Channel
HTTP
Transport
Custom
Channel
Reliable
Messaging
Queue
Transport
MSMQ
Integration
TCP
Transport
Named
Pipes
Throttling
Behavior
Error
Handling
Behavior
Concurrency
Behavior
Metadata
Behavior
Custom
Behavior
HTTP
Transport
TCP
Transport
Security
Channel
Custom
Channel
Reliable
Messaging
CLR Type
Integration
Instancing
Behavior
Transaction
Behavior
Composability in Action
• End-to-end Security
– Confidentiality, integrity, authentication,
authorization
– X509, Username/Password, Kerberos, SAML,
custom
• End-to-end Reliable messaging
– In-order guarantees
– Exactly once guarantees
• Transactions
– Guaranteed atomic success or failure across
services
Feature Overview
Security, Reliability, Transactions
20,379 lines
security
5,988 lines
reliable messaging
25,507 lines
transactions
Total lines
56,296
4,442 lines
infrastructure
class HelloService {
[WebMethod]
public String Hello(String Greeting) {
X509CertificateCollection collection = new
X509CertificateCollection();
IntPtr blob = Marshal.AllocHGlobal(Marshal.SizeOf(
typeof(CRYPTOAPI_BLOB)));
IntPtr data = (IntPtr)((int)blob +
Marshal.SizeOf(typeof(CRYPTOAPI_BLOB)));
…
SeqAckRange range = new SeqAcknRange(id, low, high );
SeqAckRange[] ranges = { range };
ReliableQueue.ProcessAcks( ranges );
…
hr = pITxDispenser->BeginTransaction (NULL,
ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions,
&pITransaction);
…
return Greeting;
}
}
Development Productivity
Using Visual Studio .NET 2003
Development Productivity
Using Visual Studio .NET 2003 and WSE
10 lines
security
1,804 lines
reliable messaging
25,507 lines
transactions
Total lines
27,321
class HelloService {
[WebMethod]
public String Hello(String Greeting) {
foreach ( SecurityToken tok in
requestContext.Security.Tokens
{
X509SecurityToken token = tok as X509SecToken
}
…
SeqAckRange range = new SeqAcknRange(id,low,high );
SeqAckRange[] ranges = { range };
ReliableQueue.ProcessAcks( ranges );
…
hr = pITxDispenser->BeginTransaction (NULL,
ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions,
&pITransaction);
…
return Greeting;
}
}
Development Productivity
Using Visual Studio 2005 and WCF (Indigo)
1 lines
security
1 lines
reliable messaging
1 lines
transactions
Total lines 3
[ServiceContract(SecureChannel, SecurityMode =“Windows")]
[Reliability(Guarantees.ExactlyOnce | Guarantees.InOrder)]
[ServiceContract]
class HelloService
{
[ServiceOperation(TransactionFlowAllowed = true)]
String Hello(String Greeting)
{
return Greeting;
}
Contract Policy (WS
Contract Policy (WS-
-Policy)
Policy)
•
• Requires WS
Requires WS-
-Security, Trust, SCT
Security, Trust, SCT
•
• Requires use of TCP SOAP binding
Requires use of TCP SOAP binding
Class MyService
Class MyService
{
{
}
}
int MyMethod(string arg)
int MyMethod(string arg)
{
{
}
}
Application Code
Application Code What is Exposed
What is Exposed
Nothing!
Nothing!
Boundaries are explicit
Boundaries are explicit
[TcpTransport]
[TcpTransport]
[ServiceOperation]
[ServiceOperation]
[FederatedSecurity]
[FederatedSecurity]
[Discoverable]
[Discoverable]
Autonomy (WS
Autonomy (WS-
-Security family, WS
Security family, WS-
-Discovery)
Discovery)
•
• Assume any messages received are rogue
Assume any messages received are rogue
•
• A utom atically announces the service’s existence on
A utom atically announces the service’s existence on
startup, optionally to central directory
startup, optionally to central directory
•
• Exposes endpoint that responds to Find requests
Exposes endpoint that responds to Find requests
Nothing about implementation/platform exposed.
Nothing about implementation/platform exposed.
Find and call the service using public standards with any
Find and call the service using public standards with any
implementation.
implementation.
[ServiceContract]
[ServiceContract]
Contract Schema (WSDL + XSD)
Contract Schema (WSDL + XSD)
•
• Requires message body <arg>
Requires message body <arg> string <
string <arg>
arg>
•
• Service reply message body <return>
Service reply message body <return> int <
int <return>
return>
How WCF implements the
How WCF implements the
tenets of SOA
tenets of SOA
Roadmap Provides Continuity
• WCF will supersede existing
connected systems
technologies.
• Other technologies continue
to co-exist, interoperate and
be supported via
support policy
WCF
ASMX
Enterprise Services
.NET Remoting
Com(+)
MSMQ
ASMX
WSE1
WSE2
WSE-n
Designing for WCF
• Build services using ASMX
• Use WSE for WS-* support
• Keep components within your service boundaries
• Use System.Messaging for async queued
messaging
• Use Enterprise Services
when transactions,
activation required
• Avoid or abstract
low-level .NET
Remoting
extensibility
such as sinks,
channels
• Service Orientation is an architectural paradigm,
conforming to the four tenets
• Service Orientation reflects the realities of
building heterogeneous distributed systems
• Service Orientation enables agility and the
ability to leverage existing assets, without
having to rip-and-replace
• The Microsoft platform provides the best tools to
enable you to build Service Oriented systems
today and leads the industry in innovation for
the future
Summary
CALL TO ACTION
• Learn about SOA
– Ask questions
– http://blogs.msdn.com/pooyad
• Use Visual Studio 2005
– create web services (i
f you haven’
t al
ready, and see how
easy it is)
– http://msdn.microsoft.com/vstudio/
• Visual Studio 2005 Express (CD in your bags)
• K eep up to date w i
th M i
crosoft’
s A rchi
tecture
Vision
– http://www.architecturejournal.net/
• Sign up for the Architecture Journal
Ad

More Related Content

Similar to Course 1 service oriented architecture.pdf (20)

Establishing SOA Focused Enterprise Architecture
Establishing SOA Focused Enterprise ArchitectureEstablishing SOA Focused Enterprise Architecture
Establishing SOA Focused Enterprise Architecture
Chris Haddad
 
Soa 18 soa trends
Soa 18 soa trendsSoa 18 soa trends
Soa 18 soa trends
Vaibhav Khanna
 
Migrations Startegy: Lotus Notes to Office 365 & Azure
Migrations Startegy: Lotus Notes to Office 365 & AzureMigrations Startegy: Lotus Notes to Office 365 & Azure
Migrations Startegy: Lotus Notes to Office 365 & Azure
WinWire Technologies Inc
 
UTF-8'en'IBM_Cloud_SCO_Content_20130702c
UTF-8'en'IBM_Cloud_SCO_Content_20130702cUTF-8'en'IBM_Cloud_SCO_Content_20130702c
UTF-8'en'IBM_Cloud_SCO_Content_20130702c
R.gowtham kumar
 
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
Richard Hudson
 
Enterprise BI & SOA
Enterprise BI & SOAEnterprise BI & SOA
Enterprise BI & SOA
Ambareesh Kulkarni
 
SOA1-Background.ppt SOFTWARE ORIENTED SERVICES AND ARCHITECTURE
SOA1-Background.ppt SOFTWARE ORIENTED SERVICES AND ARCHITECTURESOA1-Background.ppt SOFTWARE ORIENTED SERVICES AND ARCHITECTURE
SOA1-Background.ppt SOFTWARE ORIENTED SERVICES AND ARCHITECTURE
AnyaForger34
 
Skill_Level_ Strider
Skill_Level_ StriderSkill_Level_ Strider
Skill_Level_ Strider
Tushar R
 
SOA - Unit 2 - Service Oriented Architecture
SOA - Unit   2 - Service Oriented ArchitectureSOA - Unit   2 - Service Oriented Architecture
SOA - Unit 2 - Service Oriented Architecture
hamsa nandhini
 
Software as a Service .pptx
Software as a Service .pptxSoftware as a Service .pptx
Software as a Service .pptx
juergenJaeckel
 
Designing Microservices
Designing MicroservicesDesigning Microservices
Designing Microservices
David Chou
 
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
hamsa nandhini
 
SOA Integration Blueprint with Oracle SOA Suite
SOA Integration Blueprint with Oracle SOA SuiteSOA Integration Blueprint with Oracle SOA Suite
SOA Integration Blueprint with Oracle SOA Suite
Matthias Furrer
 
SOA and Monolith Architecture - Micro Services.pptx
SOA and Monolith Architecture - Micro Services.pptxSOA and Monolith Architecture - Micro Services.pptx
SOA and Monolith Architecture - Micro Services.pptx
Kongu Engineering College, Perundurai, Erode
 
Status Quo on the automation support in SOA Suite OGhTech17
Status Quo on the automation support in SOA Suite OGhTech17Status Quo on the automation support in SOA Suite OGhTech17
Status Quo on the automation support in SOA Suite OGhTech17
Jon Petter Hjulstad
 
W
WW
W
SOA Symposium
 
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
WSO2
 
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Chris Haddad
 
WSO2Con USA 2017: The Role of Enterprise Integration in Digital Transformation
WSO2Con USA 2017: The Role of Enterprise Integration in Digital TransformationWSO2Con USA 2017: The Role of Enterprise Integration in Digital Transformation
WSO2Con USA 2017: The Role of Enterprise Integration in Digital Transformation
WSO2
 
Service Oriented Architectures (SOA) Monitoring and Management with HP OpenVi...
Service Oriented Architectures (SOA) Monitoring and Management with HP OpenVi...Service Oriented Architectures (SOA) Monitoring and Management with HP OpenVi...
Service Oriented Architectures (SOA) Monitoring and Management with HP OpenVi...
Stefan Bergstein
 
Establishing SOA Focused Enterprise Architecture
Establishing SOA Focused Enterprise ArchitectureEstablishing SOA Focused Enterprise Architecture
Establishing SOA Focused Enterprise Architecture
Chris Haddad
 
Migrations Startegy: Lotus Notes to Office 365 & Azure
Migrations Startegy: Lotus Notes to Office 365 & AzureMigrations Startegy: Lotus Notes to Office 365 & Azure
Migrations Startegy: Lotus Notes to Office 365 & Azure
WinWire Technologies Inc
 
UTF-8'en'IBM_Cloud_SCO_Content_20130702c
UTF-8'en'IBM_Cloud_SCO_Content_20130702cUTF-8'en'IBM_Cloud_SCO_Content_20130702c
UTF-8'en'IBM_Cloud_SCO_Content_20130702c
R.gowtham kumar
 
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
Richard Hudson
 
SOA1-Background.ppt SOFTWARE ORIENTED SERVICES AND ARCHITECTURE
SOA1-Background.ppt SOFTWARE ORIENTED SERVICES AND ARCHITECTURESOA1-Background.ppt SOFTWARE ORIENTED SERVICES AND ARCHITECTURE
SOA1-Background.ppt SOFTWARE ORIENTED SERVICES AND ARCHITECTURE
AnyaForger34
 
Skill_Level_ Strider
Skill_Level_ StriderSkill_Level_ Strider
Skill_Level_ Strider
Tushar R
 
SOA - Unit 2 - Service Oriented Architecture
SOA - Unit   2 - Service Oriented ArchitectureSOA - Unit   2 - Service Oriented Architecture
SOA - Unit 2 - Service Oriented Architecture
hamsa nandhini
 
Software as a Service .pptx
Software as a Service .pptxSoftware as a Service .pptx
Software as a Service .pptx
juergenJaeckel
 
Designing Microservices
Designing MicroservicesDesigning Microservices
Designing Microservices
David Chou
 
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
hamsa nandhini
 
SOA Integration Blueprint with Oracle SOA Suite
SOA Integration Blueprint with Oracle SOA SuiteSOA Integration Blueprint with Oracle SOA Suite
SOA Integration Blueprint with Oracle SOA Suite
Matthias Furrer
 
Status Quo on the automation support in SOA Suite OGhTech17
Status Quo on the automation support in SOA Suite OGhTech17Status Quo on the automation support in SOA Suite OGhTech17
Status Quo on the automation support in SOA Suite OGhTech17
Jon Petter Hjulstad
 
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
WSO2
 
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Chris Haddad
 
WSO2Con USA 2017: The Role of Enterprise Integration in Digital Transformation
WSO2Con USA 2017: The Role of Enterprise Integration in Digital TransformationWSO2Con USA 2017: The Role of Enterprise Integration in Digital Transformation
WSO2Con USA 2017: The Role of Enterprise Integration in Digital Transformation
WSO2
 
Service Oriented Architectures (SOA) Monitoring and Management with HP OpenVi...
Service Oriented Architectures (SOA) Monitoring and Management with HP OpenVi...Service Oriented Architectures (SOA) Monitoring and Management with HP OpenVi...
Service Oriented Architectures (SOA) Monitoring and Management with HP OpenVi...
Stefan Bergstein
 

Recently uploaded (20)

How to track Cost and Revenue using Analytic Accounts in odoo Accounting, App...
How to track Cost and Revenue using Analytic Accounts in odoo Accounting, App...How to track Cost and Revenue using Analytic Accounts in odoo Accounting, App...
How to track Cost and Revenue using Analytic Accounts in odoo Accounting, App...
Celine George
 
SPRING FESTIVITIES - UK AND USA -
SPRING FESTIVITIES - UK AND USA            -SPRING FESTIVITIES - UK AND USA            -
SPRING FESTIVITIES - UK AND USA -
Colégio Santa Teresinha
 
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public SchoolsK12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
dogden2
 
Political History of Pala dynasty Pala Rulers NEP.pptx
Political History of Pala dynasty Pala Rulers NEP.pptxPolitical History of Pala dynasty Pala Rulers NEP.pptx
Political History of Pala dynasty Pala Rulers NEP.pptx
Arya Mahila P. G. College, Banaras Hindu University, Varanasi, India.
 
YSPH VMOC Special Report - Measles Outbreak Southwest US 5-3-2025.pptx
YSPH VMOC Special Report - Measles Outbreak  Southwest US 5-3-2025.pptxYSPH VMOC Special Report - Measles Outbreak  Southwest US 5-3-2025.pptx
YSPH VMOC Special Report - Measles Outbreak Southwest US 5-3-2025.pptx
Yale School of Public Health - The Virtual Medical Operations Center (VMOC)
 
Understanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s GuideUnderstanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s Guide
GS Virdi
 
Operations Management (Dr. Abdulfatah Salem).pdf
Operations Management (Dr. Abdulfatah Salem).pdfOperations Management (Dr. Abdulfatah Salem).pdf
Operations Management (Dr. Abdulfatah Salem).pdf
Arab Academy for Science, Technology and Maritime Transport
 
Ultimate VMware 2V0-11.25 Exam Dumps for Exam Success
Ultimate VMware 2V0-11.25 Exam Dumps for Exam SuccessUltimate VMware 2V0-11.25 Exam Dumps for Exam Success
Ultimate VMware 2V0-11.25 Exam Dumps for Exam Success
Mark Soia
 
Stein, Hunt, Green letter to Congress April 2025
Stein, Hunt, Green letter to Congress April 2025Stein, Hunt, Green letter to Congress April 2025
Stein, Hunt, Green letter to Congress April 2025
Mebane Rash
 
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - WorksheetCBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
Sritoma Majumder
 
Introduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe EngineeringIntroduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe Engineering
Damian T. Gordon
 
2541William_McCollough_DigitalDetox.docx
2541William_McCollough_DigitalDetox.docx2541William_McCollough_DigitalDetox.docx
2541William_McCollough_DigitalDetox.docx
contactwilliamm2546
 
GDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptxGDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptx
azeenhodekar
 
LDMMIA Reiki Master Spring 2025 Mini Updates
LDMMIA Reiki Master Spring 2025 Mini UpdatesLDMMIA Reiki Master Spring 2025 Mini Updates
LDMMIA Reiki Master Spring 2025 Mini Updates
LDM Mia eStudios
 
Presentation on Tourism Product Development By Md Shaifullar Rabbi
Presentation on Tourism Product Development By Md Shaifullar RabbiPresentation on Tourism Product Development By Md Shaifullar Rabbi
Presentation on Tourism Product Development By Md Shaifullar Rabbi
Md Shaifullar Rabbi
 
How to Subscribe Newsletter From Odoo 18 Website
How to Subscribe Newsletter From Odoo 18 WebsiteHow to Subscribe Newsletter From Odoo 18 Website
How to Subscribe Newsletter From Odoo 18 Website
Celine George
 
Quality Contril Analysis of Containers.pdf
Quality Contril Analysis of Containers.pdfQuality Contril Analysis of Containers.pdf
Quality Contril Analysis of Containers.pdf
Dr. Bindiya Chauhan
 
Exploring-Substances-Acidic-Basic-and-Neutral.pdf
Exploring-Substances-Acidic-Basic-and-Neutral.pdfExploring-Substances-Acidic-Basic-and-Neutral.pdf
Exploring-Substances-Acidic-Basic-and-Neutral.pdf
Sandeep Swamy
 
YSPH VMOC Special Report - Measles Outbreak Southwest US 4-30-2025.pptx
YSPH VMOC Special Report - Measles Outbreak  Southwest US 4-30-2025.pptxYSPH VMOC Special Report - Measles Outbreak  Southwest US 4-30-2025.pptx
YSPH VMOC Special Report - Measles Outbreak Southwest US 4-30-2025.pptx
Yale School of Public Health - The Virtual Medical Operations Center (VMOC)
 
Presentation of the MIPLM subject matter expert Erdem Kaya
Presentation of the MIPLM subject matter expert Erdem KayaPresentation of the MIPLM subject matter expert Erdem Kaya
Presentation of the MIPLM subject matter expert Erdem Kaya
MIPLM
 
How to track Cost and Revenue using Analytic Accounts in odoo Accounting, App...
How to track Cost and Revenue using Analytic Accounts in odoo Accounting, App...How to track Cost and Revenue using Analytic Accounts in odoo Accounting, App...
How to track Cost and Revenue using Analytic Accounts in odoo Accounting, App...
Celine George
 
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public SchoolsK12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
dogden2
 
Understanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s GuideUnderstanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s Guide
GS Virdi
 
Ultimate VMware 2V0-11.25 Exam Dumps for Exam Success
Ultimate VMware 2V0-11.25 Exam Dumps for Exam SuccessUltimate VMware 2V0-11.25 Exam Dumps for Exam Success
Ultimate VMware 2V0-11.25 Exam Dumps for Exam Success
Mark Soia
 
Stein, Hunt, Green letter to Congress April 2025
Stein, Hunt, Green letter to Congress April 2025Stein, Hunt, Green letter to Congress April 2025
Stein, Hunt, Green letter to Congress April 2025
Mebane Rash
 
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - WorksheetCBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
Sritoma Majumder
 
Introduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe EngineeringIntroduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe Engineering
Damian T. Gordon
 
2541William_McCollough_DigitalDetox.docx
2541William_McCollough_DigitalDetox.docx2541William_McCollough_DigitalDetox.docx
2541William_McCollough_DigitalDetox.docx
contactwilliamm2546
 
GDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptxGDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptx
azeenhodekar
 
LDMMIA Reiki Master Spring 2025 Mini Updates
LDMMIA Reiki Master Spring 2025 Mini UpdatesLDMMIA Reiki Master Spring 2025 Mini Updates
LDMMIA Reiki Master Spring 2025 Mini Updates
LDM Mia eStudios
 
Presentation on Tourism Product Development By Md Shaifullar Rabbi
Presentation on Tourism Product Development By Md Shaifullar RabbiPresentation on Tourism Product Development By Md Shaifullar Rabbi
Presentation on Tourism Product Development By Md Shaifullar Rabbi
Md Shaifullar Rabbi
 
How to Subscribe Newsletter From Odoo 18 Website
How to Subscribe Newsletter From Odoo 18 WebsiteHow to Subscribe Newsletter From Odoo 18 Website
How to Subscribe Newsletter From Odoo 18 Website
Celine George
 
Quality Contril Analysis of Containers.pdf
Quality Contril Analysis of Containers.pdfQuality Contril Analysis of Containers.pdf
Quality Contril Analysis of Containers.pdf
Dr. Bindiya Chauhan
 
Exploring-Substances-Acidic-Basic-and-Neutral.pdf
Exploring-Substances-Acidic-Basic-and-Neutral.pdfExploring-Substances-Acidic-Basic-and-Neutral.pdf
Exploring-Substances-Acidic-Basic-and-Neutral.pdf
Sandeep Swamy
 
Presentation of the MIPLM subject matter expert Erdem Kaya
Presentation of the MIPLM subject matter expert Erdem KayaPresentation of the MIPLM subject matter expert Erdem Kaya
Presentation of the MIPLM subject matter expert Erdem Kaya
MIPLM
 
Ad

Course 1 service oriented architecture.pdf

  • 3. Agenda • Defining SOA – SOA, Service Orientation, Connected Systems and how they relate • Benefits of SOA • M i crosoft’ s vi si on for S O A – Why Microsoft provides the best platform for building your SOA today, and in the future
  • 5. • SO is an architectural paradigm for building distributed systems • SO is evolutionary • SO is a means to an end • SO can and should be an incremental process • SO is easy and can be done in- house • SO is a technology or set of technologies • SO is revolutionary • SO is the end goal • SO requires business and technology overhaul • SO is complex and requires an army of consultants Reality Myth T he onl y w ay you can use S O A for everythi ng i s to renam e everythi ng to ‘ S O A ’ Roy Schulte, Gartner Cutting through the SOA Hype
  • 6. • Service – An endpoint that reacts to messages • Service Orientation – An architectural paradigm that employs the following four tenets: – Boundaries are explicit – Services are autonomous – Services share schema and contract, not class – Service compatibility is determined based on policy • Service Oriented Architecture (SOA) – Any architecture the adheres to the Four Tenets of Service Orientation Services, Service Orientation and SOA
  • 7. • Services interact by exchanging messages • Each message exchange traverses boundaries and may have costs • SO formalizes intentional, and explicit interaction Tenet 1 – Boundaries are Explicit
  • 8. • Services expose schemas defining data structures and contracts defining available operations • Contracts and schema may be independently versioned over time Tenet 2 – Share Schema and Contract, Not Types
  • 9. • Policy is the statement of communication requirements necessary for service interaction • Service capabilities and requirements are expressed in terms of a policy expression • A policy can contain multiple assertions Tenet 3 – Policy defines Service Compatibility
  • 10. • A utonom y ≠ Independence • Topology of a system evolves over time • Unlike OO, services do not share behavior • Services gracefully handle failure Tenet 4 – Services Are Autonomous
  • 11. Web Services and SOA Web Services EDI/B2B EAI Distributed Computing Web Site/Portal Messaging Policies Practices Standard Protocols Universal Support Low Cost Existing Assets Best Practice Approach Technology Realization Frameworks SOA
  • 12. Service Orientation Big Picture • Business Process View Business Business Component Component Business Business Component Component Business Business Process Process Composite Composite Application Application Finer Grained Finer Grained Internal Internal Service Service Operations Operations Coarse Coarse Grained Web Grained Web Service Service Operations Operations Fine Grained Fine Grained Object and Object and database calls database calls
  • 13. Composition Platform Composite Applications • Applications composed of multiple service building blocks – Composed, not built – Cut across functional silos Composite Application Composite Application Portal Devices Office Other Existing Systems
  • 15. Today • Business Issues – Increased Customer Focus – Outdeliver the Competition – Get the most value for your investment • Technical Issues – Integration costs – Development time – Future proof against new technologies – Heterogeneous environment – Support new devices
  • 16. Shift To Service Orientation • Connections = cost • Function oriented • Build to last • Prolonged development From From To To • Connections = value • Process oriented • Build for change • Incrementally deployed • Application silos • Tightly coupled • Object oriented • Orchestrated solutions • Loosely coupled • Message oriented
  • 17. SOA Business Benefits Cost • Decreased cost – Reduces TCO and increase ROI on evolving systems – Add value to core investments by leveraging existing assets – New systems can be built faster for less money because existing services can be more easily reused – Built for flexibility – Long term value of interoperability
  • 18. SOA Business Benefits Productivity • Increased employee productivity – Unlock data – Built on existing skills – Consolidate Duplicate Functionality
  • 19. SOA Business Benefits Partnership • Built for partnerships – Standards based – Business relationships expressed via service interactions – Integration is driven by what is needed, not what is technically possible.
  • 20. SOA Business Benefits Agility • Agility - Built for change – Helps applications evolve over time and last – Abstract the backend and replace over time – Access to the business value, no matter what technology delivers it. – Focusing on core-competencies – Incremental implementation approach is supported.
  • 21. Microsoft leading the way with SOA
  • 22. Microsoft and SOA • Connected Systems is the moniker we use to describe the eco-system of SOA enabled applications • SOA enables integration • Web Services is the messaging fabric for SOA • .NET is the programming model for Services • Windows and server platform is the hosting platform for Services
  • 23. Microsoft SOA Business Value • XML and Web Services Built in from the ground up – Servers have had XML objects since 2000 versions – .NET Framework built for web services • More productive development environment – Fewer lines of code – Larger Ecosystem – Faster time to market • Integrated Application Environment – Developer tool built for the Framework – Framework integrated into the OS – OS services optimized for the Framework • The Application Server is built-in and evolving
  • 24. M i crosoft’ s SO A Strategy • Leading the charge with Web Services • Building Connected Systems • Best platform to realize service orientation – Visual Studio – ASMX, WSE – SQL – XML – Smart Client – Office, Windows Mobile – Committed to open standards, interoperability – WS-I, W3C, OASIS, HL7, AIAG, SWIFT Perceived as leaders Perceived as leaders – – even before w e started … even before w e started …
  • 25. Visual Studio Team System Edition for Software Architects
  • 27. Endpoints and Application Prototypes • Endpoints – WebServiceEndpoint – WebContentEndpoint – GenericEndpoint • Applications – WindowsApplication – ASP.NETWebService – ASP.NETWebApplication – OfficeApplication – ExternalWebService – ExternalDatabase – BizTalkWebService – GenericApplication
  • 30. Implementing the Application • Application architects and/or developers can implement one or more of the applications on the diagram • Implementing is the process of creating the Visual Studio projects (similar to File > New) • Generates starter source code, content, and config files based on Visual Studio templates • Implementing requires the Team Edition for Software Architects or Team Suite
  • 31. Create seamless, rich user experiences Connect heterogeneous systems Provide seamless and integrated security Compose and integrate business processes Provide seamless access to multiple data stores Messaging Messaging and Services and Services Workflow Workflow and Process and Process Federated Data Identity Identity and Access and Access User User Interaction Interaction Connected Systems
  • 32. Architectural Architectural Guidance Guidance SQL Server SQL Server MOM MOM Visual Studio 2005 Visual Studio 2005 Active Active Directory Directory Windows Windows Communication Communication Foundation Foundation BizTalk Server BizTalk Server Office and Office and VSTO VSTO Microsoft SOA Enablement
  • 34. • U ni fi es today’ s di stri buted technol ogy stacks • Composable functionality • Appropriate for use on-machine, cross machine, and cross Internet Windows Communication Foundation “The uni fi ed program m i ng m odelfor rapi dl y bui l di ng service-ori ented appl i cati ons on the W i ndow s pl atform ” • WS-* interoperability with applications running on other platforms • Interoperabi l i ty w i th today’ s di stri buted stacks • Service-oriented programming model • Supports 4 tenets of service-orientation • Maximized developer productivity Unification Unification Productive Productive Service Service- -Oriented Oriented Programming Programming Interoperability Interoperability & Integration & Integration
  • 36. [ServiceContract] Class EnterpriseTradeApp { [ServiceOperation] message ExecuteTrade (); } Class TradeApp Class TradeApp { { [WebMethod] [WebMethod] message ExecuteTrade(); message ExecuteTrade(); } } WCF WCF – – Windows Communication Foundation Windows Communication Foundation
  • 37. Service Model Layer Service Model Layer Messaging Layer Messaging Layer Behaviors Behaviors Channels Channels Transaction Behavior CLR Type Integration Instancing Behavior Security Channel HTTP Transport Custom Channel Reliable Messaging Queue Transport MSMQ Integration TCP Transport Named Pipes Throttling Behavior Error Handling Behavior Concurrency Behavior Metadata Behavior Custom Behavior HTTP Transport TCP Transport Security Channel Custom Channel Reliable Messaging CLR Type Integration Instancing Behavior Transaction Behavior Composability in Action
  • 38. • End-to-end Security – Confidentiality, integrity, authentication, authorization – X509, Username/Password, Kerberos, SAML, custom • End-to-end Reliable messaging – In-order guarantees – Exactly once guarantees • Transactions – Guaranteed atomic success or failure across services Feature Overview Security, Reliability, Transactions
  • 39. 20,379 lines security 5,988 lines reliable messaging 25,507 lines transactions Total lines 56,296 4,442 lines infrastructure class HelloService { [WebMethod] public String Hello(String Greeting) { X509CertificateCollection collection = new X509CertificateCollection(); IntPtr blob = Marshal.AllocHGlobal(Marshal.SizeOf( typeof(CRYPTOAPI_BLOB))); IntPtr data = (IntPtr)((int)blob + Marshal.SizeOf(typeof(CRYPTOAPI_BLOB))); … SeqAckRange range = new SeqAcknRange(id, low, high ); SeqAckRange[] ranges = { range }; ReliableQueue.ProcessAcks( ranges ); … hr = pITxDispenser->BeginTransaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, &pITransaction); … return Greeting; } } Development Productivity Using Visual Studio .NET 2003
  • 40. Development Productivity Using Visual Studio .NET 2003 and WSE 10 lines security 1,804 lines reliable messaging 25,507 lines transactions Total lines 27,321 class HelloService { [WebMethod] public String Hello(String Greeting) { foreach ( SecurityToken tok in requestContext.Security.Tokens { X509SecurityToken token = tok as X509SecToken } … SeqAckRange range = new SeqAcknRange(id,low,high ); SeqAckRange[] ranges = { range }; ReliableQueue.ProcessAcks( ranges ); … hr = pITxDispenser->BeginTransaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, &pITransaction); … return Greeting; } }
  • 41. Development Productivity Using Visual Studio 2005 and WCF (Indigo) 1 lines security 1 lines reliable messaging 1 lines transactions Total lines 3 [ServiceContract(SecureChannel, SecurityMode =“Windows")] [Reliability(Guarantees.ExactlyOnce | Guarantees.InOrder)] [ServiceContract] class HelloService { [ServiceOperation(TransactionFlowAllowed = true)] String Hello(String Greeting) { return Greeting; }
  • 42. Contract Policy (WS Contract Policy (WS- -Policy) Policy) • • Requires WS Requires WS- -Security, Trust, SCT Security, Trust, SCT • • Requires use of TCP SOAP binding Requires use of TCP SOAP binding Class MyService Class MyService { { } } int MyMethod(string arg) int MyMethod(string arg) { { } } Application Code Application Code What is Exposed What is Exposed Nothing! Nothing! Boundaries are explicit Boundaries are explicit [TcpTransport] [TcpTransport] [ServiceOperation] [ServiceOperation] [FederatedSecurity] [FederatedSecurity] [Discoverable] [Discoverable] Autonomy (WS Autonomy (WS- -Security family, WS Security family, WS- -Discovery) Discovery) • • Assume any messages received are rogue Assume any messages received are rogue • • A utom atically announces the service’s existence on A utom atically announces the service’s existence on startup, optionally to central directory startup, optionally to central directory • • Exposes endpoint that responds to Find requests Exposes endpoint that responds to Find requests Nothing about implementation/platform exposed. Nothing about implementation/platform exposed. Find and call the service using public standards with any Find and call the service using public standards with any implementation. implementation. [ServiceContract] [ServiceContract] Contract Schema (WSDL + XSD) Contract Schema (WSDL + XSD) • • Requires message body <arg> Requires message body <arg> string < string <arg> arg> • • Service reply message body <return> Service reply message body <return> int < int <return> return> How WCF implements the How WCF implements the tenets of SOA tenets of SOA
  • 43. Roadmap Provides Continuity • WCF will supersede existing connected systems technologies. • Other technologies continue to co-exist, interoperate and be supported via support policy WCF ASMX Enterprise Services .NET Remoting Com(+) MSMQ ASMX WSE1 WSE2 WSE-n
  • 44. Designing for WCF • Build services using ASMX • Use WSE for WS-* support • Keep components within your service boundaries • Use System.Messaging for async queued messaging • Use Enterprise Services when transactions, activation required • Avoid or abstract low-level .NET Remoting extensibility such as sinks, channels
  • 45. • Service Orientation is an architectural paradigm, conforming to the four tenets • Service Orientation reflects the realities of building heterogeneous distributed systems • Service Orientation enables agility and the ability to leverage existing assets, without having to rip-and-replace • The Microsoft platform provides the best tools to enable you to build Service Oriented systems today and leads the industry in innovation for the future Summary
  • 46. CALL TO ACTION • Learn about SOA – Ask questions – http://blogs.msdn.com/pooyad • Use Visual Studio 2005 – create web services (i f you haven’ t al ready, and see how easy it is) – http://msdn.microsoft.com/vstudio/ • Visual Studio 2005 Express (CD in your bags) • K eep up to date w i th M i crosoft’ s A rchi tecture Vision – http://www.architecturejournal.net/ • Sign up for the Architecture Journal