SO-Architectural Roadmap

32
07/04/22 Page 1 SO-Architectural Roadmap B. Ramamurthy

description

SO-Architectural Roadmap. B. Ramamurthy. Review. In Chapter 4 we discussed Definitions of SOA by experts in the field Our own simple definition of an SOA types of services In this llecture we will discuss Details of the various types of services Architecting an SOA (stages) - PowerPoint PPT Presentation

Transcript of SO-Architectural Roadmap

Page 1: SO-Architectural Roadmap

04/22/23 Page 1

SO-Architectural Roadmap

B. Ramamurthy

Page 2: SO-Architectural Roadmap

04/22/23 Page 2

Review• In Chapter 4 we discussed

– Definitions of SOA by experts in the field– Our own simple definition of an SOA– types of services

• In this llecture we will discuss – Details of the various types of services– Architecting an SOA (stages)– Entry points to SOA design

• Chapters 5 and 6

Page 3: SO-Architectural Roadmap

04/22/23 Page 3

Basic / horizontal Services• Fundamental services• Maintain no conversational state• Data-centric services:

– Encapsulates business data– purpose of data centric services is to handle persistent data typically stored

in an Enterprise Information System (EIS).– An EIS could be a simple data base or integrated data base from several

sources.– A file system relational data base or a object relational mapping, data

access objects and layering: all these fall under this category.• For example, “store” operation from a user web service could invoke a

data-centric service that stores the data in the “resource” defined in the operational environment.

– What is a resource in this context?– A data stream, relational DB data source, a data queue– A “store” on a business object (BO) may results many physical writes to

(one or more distributed) data bases. Data-centric service takes care of this.

Page 4: SO-Architectural Roadmap

04/22/23 Page 4

Horizontal services• Logic centric services

– Encapsulate algorithms for complex calculations or business rules.

– Consider the example of Insurance Product Engine (fig.5.3) (For example: Geico or Progressive Insurance)

– We will discuss three alternative approaches to providing this function and why services-based one is advantageous. (pp.72-74)

Page 5: SO-Architectural Roadmap

04/22/23 Page 5

Insurance Product Engine

Agency 2

InsuranceProduct Engine

Call center

Web site 1

Claims

Agency 1

ContractAdministration

Page 6: SO-Architectural Roadmap

04/22/23 Page 6

Intermediary Services • Stateless services that bridge the

technological inconsistencies and design gaps in an architecture.

• Gateways, adapters, facades, and functionality adding services

Page 7: SO-Architectural Roadmap

04/22/23 Page 7

Technology gateway service

Technology BBasic Service

Frontend ServiceTechnology A

Technology ATech GatewayTechnology B

Page 8: SO-Architectural Roadmap

04/22/23 Page 8

Façade Intermediary Service

Basic service 3

Facade

Application 1

Basic service 1

Application 2

Basic service 2

Application 3

Page 9: SO-Architectural Roadmap

04/22/23 Page 9

Process centric services• Process centric services can

encapsulate the knowledge of the organization’s business processes.

• Stateful: they contain and maintain state

• These are project-specific• Requires careful design satisfying the

domain rules and business policies

Page 10: SO-Architectural Roadmap

04/22/23 Page 10

Process-centric service (contd.)

Process-centric service

service 3

Application Frontend

service 1 service 2

Page 11: SO-Architectural Roadmap

04/22/23 Page 11

Application Frontend

Process-centric service (contd.)

service 3service 1 service 2

Page 12: SO-Architectural Roadmap

04/22/23 Page 12

Enterprise level services• Security• Accounting • Billing• SLAs (service level agreements),

service metering• We will refer to these as horizontal

services, i.e., common domain-independent utility services

Page 13: SO-Architectural Roadmap

04/22/23 Page 13

Enterprise Services layers (fig.5.9, 5.10)

Enterprise layer

Process layer

Intermediary layer

Basic layer

Page 14: SO-Architectural Roadmap

04/22/23 Page 14

The architectural roadmap: The stages in development

• Fundamental SOA– Design fundamental services

• Networked SOA– Add intermediary services

• Process-enabled SOA– Add process-centric services, front-ends

• These three stages reach maturity at different rates, services gain more responsibility as the system matures.

• Advantages of using service-orientation will be apparent as the stages evolve independently of each other

Page 15: SO-Architectural Roadmap

04/22/23 Page 15

Fundamental SOA• Excellent starting point for

introduction SOA in an organization• A fundamental SOA consists of two

layers: – Enterprise layer that consists of front-

ends, and – The basic layers that consists of basic

services

Page 16: SO-Architectural Roadmap

04/22/23 Page 16

