Service Oriented Architecture

Similar documents
SOACertifiedProfessional.Braindumps.S90-03A.v by.JANET.100q. Exam Code: S90-03A. Exam Name: SOA Design & Architecture

Service Oriented Architecture 1 COMPILED BY BJ

Service-Oriented Architecture and Software Engineering

SOA Success is Not a Matter of Luck

Definition of SOA. Capgemini University Technology Services School Capgemini - All rights reserved November 2006 SOA for Software Architects/ 2

The Service, The Cloud & The Method: The Connection Points

SOA Fundamentals For Java Developers. Alexander Ulanov, System Architect Odessa, 30 September 2008

SOA Architect Certification Self-Study Kit Bundle

FUJITSU Software Interstage Business Operations Platform: A Foundation for Smart Process Applications

Integration Architecture & (Hybrid) Cloud Scenarios on the Microsoft Business Platform. Gijs in t Veld CTO BizTalk Server MVP BTUG NL, June 7 th 2012

Service Oriented Architecture (SOA) An Introduction

Service Oriented Architecture and the DBA Kathy Komer Aetna Inc. New England DB2 Users Group. Tuesday June 12 1:00-2:15

Government's Adoption of SOA and SOA Examples

SOA + BPM = Agile Integrated Tax Systems. Hemant Sharma CTO, State and Local Government

Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies

Enterprise Application Designs In Relation to ERP and SOA

Service-Orientation and Next Generation SOA

Table of Contents. 1 Executive Summary SOA Overview Technology Processes and Governance... 8

Business Process Management Enabled by SOA

L Impatto della SOA sulle competenze e l organizzazione ICT di Fornitori e Clienti

Understanding Service-Orientation Part II: The Principles

Guiding Principles for Modeling and Designing Reusable Services

SOA Myth or Reality??

JOURNAL OF OBJECT TECHNOLOGY

Federal Enterprise Architecture and Service-Oriented Architecture

Extend the value of your core business systems.

A Quick Introduction to SOA

IBM Information Management

How To Understand A Services-Oriented Architecture

ANALYZING THE USAGE OF OPEN SOURCE PRODUCTS FOR SOA. Sajid Ali. A thesis submitted in partial fulfillment of the requirements for the degree of

CSCI 5828 Spring 2010 Foundations of Software Engineering. - Arpit Sud

Air Force SOA Enterprise Service Bus Study Using Business Process Management Workflow Orchestration for C4I Systems Integration

Microsoft SOA Roadmap

Enterprise SOA Strategy, Planning and Operations with Agile Techniques, Virtualization and Cloud Computing

Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies

SOA and Cloud in practice - An Example Case Study

How service-oriented architecture (SOA) impacts your IT infrastructure

Service Oriented Architecture and Its Advantages

Service Oriented Architecture

SOA and the Organization

Service-Oriented Architecture: Analysis, the Keys to Success!

ITU-T Kaleidoscope Conference Innovations in NGN. Managing NGN using the SOA Philosophy. Y. Fun Hu University of Bradford

Independent Insight for Service Oriented Practice. An SOA Roadmap. John C. Butler Chief Architect. A CBDI Partner Company.

BEA BPM an integrated solution for business processes modelling. Frederik Frederiksen Principal PreSales Consultant BEA Systems

Business Process Management Tampereen Teknillinen Yliopisto

2 (18) - SOFTWARE ARCHITECTURE Service Oriented Architecture - Sven Arne Andreasson - Computer Science and Engineering.

Policy Driven Practices for SOA

The Way to SOA Concept, Architectural Components and Organization

Service-Oriented Architectures

Sadržaj seminara: SOA Architecture. - SOA Business Challenges s: Billion Dollar Lock-In. - Integration Tools. - Point-to-Point Approach

SOA, Cloud Computing & Semantic Web Technology: Understanding How They Can Work Together. Thomas Erl, Arcitura Education Inc. & SOA Systems Inc.

