Service Oriented Architecture 1 COMPILED BY BJ
CHAPTER 9 Service Oriented architecture(soa) Defining SOA. Business value of SOA SOA characteristics. Concept of a service, Enterprise Service Bus (ESB) SOA enterprise Software Models. 2 COMPILED BY BJ
What is Service-Oriented Architecture? Service-Oriented Architecture (SOA) is an architectural style for building Enterprise Solution based on Services. Applications built using an SOA style deliver functionality as services that can be used or reused when building applications or integrating within the enterprise or trading partners. 3 COMPILED BY BJ
SOA Uses open standards to integrate software assets as services Standardizes interactions of services Services become building blocks that form business flows Services can be reused by other applications 4 COMPILED BY BJ
What is Service Oriented Architecture (SOA)? An SOA application is a composition of services A service is the atomic unit of an SOA Services encapsulate a business process Service Providers Register themselves Service use involves: Find, Bind, Execute Find Service Registry Register Most well-known instance is Web Services Service Consumer Bind, Execute Service Provider 5 COMPILED BY BJ
SOA Actors Service Provider Provides a stateless, location transparent business service Service Registry Service Consumer Service Registry Allows service consumers to locate service providers that meet required criteria Find Bind, Execute Service Consumer Uses service providers to complete business processes Register Service Provider 6 COMPILED BY BJ
Elements Of SOA 7 COMPILED BY BJ
Elements Of SOA 1)Application User Interface -:The element of SOA that interacts & delivers output to endusers. 2)Service -: A software Component that encapsulate high level business concept. Service have a way of describing & advertizing capabilities to entities like Components. A client service invoke service through interface. 3) Contract -:A service contract consist of Technology specific API. A service contract contains documents Such as Service Level Agreement (SLA) that describes additional quality of service,behavior &limitation. 4) Interface -:The functionality of Service is exposed to client through interface 5) Implementation -:The service Implementation provides the required business logic & appropriate data. 6) Service Repository -:It registers services & their attributes to facilitate the Discovery of Service,Operation,Access right etc. Here Registry hold reference to the Service (discovery, Description etc.) while Repository hold the actual Service (code,version etc). 7) Middleware (ESB) -:It s a infrastructure for integrating application & Service by routing Message,Transforming protocol, Providing QOS,Sercurity & Managing interaction among the Services 8 COMPILED BY BJ
Business Value Of SOA With reuse of services and components from diff. sources new application can quickly assembled respond to changing mkt condition SOA virtually eliminates inter Application Complexities SOA framework Supports run time deployment of Services across the network 9 COMPILED BY BJ
Business Value Of SOA Easy Deployment and Development Reusing legacy system using EAI Tested Services Continuous Improvement Standard User Interface Les duplication, reduced cost and improved Performance 10 COMPILED BY BJ
Characteristics of a Service It Provide Reusability includes Granularity, Modularity Composablity & interoperability. Supports open standards for integration: Although proprietary integration mechanisms may be offered by the SOA infrastructure, SOA s should be based on open standards. Open standards ensure the broadest integration compatibility opportunities. 11 COMPILED BY BJ
SOA CHARATRISTICS / FEATURES Of SERVICES Service Encapsulation Implementation Details & data Structure Hidden from Interface Operation & Semantic Model.Services encapsulates set of business functionalities that accessed from components Service Loose coupling Dependencies between Consumer and provider is minimized i.e. degree of interdependency of one service on another is very less Service Contract Services are governed by policies,slas and service-description documents. Service Abstraction The services provides layer of abstraction by hiding the logic of components from the outside world. Services are self contained & Modular -: Services Should maintain granularity,modularity,componentization and interoperability. They provide higher degree of modularity by grouping functionality of set of Components Consistency and isolation services are responsible for discrete task of specific resource they provide single place for each function Providing consistency and reducing redundancy. 12 COMPILED BY BJ
v Service Reusability v Logic is divided into services with the intention of promoting reuse. v This division of business functionalities in to service promotes higher degree of reusablity. v Service composability v Collections of services can be Combined with other services to compose new services for Business process v Service autonomy v Services can be deployed, modified and maintained independently from each other and solution to use them v Service optimization v Services can be optimize for performance. v Service Discoverability v Services are designed to be descriptive such that they can be found and assessed via available discovery mechanisms. v Stateless v13 services are depends on functionality not on state of Other Services
Characteristics of a Service Stateless: The service does not maintain state between invocations. It takes the parameters provided, performs the defined function, and returns the expected result. If a transaction is involved, the transaction is committed and the data is saved to the database. 14 COMPILED BY BJ
15 COMPILED BY BJ Service Hierarchy
Service Hierarchy Business Service -: it is of higher granularity & is compose of Lower Level Services. Domain Services -: It provides Common functionality that is used in Composition of business services within a business domain. Foundation services -: It doesn t provide business functionality but aid in construction of other services like rule engine, data routing service & Workflow Systems 16 COMPILED BY BJ
Implementation Of Business Service using Enterprise Business Process 17
Utility Service -: it comprises smallest & least grained services that provide common functionality across enterprise. Integration service -: it expose existing application as services for use by rest of enterprise External service -:it provide access to system & existing applications. Workflow -: it s a style of computing in which process is decompose in to a series of steps,activities. Orchestration -: it s a specific type of workflow that is generally applied to construction of process from business services or composite services. 18 COMPILED BY BJ
What is a Service? A service is a reusable component that can be used as a building block to form larger, more complex business-application functionality. A service may be as simple as get me some person data, or as complex as process a disbursement. 19 COMPILED BY BJ
Concept Of service A service provides a discrete business function that operates on data. Its job is to ensure that the business functionality is applied consistently, returns predictable results, and operates within the quality of service required. 20 COMPILED BY BJ
Concept Of service How the service is implemented, and how a user of the service accesses it, are limited only by the SOA infrastructure choices of the enterprise. From a theory point of view, it really doesn t matter how a service is implemented. Explain FEATURES Of SERVICES 21 COMPILED BY BJ
Enterprise Application Integration EAI Allows diverse applications in an enterprise to communicate with each other to achieve a business objective in seamless reliable fashion irrespective of platform & location of applications It comprises message Acceptance, Transformation, Translation,Routing,Message Delivery & Business process management. It can use two types of Architectures 1)Hub-Spoke Architecture 2)Bus Architecture 22 COMPILED BY BJ
Hub/Spoke EAI Architecture It Has Centralize integration engine, which make system easy to manage & Maintain But lose scalability 23 COMPILED BY BJ
EAI BUS ARCHITECTURS It provides scalability but difficult to manage & maintain. 24 COMPILED BY BJ
Enterprise service Bus ESB is software architecture that provide fundamental services for more complex architecture. It s a messaging backbone which does protocol Conversion, routing, message format transfortmation,accept & Delivery of messages from various services & applications linked to ESB. The Main difference between ESB & proprietary bus implementation is that proprietary bus offers a lot of built-in functionalities whereas for ESB it need to be developed based on business requirement. Features of ESB ESB is Configuration driven. Reduces complexity of interfaces Provide common data can be consumed by several target 25 applications COMPILED BY BJ
Enterprise Service Bus 26 COMPILED BY BJ
Functions of ESB 1)Connect -: any resource (j2ee,.net applications, web services,database,message broker) Connected to ESB is made broadly available for communication with any other resources 2) Mediate -:Allows ESB to reconcile incompatible protocols, data formats & interaction patterns of connected Services. Control -:provide framework for managing itself & services it hosts. 27 COMPILED BY BJ
The ESB IBM s vision is for the Enterprise Service Bus to handle message routing between Web services. Java client.net client COBOL client Perl client Python client Enterprise Service Bus Java service J2EE application Packaged apps B2B service COBOL system 28 COMPILED BY BJ
Advantages Information flows through the enterprise Business processes can be quickly & effectively change Standardize & reusable components reduces cost Dependencies among applications, services are hidden which increases flexibility. DISADVANTAGES If message version not managed properly it can result in tight coupling It produces no commercial value without subsequent Services for ESB 29 COMPILED BY BJ
SOA Conceptual Model 30 Refer Notes for theory
Life Cycle Of SOA Refer Notes for theory 31 COMPILED BY BJ
Elements of SOA Architecture Business Process Service Service Registry Service Description Service Communication Protocol Policy Security Transaction Management Transport Layer Refer Notes for theory 32 COMPILED BY BJ
Layers of SOA 33 Refer Notes for theory COMPILED BY BJ
34 COMPILED BY BJ