service-orientation architecture (soa) changsup keum mse student, school of engineering, icu...

22
Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU [email protected] hould be made as simple as possible, but no simpler." -- Albert E

Upload: micah-hinchman

Post on 30-Mar-2015

217 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 2: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

Agenda

<agenda> Service-Oriented Architecture Web Services Web Services in Telecommunications Conclusion</agenda>

Page 3: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

What is a Service?

Some functional block Implications

Always assume remote use Always assume cross-platform use Ignore service's inner implementation

Page 4: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 5: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 6: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

How does this happen?

Change architectural viewpoint

Application-oriented architectureApplication-oriented architecture

Service-oriented architecture (SOA)Service-oriented architecture (SOA)

Page 7: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 8: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 9: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 10: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 11: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 12: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

SOAP Syntax

Page 13: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 14: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

WSDL Syntax

Page 15: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 16: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 17: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 18: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 19: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 20: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 21: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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

Page 22: Service-Orientation Architecture (SOA) ChangSup Keum MSE Student, School of Engineering, ICU cskeum@icu.ac.kr "Things should be made as simple as possible,

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/