Techniques for Composing REST services

Myths About Service-Oriented Architecture Demystifying SOA. producers can coexist, and still have no dependence on each other.

Developing SOA solutions using IBM SOA Foundation

SOA and BPO SOA orchestration with flow. Jason Huggins Subject Matter Expert - Uniface

A standards-based approach to application integration

SOA Principles of Service Design

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence

SOA REFERENCE ARCHITECTURE: WEB TIER

Service Oriented Architecture Based Integration. Mike Rosen CTO, AZORA Technologies, Inc.

Business Integration Architecture for Next generation OSS (NGOSS)

Multi Vendor Software in the Self-Service environment. Arindam Laha Vice President Professional Services, Asia Pacific Diebold

An Oracle White Paper October Maximize the Benefits of Oracle SOA Suite 11g with Oracle Service Bus

PARCC TECHNOLOGY ARCHITECTURE ARCHITECTURAL PRINCIPLES AND CONSTRAINTS SUMMARY

Service Oriented Architecture

Service-oriented architecture in e-commerce applications

Chapter 15. Web services development lifecycle

Di 6.1a. Warum naive SOA scheitert Ein Erfahrungsbericht. Adam Bien. January 26-30, 2009, Munich, Germany ICM - International Congress Centre Munich

BPM and SOA require robust and scalable information systems

Service Oriented Architecture

JOURNAL OF OBJECT TECHNOLOGY

Business Process Management and Cloud Computing

California Enterprise Architecture Framework. Service-Oriented Architecture (SOA) Reference Architecture (RA)

SOA CERTIFIED CONSULTANT

Case Study: Adoption of SOA at the IRS

Tomáš Müller IT Architekt 21/04/2010 ČVUT FEL: SOA & Enterprise Service Bus IBM Corporation

SERVICE ORIENTED ARCHITECTURE

SOA Executive Overview Achieve Business Agility, October 23, Ray Daniel, Connectivity and Integration Executive

SOA and SaaS - new challenges

BEA AquaLogic Integrator Agile integration for the Enterprise Build, Connect, Re-use

Combining Service-Oriented Architecture and Event-Driven Architecture using an Enterprise Service Bus

VOL. 2, NO. 3, March 2012 ISSN ARPN Journal of Systems and Software AJSS Journal. All rights reserved

What You Need to Know About Transitioning to SOA

ebay : How is it a hit

PTW Exchange Brasil de Setembro, São Paulo, SP, BR. 1

SOA : To Do or Not to Do

Applying SOA to OSS. for Telecommunications. IBM Software Group

MDM and Data Warehousing Complement Each Other

Enterprise IT Architectures SOA Part 2

REFERENCE ARCHITECTURE FOR SMAC SOLUTIONS

Presentation Outline. Key Business Imperatives Service Oriented Architecture Defined Oracle SOA Platform SOA Maturity/Adoption Model Demo Q&A

An Oracle White Paper November Oracle Primavera P6 EPPM Integrations with Web Services and Events

The Application of BizTalk in Public Sector

Introduction to Service-Oriented Architecture for Business Analysts

Moving from EAI to SOA An Infosys Perspective

API Management Introduction and Principles

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures

Oracle SOA Reference Architecture

Unlocking the Power of SOA with Business Process Modeling

Platform Autonomous Custom Scalable Service using Service Oriented Cloud Computing Architecture

Transcription:

Oriented Architecture Numan Sheikh Assistant Professor GIFT University 1

Definition SERVICE What is a? Lego block. Building Block Has standard based interface Loosely coupled Platform independent Composable Discoverable Vertical slicing 2

What is a? A service is a reusable component that can be used as a building block to form larger, more complex business-application functionality. A service provides a discrete business function that operates on data. A service may be as simple as get me some person data, or as complex as process a disbursement. What is a? Its job is to ensure that the business functionality is applied consistently, returns predictable results, and operates within the quality of service required. From a theory point of view, it really doesn t matter how a service is implemented. 3

