Upload
micah-hinchman
View
219
Download
2
Tags:
Embed Size (px)
Citation preview
Service-Orientation Architecture (SOA)
ChangSup KeumMSE Student, School of Engineering, [email protected]
"Things should be made as simple as possible, but no simpler." -- Albert Einstein
Agenda
<agenda> Service-Oriented Architecture Web Services Web Services in Telecommunications Conclusion</agenda>
What is a Service?
Some functional block Implications
Always assume remote use Always assume cross-platform use Ignore service's inner implementation
Service-Orientation
Principle MeaningBoundaries are explicit Developers opt-in to exposing
service-based functionality
Services are autonomous
Independent deployment, versioning, and security
Share schema and contract, not class or object
Integration based-on message formats and exchange patterns, not classes
What if there exist…
Technology and frameworks that allow applications to speak to each other
…thru the Internet infrastructure…
Just imagine an even better world Smooth heterogeneous integration Business process automation and workflow Dynamic construction of business forms Software as a service
How does this happen?
Change architectural viewpoint
Application-oriented architectureApplication-oriented architecture
Service-oriented architecture (SOA)Service-oriented architecture (SOA)
Application-Oriented Architecture
Each application has proprietary structure
Need to recreate for each application
No smooth interaction with other applications
Applications are “tightly-coupled” with inflexible decisions
ApplicationApplication
• User interface• Executable program• Scheduled Execution• Business logic• Procedures
DataAccess
DataSQL
Database XMLFlatFile
Mismatch
Application-oriented architecture is for distributed systems that trust each other
On the Internet, systems are independent, not trusted, and even autonomous
Autonomy implies states, asynchrony, different languages and data formats, etc.
What we need is an architecture for loosely-coupled systems
Service-Oriented Architecture Solution for the tension between autonomy and
interoperability
Towards a Service-Oriented Architecture
Decouple user experience from business logic Provide a common standard allowing user experience to
be delivered in any language or to any platform
ApplicationApplication
• User interface• Executable program• Scheduled Execution• Business logic• Procedures
DataAccess
DataSQL
Database XMLFlatFile
ServiceService
• Messaging• Interface description• Publish and Find
Data Access
DataSQL
Database XMLFlatFile
Common Standard
Business Logic
Autonomous
Autonomous
SystemsSystems
Standards
Standards
conforming
conforming
Web services
A recent, practical implementation of so-called Service-Oriented Architecture
Successor of CORBA for Internet and XML age Key ingredients of Web services
Business logic and data aggregated as a unit Exposed as programmatic interfaces Delivered over ubiquitous internet infrastructure Using standards that are available to all parties
Killer application of XML technology Originally they were called XML Web services, or XWS
for short
Web services Runtime
Client
Corp. applicationDesktop applicationWireless deviceWeb portal etc.
Web services Server
WSDL
SOAPProxy
SOAP Runtime Server
SOAP runtime server
Code generated by WS tools
SOAPMessageProcessor
Webservice
Applications that implement
the service
WS Container
SOAP and WSDL
processing
Application code
DB
Legacy
SOAP Syntax
SOAP is not enough…
How to know what SOAP request body and response document have
methods, parameter names, data types Data types, error codes and messages
We thus need a L anguage... …for D escribing… …S ervices… Delivered over the W eb
WSDL[wizdl] is an IDL for Web services
WSDL Syntax
One More Piece
Pieces we’ve seen so far XML provides open data description SOAP uses XML for cross-platform data
transfer WSDL describes SOAP services
But how do we describe our services so others can discover them?
Universal Description, Discovery, and Integration (UDDI) Describe services so others can discover Speed eager adoption and interoperability
Web services Examples
http://www.gotdotnet.com/userarea http://www.xmethods.com http://www.webservicex.net http://www.webserviceoftheday.com http://www.salcentral.com http://www.brinkster.com
Web Service in Telecommunications
Web Service
Web Service
Web Services
Open Service
Open Service
Architecture
Open Service
Architecture
Parlay (X) Web
Service
IT Communit
y
Telecommunications Community
Web Services in Telecommunications
Standardization Parlay Group
Parlay/OSA Web Services : Parlay mapping of the Parlay APIs into WSDL For vendors who want to use Web Services technology (and
tools) as an alternative to CORBA/IDL
The first version of the Parlay X Web Services was released in May 2003 by The Parlay Group. They are intended to stimulate the development of new teleco
m applications by providing a standardized set of Web Services, which can be used by IT developers without telecom experience.
ETSI, 3GPP, OMA, PayCircle, Microsoft and Vodafone
Service Requester
Service Provider
Service Broker
Parlay Web Service Architecture
OSA/Parlay Application ServersParlay X Application Servers
SCFFramework
SCF SCF SCF
Parlay Web service Gateway / Parlay X Gateway
Bind
Publish
Find
Parlay X Web Services
Parlay Gateway
Parlay X Web Services
Parlay X APIs
Parlay APIs
Parlay XApplications
ParlayApplications
Network Protocols (e.g. SIP, INAP etc)
Network Elements
Increasingabstraction
1. Third Party Call2. Network-Initiated Third Party Call3. SMS4. Multimedia Messaging5. Payment6. Account Management7. User Status8. Terminal Location
Conclusion
Service-orientation is an evolutionary thing No radically new thinking Consolidates good things
“Message” is the key message! Think the message instead of call or
invocation XML is better than binary Asynchronous is good
Get prepared for a service-oriented world
References
http://webservices.xml.com/pub/a/ws/2003/09/30/soa.html
W3C Web Services page: http://www.w3.org/2002/ws/ Web Services Architecture:
http://www.w3.org/TR/ws-arch/ Web Services Description Language (WSDL):
http://www.w3.org/TR/wsdl20/ SOAP Primer: http://www.w3.org/TR/soap12-part0/ UDDI Technical White Paper:
http://www.uddi.org/pubs/Iru_UDDI_Technical_White_Paper.pdf
Web Services Listings: http://www.xmethods.net/ Amazon.com Web Service:
http://www.amazon.com/gp/browse.html/102-6115969-6708167?%5Fencoding=UTF8&node=3435361
Google Web Service: http://www.google.com/apis/