Airline EnterpriseEnterprise Layer

Basic layer

AirlineWeb site

Flight Customer

Booking Billing

Page 17: SO-Architectural Roadmap

04/22/23 Page 17

Expanded Airline Enterprise

Enterprise Layer

Basic layer

AirlineWeb site

BillingApplication

Flight Customer

Booking Billing

Page 18: SO-Architectural Roadmap

04/22/23 Page 18

Fundamental SOA: Summary

• Based on which future expansion can take place

• Simple to implement• Complex front-end• Increased maintainability• Shared services can make data

replication largely obsolete• Good starting point/entry point to SOA

Page 19: SO-Architectural Roadmap

04/22/23 Page 19

Networked SOA• It deals with backend complexity in addition to

technical and conceptual integration.• If offers flexibility in integrating software

assets of an enterprise.• Enables loose coupling• Addition of intermediary layer with services

that handle – distributed transactions, (fig.6.6)– bridge technology gaps, (fig 6.7)– database integration, (fig 6.9)– Add new functionality, (fig 6.10)– Wrap legacy applications/service (fig.6.10)

Page 20: SO-Architectural Roadmap

04/22/23 Page 20

Networked SOAEnterprise Layer

AirlineWeb site

Basic layerFlight Custom

erBooking Billing

Intermediary layerBookAndBill

Page 21: SO-Architectural Roadmap

04/22/23 Page 21

Process-enabled SOA• The key feature is the maintenance of a

process state in process-centric services.• Stateful services (server-side state)• Encapsulates complexity of processes (Ex:

runExperiment in a complex scientific lab experiment)

• Possibility of sharing states between clients (Ex: research whiteboard)

• Handling long-living processes (Ex: auction framework)

• Enables the IT and business alignment

Page 22: SO-Architectural Roadmap

04/22/23 Page 22

Process-enabled SOAEnterprise Layer

AirlineWeb site

Basic layerFlight Custom

erBooking Billing

Intermediary layerBookAndBill

Business LayerBookingProcess

Page 23: SO-Architectural Roadmap

04/22/23 Page 23

Process-enabled SOA (contd.)

Enterprise LayerAirlineWeb site

Basic layerFlight Custom

erBooking Billing

Intermediary layerBookAndBill

Business Layermobileprocess

BookingProcess

B2B process

Page 24: SO-Architectural Roadmap

04/22/23 Page 24

Process-enabled SOA (contd.)

Enterprise LayerAirlineWeb site

Basic layerEmail & SMS Flight Custom

erBooking Billing

Business LayerMobileprocess Bookin

gProcess

cancellation process

Waitlisting

Page 25: SO-Architectural Roadmap

04/22/23 Page 25

Process-enabled SOA summary

• Enables light-weight frontends (handles only user interaction)

• Encapsulates complexities of business processes

• Abstracts complexities of backend systems

• Enables separation of business logic from technology complexities

• Is required for integration of independent organizations and implementation of complex processes

Page 26: SO-Architectural Roadmap

04/22/23 Page 26

Enterprise Services layers (fig.5.9, 5.10)

Enterprise layer

Process layer

Intermediary layer

Basic layer

Page 27: SO-Architectural Roadmap

04/22/23 Page 27

Airline EnterpriseEnterprise Layer

Basic layer

AirlineWeb site

Flight Customer

Booking Billing

Page 28: SO-Architectural Roadmap

04/22/23 Page 28

Expanded Airline Enterprise

Enterprise Layer

Basic layer

AirlineWeb site

BillingApplication

Flight Customer

Booking Billing

Page 29: SO-Architectural Roadmap

04/22/23 Page 29

Networked SOAEnterprise Layer

AirlineWeb site

Basic layerFlight Custom

erBooking Billing

Intermediary layerBookAndBill

Page 30: SO-Architectural Roadmap

04/22/23 Page 30

Process-enabled SOAEnterprise Layer

AirlineWeb site

Basic layerFlight Custom

erBooking Billing

Intermediary layerBookAndBill

Business LayerBookingProcess

Page 31: SO-Architectural Roadmap

04/22/23 Page 31

Process-enabled SOA (contd.)

Enterprise LayerAirlineWeb site

Basic layerFlight Custom

erBooking Billing

Intermediary layerBookAndBill

Business Layermobileprocess

BookingProcess

B2B process

Page 32: SO-Architectural Roadmap

04/22/23 Page 32

Process-enabled SOA (contd.)

Enterprise LayerAirlineWeb site

Basic layerEmail & SMS Flight Custom

erBooking Billing

Business LayerMobileprocess Bookin

gProcess

cancellation process

Waitlisting