What is a? 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. What is a? Only the service knows how it is implemented A requestor only knows what the service is and how to request it The consumer of the service is required to provide only the stated data on the interface definition, and to expect only the specified results on the interface definition. The service is capable of handling all processing (including exception processing). 4

Oriented Architecture DEFINITION Oriented Architecture There are three concepts that can be used by SOA Architectural Concept Business Solution Styles Supporting Infrastructure/Environment 5

SOA is Legoware. Made of Lego Blocks What is SOA? What is SOA? SOA is an architecture that a software system is divide into high flexible and re-usable component unit called service and compose with interconnection of these 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. The general concept of service in SOA is that service is a major unit of software component with business sense. These services have low dependency and each can be implemented without platform dependency while the interfaces that the service provides must be standardized. 6

SOA is NOT Technical standard A technology It is Just architecture blue print Architecture Architecture implies a consistent and coherent design approach. Essential principles include: Consistency: The same challenges should be addressed in a uniform way. Reliability: The structures created must be fit to purpose and meet the demands for which they are designed. Extensibility: A design must provide a framework that can be expanded in ways both foreseen and unforeseen. Scalability: The implementation must be capable of being scaled to accommodate increasing load by adding hardware to the solution. 7

Oriented Architecture: Architectural Concept Stateless Loose coupling between a service (a stateless, self-contained business function) and its provider (the physical assets that perform the function) Oriented Architecture: Architectural Concept Only the service knows how it is implemented A requestor only knows what the service is and how to request it The consumer of the service is required to provide only the stated data on the interface definition, and to expect only the specified results on the interface definition. The service is capable of handling all processing (including exception processing). 8

Oriented Architecture: Business Solution Styles Composite Application Development User interaction drives the request for one or more services Requests are usually synchronous in nature Delivered via portal Flow Development Business Process-Driven Architecture Workflow: a series of activities/functions completes a business transaction or process Typically long-running/asynchronous Event-Driven An inside or outside event triggers other interested applications Oriented Architecture: Infrastructure / Environment An SOA environment allows services to be defined, developed and used by other services These services can be assembled into solutions through business rules, interaction mechanisms and user interfaces Enables service discovery, policy definition and enforcement, quality of service, transaction management, audit and usage metering 9

Oriented Architecture WHY? Current Environment 10

Application Centric Business scope Current Environment Narrow Consumers Limited Business Processes Application Finance Application Supply Application Integration Architecture bound to EAI vendor Manufacturing Distribution Redundancy Overlapped resources Overlapped providers Business functionality is duplicated in each application that requires it. EAI leverage application silos with the drawback of data and function redundancy. Centric Business scope Goal Multiple Consumers Multiple Business Processes Finance Supply Architecture Shared s Manufacturing Distribution Multiple Discrete Resources Multiple Providers SOA structures the business and its systems as a set of capabilities that are offered as s, organized into a Architecture virtualizes how that capability is performed, and where and by whom the resources are provided, enabling multiple providers and consumers to participate together in shared business activities. source:tietoenator AB, Kurts Bilder 11

Before SOA After SOA source:ibm Why SOA? To enable Flexible, Federated Business Processes Enabling a virtual federation of participants to collaborate in an end-to-end business process Enabling alternative implementations Enabling reuse of s Ordering Identification Ticket Sales Ticket Collection Logistics Inventory Manufacturing Enabling virtualization of business resources Availability Enabling aggregation from multiple providers source:tietoenator AB, Kurts Bilder 12

