service oriented architecture - soa a new paradigm for developing

27
Service Oriented Service Oriented Architecture - SOA Architecture - SOA A New Paradigm for A New Paradigm for Developing Enterprise Developing Enterprise Software Systems Software Systems

Upload: zubin67

Post on 10-Jun-2015

348 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Service Oriented Architecture - SOA A New Paradigm for Developing

Service Oriented Service Oriented Architecture - SOAArchitecture - SOA

A New Paradigm for Developing A New Paradigm for Developing Enterprise Software SystemsEnterprise Software Systems

Page 2: Service Oriented Architecture - SOA A New Paradigm for Developing

OutlineOutline

IntroductionIntroduction

ESB implementation of SOAESB implementation of SOA

Analysis of ESB implementationAnalysis of ESB implementation

ConclusionConclusion

ReferencesReferences

Q & AQ & A

Page 3: Service Oriented Architecture - SOA A New Paradigm for Developing

IntroductionIntroduction

Organizations are increasingly collaborating and Organizations are increasingly collaborating and constitutes an enterprise.constitutes an enterprise.

Many organizations have pre-existing IT resources.Many organizations have pre-existing IT resources.

Not economical to dispose in favor of mutual interaction.Not economical to dispose in favor of mutual interaction.

Must take another approach.Must take another approach.

IBM invents SOA IBM invents SOA [IBM][IBM]..

Page 4: Service Oriented Architecture - SOA A New Paradigm for Developing

IntroductionIntroduction

At the highest level SOA consists of the At the highest level SOA consists of the following parts:following parts:

A set of service providers.A set of service providers.

A set of service consumers.A set of service consumers.

A discovery service.A discovery service.

Uses XML–based technologies to achieve Uses XML–based technologies to achieve platform independence.platform independence.

Page 5: Service Oriented Architecture - SOA A New Paradigm for Developing

IntroductionIntroduction

Page 6: Service Oriented Architecture - SOA A New Paradigm for Developing

IntroductionIntroduction Service providersService providers makes a registration call to the service makes a registration call to the service

broker.broker.

The The service brokerservice broker stores and maintains information stores and maintains information about service ID and location.about service ID and location.

The The Service consumersService consumers queries service broker. queries service broker.

Service broker either:Service broker either: lets the consumer know about the location of the provider or,lets the consumer know about the location of the provider or, dynamically discovers the provider location and lets the dynamically discovers the provider location and lets the

consumer know.consumer know.

The consumer interacts with provider.The consumer interacts with provider.

Page 7: Service Oriented Architecture - SOA A New Paradigm for Developing

IntroductionIntroduction Related functionalities are combined into Related functionalities are combined into

cohesive software agents.cohesive software agents.

For pre–existing software agents a wrapper is For pre–existing software agents a wrapper is required.required.

Each cohesive software agent can be used as a Each cohesive software agent can be used as a service by the consumers.service by the consumers.

Overall enterprise application is a collection of Overall enterprise application is a collection of such service providers and consumers.such service providers and consumers.

Page 8: Service Oriented Architecture - SOA A New Paradigm for Developing

IntroductionIntroduction

[GUEDES][GUEDES] describes an application of SOA in a describes an application of SOA in a distributed data mining application. Please see distributed data mining application. Please see article for more details.article for more details.

Because of enterprise–wide exposure software Because of enterprise–wide exposure software vulnerabilities are more pronounced in SOA.vulnerabilities are more pronounced in SOA.

The authors in The authors in [EPSTEIN][EPSTEIN] mentions some mentions some pitfalls to be aware of when considering security pitfalls to be aware of when considering security in SOA implementations.in SOA implementations.

Page 9: Service Oriented Architecture - SOA A New Paradigm for Developing

OutlineOutline IntroductionIntroduction

ESB implementation of SOAESB implementation of SOA

Analysis of ESB implementationAnalysis of ESB implementation

ConclusionConclusion

ReferencesReferences

Q & AQ & A

Page 10: Service Oriented Architecture - SOA A New Paradigm for Developing

ESB Implementation of SOAESB Implementation of SOA

Two approaches to implement SOA:Two approaches to implement SOA:

Endpoint–based approach.Endpoint–based approach.

Bus–based approach (ESB).Bus–based approach (ESB).

Page 11: Service Oriented Architecture - SOA A New Paradigm for Developing

ESB Implementation of SOAESB Implementation of SOA

Endpoint-based implementation:Endpoint-based implementation:

Page 12: Service Oriented Architecture - SOA A New Paradigm for Developing

ESB Implementation of SOAESB Implementation of SOA

Bus-based implementation:Bus-based implementation:

Page 13: Service Oriented Architecture - SOA A New Paradigm for Developing

ESB Implementation of SOAESB Implementation of SOA

The bus-based implementation – central The bus-based implementation – central component is the service bus called the component is the service bus called the enterprise service bus.enterprise service bus.

Can be described using the Publish Can be described using the Publish Subscribe style Subscribe style [CLEMENTS][CLEMENTS]..

Page 14: Service Oriented Architecture - SOA A New Paradigm for Developing

ESB Implementation of SOAESB Implementation of SOA

Some ESB features that must be present Some ESB features that must be present [GENENDER][GENENDER]::

Standard–based.Standard–based.

Orchestration.Orchestration.

Security.Security.

Reliable.Reliable.

Distributed and loosely–coupled.Distributed and loosely–coupled.

Incremental adoption.Incremental adoption.

Page 15: Service Oriented Architecture - SOA A New Paradigm for Developing

ESB Implementation of SOAESB Implementation of SOA

Two of the commercial implementations Two of the commercial implementations are available from:are available from:

Sonic Software Sonic Software [SONIC][SONIC]..

SUN Microsystems SUN Microsystems [SUN][SUN]..

Page 16: Service Oriented Architecture - SOA A New Paradigm for Developing

OutlineOutline IntroductionIntroduction

ESB implementation of SOAESB implementation of SOA

Analysis of ESB implementationAnalysis of ESB implementation

ConclusionConclusion

ReferencesReferences

Q & AQ & A

Page 17: Service Oriented Architecture - SOA A New Paradigm for Developing

Analysis of ESB ImplementationAnalysis of ESB Implementation

ESB Implementation is more scalable than ESB Implementation is more scalable than the endpoint–based implementation.the endpoint–based implementation.

Page 18: Service Oriented Architecture - SOA A New Paradigm for Developing

Analysis of ESB ImplementationAnalysis of ESB Implementation

In endpoint-based implementation:In endpoint-based implementation:

Page 19: Service Oriented Architecture - SOA A New Paradigm for Developing

Analysis of ESB ImplementationAnalysis of ESB Implementation N software systems.N software systems.

Must interact with N–1 other systems.Must interact with N–1 other systems.

Therefore requires O(NTherefore requires O(N22) connectors per software system.) connectors per software system.

To add 1 additional software system we need (N * N) that is, NTo add 1 additional software system we need (N * N) that is, N22 code points for implementing the connectors.code points for implementing the connectors.

Similar order of effort is required for removing a single software Similar order of effort is required for removing a single software system.system.

Becomes extremely tedious and error prone when N is large.Becomes extremely tedious and error prone when N is large.

Page 20: Service Oriented Architecture - SOA A New Paradigm for Developing

Analysis of ESB ImplementationAnalysis of ESB Implementation

In ESB implementation:In ESB implementation:

Page 21: Service Oriented Architecture - SOA A New Paradigm for Developing

Analysis of ESB ImplementationAnalysis of ESB Implementation N software systems.N software systems.

Requires 2N connectors per software system.Requires 2N connectors per software system.

Therefore requires O(N) connectors and a constant for Therefore requires O(N) connectors and a constant for implementing the bus itself.implementing the bus itself.

To add 1 additional software system we need only 2N, that is, O(N) To add 1 additional software system we need only 2N, that is, O(N) number of connectors.number of connectors.

Similar order of effort is required for removing a single software Similar order of effort is required for removing a single software system.system.

More scalable than endpoint–based approach because of linear More scalable than endpoint–based approach because of linear complexity in adding and/or removing software systems.complexity in adding and/or removing software systems.