Why SOA? To enable Business Process Optimization and the Real Time Enterprise (RTE) Seamless End to End Process BPM Expressed in terms of s Provided/Consumed to Customers Enterprise from Multiple Suppliers Smart Clients Stores POS Mobile 3 rd Party Agents Portal SOA Patterns: Single, Multi-Channel for consistency Internal Systems source:tietoenator AB, Kurts Bilder SOA Pattern: Standardized provided by multiple suppliers Why SOA? Enable Structural Improvement ERP X Process Z Partner A Process Y Standardizing capabilities e.g. Single Customer Details Information Consistency Policy Consistency Reducing impact of change Consolidation/ Selection process Encapsulating implementation complexity ERP Z CRM System 2 CRM System 1 Product System e.g. Multiple Sources of Customer Details Policy Rationalization and Evolution Resource Virtualization 13

Why Loose Coupling? A loosely-coupled architecture is seen as helping to reduce overall complexity and dependencies SOA Defined SOA is a software architecture model in which business functionality are logically grouped and encapsulated into self contained, distinct and reusable units called services that represent a high level business concept can be distributed over a network can be reused to create new business applications contain contract with specification of the purpose, functionality, interfaces (coarse grained), constraints, usage»... of the business functionality s are autonomous, discrete and reusable units of business functionality exposing its capabilities in a form of contracts. s can be independently evolved, moved, scaled even in runtime. 14

What is Architecture? A collection of services services classified into types type type type arranged into layers Governed by architectural patterns and policies source:tietoenator AB, Kurts Bilder Big (outer) vs. Little (inner) SOA 15

SOA is an evolutionary step for architecture SOA is an evolutionary step in reusability and communication 16

SOA is an evolutionary step in distributed communications EAI Project-ware SOA source:sam Gentile Architecture Organized by Layers Reasons for Layering Example Layers 1. Flexible composition. 2. Reuse. 3. Functional standardization in lower levels 4. Customization in higher layers 5. Separation of Concerns. 6. Policies may vary by Layer Presentation & workflow Composed s Basic s Underlying API according to:tietoenator AB, Kurts Bilder 17

Major service types Basic s: Data-centric and logic-centric services Encapsulate data behavior and data model and ensures data consistency (only on one backend). Basic services are stateless services with high degree of reusability. Represent fundamental SOA maturity level and usually are build on top existing legacy API (underlying services) Composed s : expose harmonized access to inconsistent basic services technology (gateways, adapters, façades, and functionalityadding services). Encapsulate business specific workflows or orchestrated services. Types SOA Management & Security service mediation, routing, trust enablement. ESB, Registry Multi channel applications: Mobile, Smart, Thin, Thick clients, Portals. Infrastructure Business centric services, orchestrated workflows. Intermediate services (gateways, facades ) Data centric and logic centric consistent services. Highly reusable, stateless servers Foundation Blocks Core APIs I/CAD I/.. Terra Share In Geo Media Business Capabilities Other G/Tech 18

SOA Principles Standardized Contracts Loose Coupling Abstraction Reusability Autonomy Statelessness Discoverability Composability Standardized Contracts s within the same service inventory are in compliance with the same contract design standards." s use service contract to Express their purpose Express their capabilities Use formal, standardized service contracts Focus on the areas of Functional expression Data representation Policy Source: Thomas Erl 19

contracts impose low consumer coupling requirements and are themselves decoupled from their surrounding environment." Create specific types of relationships within and outside of service boundaries with a constant emphasis on reducing ( loosening ) dependencies between contract implementation consumers Loose Coupling Source: Thomas Erl Abstraction contracts only contain essential information and information about services is limited to what is published in service contracts Avoid the proliferation of unnecessary service information, meta-data. Hide as much of the underlying details of a service as possible. Enables and preserves the loosely coupled relationships Plays a significant role in the positioning and design of service compositions Source: Thomas Erl 20

Reusability s contain and express agnostic logic and can be positioned as reusable enterprise resources." Reusable services have the following characteristics: Defined by an agnostic functional context Logic is highly generic Has a generic and extensible contract Can be accessed concurrently Source: Thomas Erl Autonomy "s exercise a high level of control over their underlying runtime execution environment." Represents the ability of a service to carry out its logic independently of outside influences To achieve this, services must be more isolated Primary benefits Increased reliability Behavioral predictability Source: Thomas Erl 21

Statelessness "s minimize resource consumption by deferring the management of state information when necessary." Incorporate state management deferral extensions within a service design Goals Increase service scalability Support design of agnostic logic and improve service reuse Source: Thomas Erl Discoverability "s are supplemented with communicative meta data by which they can be effectively discovered and interpreted." contracts contain appropriate meta data for discovery which also communicates purpose and capabilities to humans Store meta data in a service registry or profile documents Source: Thomas Erl 22

Composability "s are effective composition participants, regardless of the size and complexity of the composition." Ensures services are able to participate in multiple compositions to solve multiple larger problems Related to Reusability principle execution should efficient in that individual processing should be highly tuned Flexible service contracts to allow different types of data exchange requirements for similar functions Source: Thomas Erl SOA Best Practices Encapsulate what Varies A service that can change over time, or that could be ripped and replaced, should have an interface defined that remains constant Program to Interfaces, not Implementations s should provide interfaces that other services can call, rather than make direct calls to underlying component APIs. For example, it is better to make calls to a JMS implementation rather than direct MOM API requests. Depend on Abstractions, not Concrete s Create a StockQuote interface that includes generic fields required for a stock quote. Don t allow your service to make direct calls to an external vendor like XMethods. 23

SOA Best Practices Strive for Loosely-Coupled Designs Between s that Interact Today s enterprise service provided by SAP could be provided by Oracle tomorrow. Define what is needed for billing information in an interface, and maintain the interface, even if the implementation changes behind it. s should be Open for Extension, but Closed for Modification Look at adding functionality to a service through external means, rather than constantly changing the inner code. SOA Best Practices Favor Composition over Inheritance Instead of changing an existing service, create a façade interface that calls multiple low-level services Principle of Least Knowledge (Talk Only to Your Immediate Friends) When you design a service, limit the number of low-level services it interacts with, and the type of data sent to these services. Limit the coupling of overall systems. When dealing with sensitive information, pass only the data the other system needs, don t just send all of the state fields if the other system won t use them. 24

Applying SOA - Governance Governance is a program that makes sure people do what is right In conjunction with software, governance controls the development and operation of software Goal: Establish SOA organization governance (SOA Board) that governs SOA efforts and breaks down capabilities into non-overlapping services Applying SOA - Governance Policies Codification of laws, regulations, corporate guidelines and best practices Must address all stages of the service lifecycle (technology selection, design, development practices, configuration management, release management, runtime management, etc.) Processes Enforce policies System-driven processes (code check-in, code builds, unit tests) Human-driven process (requests, design reviews, code reviews, threat assessment, test case review, release engineering, service registration, etc.) Metrics Measurements of service reuse, compliancy with policy, etc. Organization Governance program should be run by SOA Board, which should have cross-functional representatives 25

Applying SOA Governance technical view I/CAD Foundation Blocks I/.. Core APIs Terra Share Geo Media Business Capabilities In Other Software and IT Architects G/Tech Designers Business service model Business services view Enterprise Architects SOA Board specification model implementation and deployment model Patterns Standards Models Policy Applying SOA - Challenges Orientation Reuse Sharing of Responsibilities Increased complexity! Business functionality has to be made available as services. contracts must be fixed Implemented services must be designed with reuse in mind. This creates some overhead. Potential service users must be involved in the design process and will have influence on the service design 26

Applying SOA Renovation Roadmap (Source: Enterprise SOA: Oriented Architecture Best Practices by Dirk Krafzig, Karl Banke, and Dirk Slama, Prentice Hall 2004) Conclusion and Summary If done correct, SOA is not just another architectural fad SOA seeks to bridge the gap between business and technology promoting business agility (its all about managing change) SOA Is complex Requires governance Requires executive management buy-in Requires commitment with resources (people and $$) 27