Page 22: Service Oriented Architecture - SOA A New Paradigm for Developing

OutlineOutline IntroductionIntroduction

ESB implementation of SOAESB implementation of SOA

Analysis of ESB implementationAnalysis of ESB implementation

ConclusionConclusion

ReferencesReferences

Q & AQ & A

Page 23: Service Oriented Architecture - SOA A New Paradigm for Developing

ConclusionConclusion Adoption of SOA encourages incremental Adoption of SOA encourages incremental

system development for distributed system system development for distributed system development.development.

Perfectly suitable for developing enterprise Perfectly suitable for developing enterprise applications.applications.

Allows easy migration of organizations to Allows easy migration of organizations to enterprise wide systems.enterprise wide systems.

In particular the bus–based approach is better In particular the bus–based approach is better and more scalable.and more scalable.

Page 24: Service Oriented Architecture - SOA A New Paradigm for Developing

OutlineOutline IntroductionIntroduction

ESB implementation of SOAESB implementation of SOA

Analysis of ESB implementationAnalysis of ESB implementation

ConclusionConclusion

ReferencesReferences

Q & AQ & A

Page 25: Service Oriented Architecture - SOA A New Paradigm for Developing

ReferencesReferences [IBM][IBM] IBM Service Oriented Architecture–SOA. IBM Service Oriented Architecture–SOA. http://www.ibm.com/soahttp://www.ibm.com/soa..

[GUEDES][GUEDES] D. Guedes, W. Meira Jr., and R. Ferreira. “Anteater: A Service–Oriented D. Guedes, W. Meira Jr., and R. Ferreira. “Anteater: A Service–Oriented Architecture for High–Performance Data Mining.” Architecture for High–Performance Data Mining.” IEEE Internet ComputingIEEE Internet Computing, vol. 10, , vol. 10, pp. 36–43. IEEE Computer Society. July–August 2006.pp. 36–43. IEEE Computer Society. July–August 2006.

[EPSTEIN][EPSTEIN] J. Epstein, S. Matsumoto, and G. McGraw. “Software Security and SOA: J. Epstein, S. Matsumoto, and G. McGraw. “Software Security and SOA: Danger, Will Robinson!” Danger, Will Robinson!” IEEE Security and Privacy MagazineIEEE Security and Privacy Magazine, vol. 4, pp. 80–83. IEEE , vol. 4, pp. 80–83. IEEE Computer Society, January–February 2006.Computer Society, January–February 2006.

[CLEMENTS][CLEMENTS] P. Clements, F. Bachmann, L. Bass, D. Garlan, J. Ivers, R. Little, R. P. Clements, F. Bachmann, L. Bass, D. Garlan, J. Ivers, R. Little, R. Nord, and J. Stafford. Nord, and J. Stafford. Documenting Software Architecture: Views and BeyondDocumenting Software Architecture: Views and Beyond. . Addison-Wesley Professional, Springfield, Massachusetts, 1st edition, 2002.Addison-Wesley Professional, Springfield, Massachusetts, 1st edition, 2002.

[GENENDER][GENENDER] J. Genender. “The Buzz About Enterprise Service Bus (ESB).” J. Genender. “The Buzz About Enterprise Service Bus (ESB).” http://www.virtuas.com/files/genender%20j-f.pdfhttp://www.virtuas.com/files/genender%20j-f.pdf..

[SONIC][SONIC] Sonic ESB. Sonic ESB. http://http://www.sonicsoftware.com/products/sonic_esb/index.sspwww.sonicsoftware.com/products/sonic_esb/index.ssp..

[SUN][SUN] SUN Microsystems OpenESB. SUN Microsystems OpenESB. http://http://java.sun.com/integration/openesb/index.jspjava.sun.com/integration/openesb/index.jsp..

Page 26: Service Oriented Architecture - SOA A New Paradigm for Developing

OutlineOutline IntroductionIntroduction

ESB implementation of SOAESB implementation of SOA

Analysis of ESB implementationAnalysis of ESB implementation

ConclusionConclusion

ReferencesReferences

Q & AQ & A

Page 27: Service Oriented Architecture - SOA A New Paradigm for Developing

Q & AQ & A