Your SlideShare is downloading. ×
SOA-trService OrientedArchitectureA COMPREHENSIVE INTRODUCTION TO EVERYTHINGSOA                   Mehmet Akyuz, Sr. SOA Co...
SOA-trBefore we start…    SOA knows what you did last summer,    and is disappointed that it wasnt SOA.A Comprehensive Int...
SOA-trFacts Concerning MeOne person successfully described SOA  completely, and immediately died.A Comprehensive Introduct...
SOA-trFacts Concerning You SOA is not complex. You are just dumb.A Comprehensive Introduction to SOA | http://soa-tr.com |...
SOA-trAgenda› Getting Started› Why Love SOA?› History› Services       – Principles, Classification, Delivery, Modeling, De...
SOA-tr      GETTING STARTEDA Comprehensive Introduction to SOA | http://soa-tr.com | Page 6
SOA-trGetting Started› A nice idea (i.e. architectural style)  developed for better business and IT with  the use of servi...
SOA-trServices, Services & Services› SOA. Good Idea, Hard Task.Re-organize IT                                             ...
SOA-trExample Services                                                       UpdateCustomerAddress      GetNextInvoiceDate...
SOA-trExample Services                                  InitiateOrder                                                     ...
Conceptual View Of The Service                                      SOA-trArchitectureA Comprehensive Introduction to SOA ...
SOA-tr      What does SOA do      for me?      WHY LOVE SOA?A Comprehensive Introduction to SOA | http://soa-tr.com | Page...
SOA-trWhat Does SOA Do For Me?       SOA takes out the complexity of IT;       Technology is no more a burden, but an     ...
SOA-trWhat Does SOA Do For Me?       Reduces time in satisfying the needs of the       business. Reusability maximizes ROI...
SOA-trWhat Does SOA Do For Me?       Offer services to customers, partners & others       within the organization. Be more...
SOA-trWhat Does SOA Do For Me?       With SOA enablement and adoption, there will       be no more locked in business valu...
SOA-trWhat Does SOA Do For Me?       Visible IT landscape enables the development       of dynamic, collaborative, configu...
SOA-trWhat Does SOA Do For Me?       SOA brings standards, architectural patterns,       reusability and technology neutra...
SOA-trWhat Does SOA Do For Me?       SOA assures an architectural effort is taken       before going into development. Reu...
SOA-trReading > Case Studies› SOA Consortium Case Studies   http://goo.gl/rJzqH› The Open Group Case Studies   http://goo....
SOA-trReading > Example Use Case (1/3)Telecommunications Carrier in North AmericaBusiness Need:       – Present a unified ...
SOA-trReading > Example Use Case(2/3)Telecommunications Carrier in North AmericaUse Case:       – Mega project to develop ...
SOA-trReading > Example Use Case (3/3)Telecommunications Carrier in North AmericaResults: SOA Value Delivered       – Redu...
SOA-trReading > SOA Readiness/Assessment› JBOSS SOA Assessment Tool: http://goo.gl/ng9wh› IBM SOA Self-Assessment: http://...
SOA-tr      A BRIEF HISTORYA Comprehensive Introduction to SOA | http://soa-tr.com | Page 25
SOA-tr  How Did It Come To SOA?  › Changes in IT approach                                           Build                 ...
SOA-trHow Did It Come To SOA?› Changes in architectures           Monolithic                                2-Tier        ...
SOA-trHow Did It Come To SOA?› Changes in architectures                                            Advances in networking ...
SOA-trHow Did It Come To SOA?› Integration is not a new issue› Socket Programming       –Low level programming› RPC (Remot...
SOA-trEAI > Enterprise Application Integration› An integration framework composed of a collection of  capabilities and tec...
SOA-trMOM > Message Oriented Middleware› Message Oriented Middleware (MOM)       – Exchanging messages across distributed ...
SOA-trDATA INTEGRATION MIDDLEWARE› Data Integration       – Has many different flavors (ETL “Extract, Transform, Load”, Da...
SOA-trDate Integration MiddlewareA Comprehensive Introduction to SOA | http://soa-tr.com | Page 33
SOA-trBible Of Enterprise Integration› Enterprise Integration  Patterns       – Patterns and best practices         for en...
SOA-trEnterprise Integration PatternsA Comprehensive Introduction to SOA | http://soa-tr.com | Page 35
SOA-trEnterprise Integration Patterns       “..A composite message is splitted into parts and based on the       type of t...
SOA-tr      Service design principles,      classification, delivery,      modeling and development      MORE ON SERVICESA...
SOA-tr      SERVICE DESIGN      PRINCIPLESA Comprehensive Introduction to SOA | http://soa-tr.com | Page 38
SOA-trWhat Makes A Good Service?› Good services adhere to SOA Design Principles and they  are governed.                   ...
SOA-tr1- Service Contract› Services should adhere to a conract where the service and  the terms of use is described       ...
SOA-tr2- Loosely Coupled› Hide service implementation from the consumer, minimize  dependency                             ...
SOA-tr3- Autonomy› Services should have control over the resources and  business logic they encapsulate                   ...
SOA-tr4- Service Abstraction› Logic used by the service should be hidden from the  consumers                    CONSUMER  ...
SOA-tr5- Reusability› The real benefit of the Services lies in their level of  reusability.                               ...
SOA-tr6- Statelessness› State management affects the availability of a service  hence makes the service unsuitable for reu...
SOA-tr7- Discoverability› Consumers should find services easily                    CONSUMER                               ...
SOA-tr8- Composibility› Service design should allow composition of new services  (Composite Services) from existing servic...
SOA-tr9- Interoperability› Services should have standards-based access to support  diverse service consumers              ...
SOA-trReading > SOA Postulatesby Yogish Pai (http://entarch.blogspot.com/ )›      A service is an indivisible unit        ...
SOA-tr      SERVICE      CLASSIFICATIONA Comprehensive Introduction to SOA | http://soa-tr.com | Page 50
SOA-trService Classification› Services can be classified in many ways       –Type of logic (Entity, Utility, Task)       –...
SOA-trAtomic vs Composite                               Business Processes and Applications                               ...
SOA-trEntity, Utility & Task                               Business Processes and Applications  task entityutility        ...
SOA-trENTITY, UTILITY & TASK› Task Service       – A business service associated         with a business task or process. ...
SOA-tr              Orchestration                                         ChoreographyA Comprehensive Introduction to SOA ...
SOA-trReading > Orchestration vs Choreography› BPEL (Business Process                                            › WS-CDL ...
SOA-tr      SERVICE DELIVERY      APPROACHESA Comprehensive Introduction to SOA | http://soa-tr.com | Page 57
SOA-trTop-Down Service Delivery                               Business Processes and Applications                         ...
SOA-tr Bottom-Up Service Delivery                               Business Processes and Applications                       ...
SOA-trMeet-In-The-Middle Service Delivery                               Business Processes and Applications               ...
SOA-tr      SERVICE MODELINGA Comprehensive Introduction to SOA | http://soa-tr.com | Page 61
SOA-trWSDL Modeling w/ UMLA Comprehensive Introduction to SOA | http://soa-tr.com | Page 62
SOA-trSOAML› Developed by OMG http://www.omg.org/spec/SoaML/CurrentA Comprehensive Introduction to SOA | http://soa-tr.com...
SOA-trSOMF› A modeling platform for Enterprise Architecture, Business  Architecture, Application Architecture, SOA and clo...
SOA-trSOMF (Practices, Disciplines & Artifacts)A Comprehensive Introduction to SOA | http://soa-tr.com | Page 65
SOA-tr      SERVICE      DEVELOPMENTA Comprehensive Introduction to SOA | http://soa-tr.com | Page 66
SOA-trService Development› SOA does not impose a service development technology     – i.e. Web Services ≠ SOA Services    ...
SOA-trSCA > Service Component Architecture› Initiated by Open SOA (OSOA), now owned by OASIS› Components might be built wi...
SOA-trSCA ExampleA Comprehensive Introduction to SOA | http://soa-tr.com | Page 69
SOA-tr      SERVICE STANDARDSA Comprehensive Introduction to SOA | http://soa-tr.com | Page 70
SOA-trWell-Known Service Standards› XML XML, XSLT, XSL, Xquery, Xpath› Message SOAP, JSON, XML› Service Registry UDDI, ebX...
SOA-tr      Where to go from here?      SOA REFERENCE      ARCHITECTURESA Comprehensive Introduction to SOA | http://soa-t...
SOA-trReference Architecture› Visualizes the target architecture› Creates an abstraction with a technology-neutral approac...
SOA-trArchitecture Continuum› Open Group’s SOA Reference Architecture Continuum.› From Conceptual to Solution Architecture...
SOA-trOpen Group - SOA RA Logical ViewA Comprehensive Introduction to SOA | http://soa-tr.com | Page 75
SOA-trExample: Components On RAA Comprehensive Introduction to SOA | http://soa-tr.com | Page 76
SOA-trCBDI Reference FW Architecture* Framework architecture for developing architecturesA Comprehensive Introduction to S...
SOA-trExample > RA w/ Open SourceA Comprehensive Introduction to SOA | http://soa-tr.com | Page 78
SOA-trExample Service Architecture* SOA Practitioners’ Guide Part 2: SOA Reference ArchitectureA Comprehensive Introductio...
SOA-tr      The SOA Backbone      ENTERPRISE SERVICE BUSA Comprehensive Introduction to SOA | http://soa-tr.com | Page 80
SOA-trEnterprise Service Bus› ESB provides high level services, service orchestration, service abstraction,  basic transfo...
SOA-trDemo > WSO2 ESB› WSO2 ESB is an open source ESB based on Apache  SynapseA Comprehensive Introduction to SOA | http:/...
SOA-tr      Where’s your SOA.. at?      SOA MATURITY      MODELSA Comprehensive Introduction to SOA | http://soa-tr.com | ...
SOA-trOpen Group Maturity ModelA Comprehensive Introduction to SOA | http://soa-tr.com | Page 84
SOA-tr      You think you need help?      SOA      METHOLODOGIESA Comprehensive Introduction to SOA | http://soa-tr.com | ...
SOA-trReading > SOA Manifesto› Business value over technical strategy› Strategic goals over project-specific benefits› Int...
SOA-trReading > SOA Manifesto (Cont’d)1. Respect the social and power structure of the                    8. Identify serv...
SOA-trDelivering SOA w/ TOGAF› SOA TOGAF Practical Guide:  http://www.opengroup.org/projects/soa-togaf/A Comprehensive Int...
SOA-trService Architecture & Engineering› Developed by Everware-CBDI (CBDI-SAETM)A Comprehensive Introduction to SOA | htt...
SOA-trService Architecture & EngineeringA Comprehensive Introduction to SOA | http://soa-tr.com | Page 90
SOA-tr      Or why do SOA projects fail?      SOA GOVERNANCEA Comprehensive Introduction to SOA | http://soa-tr.com | Page...
SOA-trExplaining SOA Failure To Your Boss› “...I have failed to associate our SOA initiatives with our  business needs, th...
SOA-trKey For SOA Success› “…In fact, Gartner forecasts that through 2010, the lack of  working SOA governance arrangement...
SOA-trWhy SOA Fails? – when it fails..› What, if anything, has or will inhibit SOA adoption at your  company? (InfoWorld) ...
SOA-trSOA in Action Reveals Questions› Service Discovery       –   What are my services?       –   Do I already have a sim...
SOA-trTaxonomies Are Important› A well-defined classification scheme› Can be a proprietary (Internal) or an industry stand...
SOA-trSOA in Action Reveals Questions› Impact Analysis       – Who uses my services?       – What if analysis?       – Wha...
SOA-trSOA in Action Reveals Questions› Design Time Governance                                                          › R...
SOA-trExample > Design-time Policy                                                                             Get Approva...
SOA-trTypical SOA Governance Offering                                                                                     ...
SOA-trA Comprehensive Introduction to SOA | http://soa-tr.com | Page 101
SOA-tr      http://soa-tr.com      THANK YOU.A Comprehensive Introduction to SOA | http://soa-tr.com | Page 102
Upcoming SlideShare
Loading in...5
×

A Comprehensive Introduction to Everything SOA

7,476

Published on

A little bit of everything related to SOA including: Basic concepts, history, standards, business value, ESB, methodologies, maturity models & SOA governance.

Published in: Business
5 Comments
16 Likes
Statistics
Notes
No Downloads
Views
Total Views
7,476
On Slideshare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
0
Comments
5
Likes
16
Embeds 0
No embeds

No notes for slide
  • A Comprehensive Introduction to SOA 2011-06-06
  • A Comprehensive Introduction to SOA 2011-06-06
  • A Comprehensive Introduction to SOA 2011-06-06
  • A Comprehensive Introduction to SOA 2011-06-06
  • A Comprehensive Introduction to SOA 2011-06-06
  • A Comprehensive Introduction to SOA 2011-06-06 Monolithic: All the processing is done on one server machine where number of clients are attched to this machine 2-tier: Clients (the first-tier) do the processing themselves and go to database server (the second-tier) for data (  Smart client code contacts the server for data then formats and displays it to the user. Input at the client is committed back to the server when it represents a permanent change. ) N-tier: Clients do some of the processing and the rest of the processing is done in the middle-tier(s) ( Three tier systems move the client intelligence to a middle tier so that stateless clients can be used. This simplifies application deployment .)
  • A Comprehensive Introduction to SOA 2011-06-06 Monolithic: All the processing is done on one server machine where number of clients are attched to this machine 2-tier: Clients (the first-tier) do the processing themselves and go to database server (the second-tier) for data (  Smart client code contacts the server for data then formats and displays it to the user. Input at the client is committed back to the server when it represents a permanent change. ) N-tier: Clients do some of the processing and the rest of the processing is done in the middle-tier(s) ( Three tier systems move the client intelligence to a middle tier so that stateless clients can be used. This simplifies application deployment .)
  • A Comprehensive Introduction to SOA 2011-06-06 Enterprise application integration (EAI) is the process of linking such applications within a single organization together in order to simplify and automate business processes to the greatest extent possible, while at the same time avoiding having to make sweeping changes to the existing applications or data structures. In the words of the Gartner Group, EAI is the “unrestricted sharing of data and business processes among any connected application or data sources in the enterprise.”
  • A Comprehensive Introduction to SOA 2011-06-06
  • A Comprehensive Introduction to SOA 2011-06-06
  • A Comprehensive Introduction to SOA 2011-06-06 Loose Coupling Hiding service implementation from the consumer with a service interface Consumer is not/less affected from the changes in the implementation What if we need to change the service interface? Change-time Governance Service Versioning Same service can be used with different policies
  • A Comprehensive Introduction to SOA 2011-06-06 Autonomy enables service reuse. The more services are independent from one another — having their own resources (database, legacies, etc.) — the more reuse and composition will be possible with those services.  Co mplete autonomy for each service may not make sense in some contexts. For instance, services that access legacies will share resources with existing legacy clients. Autonomy can be achieved, on the functional level, for all services belonging to the same functional building block. Those services can and should be completely autonomous relative to other services belonging to other functional building blocks.
  • A Comprehensive Introduction to SOA 2011-06-06 A reusable service should be stateless.  The retention of state-related data must not extend beyond a request/response on a service. Long running processes will have a state and can be invoked as services, but they should be considered as special cases, and should be referred to as composite applications rather than reusable services.  Long running processes should relate to business processes, and they need to quickly adapt to business changes. State management consumes a lot of resources, and this can affect the scalability and availability that are required for a reusable service.
  • A Comprehensive Introduction to SOA 2011-06-06 While service prescription is important as a means of mandating design time service reuse, runtime service discovery is equally important. An enterprise repository can play an essential role in prescriptive reuse, while a service registry with UDDI capabilities can substantially improve service discoverability during runtime.
  • A Comprehensive Introduction to SOA 2011-06-06 Composition is the process by which services are combined to produce composite applications or composite services.  A composite service consists of an aggregation of services that produces another reusable service. It's just like combining electronic components to create a computer motherboard, and then using that motherboard in a computer. Think of the motherboard as a reusable composite service that is a component of the computer, and of the computer as the composite application.
  • A Comprehensive Introduction to SOA 2011-06-06 REST asks developers to use HTTP methods explicitly and in a way that's consistent with the protocol definition. This basic REST design principle establishes a one-to-one mapping between create, read, update, and delete (CRUD) operations and HTTP methods. According to this mapping: To create a resource on the server, use POST. To retrieve a resource, use GET. To change the state of a resource or to update it, use PUT. To remove or delete a resource, use DELETE.
  • A Comprehensive Introduction to SOA 2011-06-06 Operational Systems Layer:  Existing application assets and other programs. Service Components Layer:  Software components that help to perform services and may leverage existing assets. Services Layer:  The services that are in the service portfolio, and hence available for use in solutions, including through discovery and composition. Business Processes Layer:  Business processes, and service compositions that they use, including orchestrations and choreographies. Consumers Layer:  The people and external systems that participate in the business processes, and their interfaces to the services. Integration Layer:  Integration of other building blocks. Quality of Service Layer:  Quality aspects of system operation. Information Layer:  Building blocks whose functions are concerned with the transformation and management of data. Governance Layer:  Building blocks such as governance rules and procedures, and services and programs that support the application of the rules and the operation of the procedures.
  • A Comprehensive Introduction to SOA 2011-06-06 http://enterprisearchitecture.nih.gov/ArchLib/AT/TA/EnterpriseServiceBusPattern.htm An Enterprise Service Bus (ESB) is a streamlined, distributed integration middleware infrastructure that combines Extensible Markup Language (XML) and Web services support, basic transformation, and intelligent routing. It either includes message-oriented middleware (MOM) or wraps other MOM transport mechanisms. It also serves as a lightweight  integration broker suite (IBS)  .    ESB provides the key higher level services that are required in order to effectively implement  Service-Oriented Architecture (SOA)  including management and monitoring, security, service orchestration, support for both asynchronous messaging and request-reply, and adapters for a variety of packaged applications and technology platforms. The ESB should be used whenever feasible to mediate communications between service providers and service consumers.    The ESB provides a number of higher level services that facilitate service reuse and event-driven architecture: Both message-based and request-reply communications Rule-based routing of messages Security Management and monitoring Process orchestration Message transformation Benefits Enables a more manageable hub and spoke topology for services allowing for consistent approaches to security, centralized configuration management, and management of quality of service. Accelerates implementation of services by providing interface mapping, adapters to existing systems, and the ability to compose existing services into more complex new services. Provides the framework for service reuse.
  • A Comprehensive Introduction to SOA 2011-06-06 OSIMM – Open Group Service Integration Maturity Model The Open Group SOA Integration Maturity Model (OSIMM) provides consultants and IT practitioners with a means to assess an organization?s Service Oriented Architecture (SOA) maturity level. It defines a process to create a roadmap for incremental adoption which maximizes business benefits at each stage along the way. The model consists of seven levels of maturity and seven dimensions of consideration that represent significant views of business and IT capabilities where the application of SOA principles is essential for the deployment of services. The OSIMM acts as a quantitative model to aid in assessment of current state and desired future state of SOA maturity.
  • A Comprehensive Introduction to SOA 2011-06-06 Organization Describes the roles and responsibilities, project profiles, and funding models recommended in order to successfully support the service lifecycle Process Describes the structure of business processes or activities that a service provisioning organization should follow in order to sucessfully analyze, plan, design, provision Architecture Provides the detailed description of the various views, models and other elements used and created during the execution of the method and how they relate to one another.
  • Transcript of "A Comprehensive Introduction to Everything SOA"

    1. 1. SOA-trService OrientedArchitectureA COMPREHENSIVE INTRODUCTION TO EVERYTHINGSOA Mehmet Akyuz, Sr. SOA Consultant http://soa-tr.com mehmet.akyuz@soa-tr.com twitter.com/_makyuz linkedin.com/in/makyuz
    2. 2. SOA-trBefore we start… SOA knows what you did last summer, and is disappointed that it wasnt SOA.A Comprehensive Introduction to SOA | http://soa-tr.com | Page 2
    3. 3. SOA-trFacts Concerning MeOne person successfully described SOA completely, and immediately died.A Comprehensive Introduction to SOA | http://soa-tr.com | Page 3
    4. 4. SOA-trFacts Concerning You SOA is not complex. You are just dumb.A Comprehensive Introduction to SOA | http://soa-tr.com | Page 4
    5. 5. SOA-trAgenda› Getting Started› Why Love SOA?› History› Services – Principles, Classification, Delivery, Modeling, Development› Reference Architectures› Enterprise Service Bus› SOA Maturity Models› SOA Methodologies› SOA GovernanceA Comprehensive Introduction to SOA | http://soa-tr.com | Page 5
    6. 6. SOA-tr GETTING STARTEDA Comprehensive Introduction to SOA | http://soa-tr.com | Page 6
    7. 7. SOA-trGetting Started› A nice idea (i.e. architectural style) developed for better business and IT with the use of services. A Service = A Business or an IT capability (exposed by its provider)A Comprehensive Introduction to SOA | http://soa-tr.com | Page 7
    8. 8. SOA-trServices, Services & Services› SOA. Good Idea, Hard Task.Re-organize IT Like this To make theseHeterogeneous Business BusinessIT Environment Services AgilityA Comprehensive Introduction to SOA | http://soa-tr.com | Page 8
    9. 9. SOA-trExample Services UpdateCustomerAddress GetNextInvoiceDate ActivateSubscription Billing CRM OMA Comprehensive Introduction to SOA | http://soa-tr.com | Page 9
    10. 10. SOA-trExample Services InitiateOrder UpdateCustomerAddress Sales, Fınance, Logistics… Warehouse E-shopping Portal Customer Care Suppliers CRM EmailA Comprehensive Introduction to SOA | http://soa-tr.com | Page 10
    11. 11. Conceptual View Of The Service SOA-trArchitectureA Comprehensive Introduction to SOA | http://soa-tr.com | Page 11
    12. 12. SOA-tr What does SOA do for me? WHY LOVE SOA?A Comprehensive Introduction to SOA | http://soa-tr.com | Page 12
    13. 13. SOA-trWhat Does SOA Do For Me? SOA takes out the complexity of IT; Technology is no more a burden, but an enabler for better business and innovation. Chief Executive OfficerA Comprehensive Introduction to SOA | http://soa-tr.com | Page 13
    14. 14. SOA-trWhat Does SOA Do For Me? Reduces time in satisfying the needs of the business. Reusability maximizes ROI of our applications and technologies Chief Information OfficerA Comprehensive Introduction to SOA | http://soa-tr.com | Page 14
    15. 15. SOA-trWhat Does SOA Do For Me? Offer services to customers, partners & others within the organization. Be more flexible, agile and faster in business. Business ExecutiveA Comprehensive Introduction to SOA | http://soa-tr.com | Page 15
    16. 16. SOA-trWhat Does SOA Do For Me? With SOA enablement and adoption, there will be no more locked in business value and processes within the heteregenous IT ecosystem Business AnalystA Comprehensive Introduction to SOA | http://soa-tr.com | Page 16
    17. 17. SOA-trWhat Does SOA Do For Me? Visible IT landscape enables the development of dynamic, collaborative, configurable applications that are ready for change. Enterprise ArchitectA Comprehensive Introduction to SOA | http://soa-tr.com | Page 17
    18. 18. SOA-trWhat Does SOA Do For Me? SOA brings standards, architectural patterns, reusability and technology neutral approach to our integration efforts. IT/Software ArchitectA Comprehensive Introduction to SOA | http://soa-tr.com | Page 18
    19. 19. SOA-trWhat Does SOA Do For Me? SOA assures an architectural effort is taken before going into development. Reusabilty, discoverability and granularity of the services makes it easier to develop apps. And it looks good on CV... SW DeveloperA Comprehensive Introduction to SOA | http://soa-tr.com | Page 19
    20. 20. SOA-trReading > Case Studies› SOA Consortium Case Studies http://goo.gl/rJzqH› The Open Group Case Studies http://goo.gl/hvk44A Comprehensive Introduction to SOA | http://soa-tr.com | Page 20
    21. 21. SOA-trReading > Example Use Case (1/3)Telecommunications Carrier in North AmericaBusiness Need: – Present a unified look and feel to telecommunication carrier’s internal and external customers, despite the multitude of acquisitions – Dramatically reduce the cost of operations and eliminate duplication of effort enterprise-wide by focusing on the core 400 activities used to run the business – Leverage reusable services with backend systems, based on business rules around the 400 activitiesA Comprehensive Introduction to SOA | http://soa-tr.com | Page 21
    22. 22. SOA-trReading > Example Use Case(2/3)Telecommunications Carrier in North AmericaUse Case: – Mega project to develop “One” architecture, integrating all backend legacy systems from acquisitions, then abstracting the data using AquaLogic Data Services Platform – 450 applications built on common Infrastructure, used across billing, organization, provisioning and customer care – SOA portal enabling developers to review top services consumed, review library of services, and review tips and tools – Establish Multiple Centers of Excellence, roadmap efforts, training, etc.A Comprehensive Introduction to SOA | http://soa-tr.com | Page 22
    23. 23. SOA-trReading > Example Use Case (3/3)Telecommunications Carrier in North AmericaResults: SOA Value Delivered – Reduced network outages to zero – Stronger focus on strategic initiatives, with only 30% of IT spend on operations (vs. 85% - 95%) – More transparency by masking systems complexity from users – $80 million in value over two years, from improved efficiency, responsiveness, and adaptability of the organizationA Comprehensive Introduction to SOA | http://soa-tr.com | Page 23
    24. 24. SOA-trReading > SOA Readiness/Assessment› JBOSS SOA Assessment Tool: http://goo.gl/ng9wh› IBM SOA Self-Assessment: http://goo.gl/koxUa› Software AG SOA Value Assesment: http://goo.gl/iF3OG› TIBCO ROI Calculator: http://goo.gl/qstl8› Macehiter Ward Dutton: http://goo.gl/e0qFh› Sun SOA Readiness Whitepaper: http://goo.gl/Gbuly› David Conway, Independent Cons. : http://goo.gl/0saeC› Jeremy Westerman, Business Value of SOA: http://goo.gl/kLtQK› Logic Library, ROI of SOA: http://goo.gl/lIX5C› SAP SOA Value Assessment: http://goo.gl/z1M3WA Comprehensive Introduction to SOA | http://soa-tr.com | Page 24
    25. 25. SOA-tr A BRIEF HISTORYA Comprehensive Introduction to SOA | http://soa-tr.com | Page 25
    26. 26. SOA-tr How Did It Come To SOA? › Changes in IT approach Build Buy Compose Apps Apps Apps60s 70s 80s 90s 00s 10s A Comprehensive Introduction to SOA | http://soa-tr.com | Page 26
    27. 27. SOA-trHow Did It Come To SOA?› Changes in architectures Monolithic 2-Tier N-Tier SOA Advances in networking (More distributed computing)A Comprehensive Introduction to SOA | http://soa-tr.com | Page 27
    28. 28. SOA-trHow Did It Come To SOA?› Changes in architectures Advances in networking (More distributed computing)A Comprehensive Introduction to SOA | http://soa-tr.com | Page 28
    29. 29. SOA-trHow Did It Come To SOA?› Integration is not a new issue› Socket Programming –Low level programming› RPC (Remote Procedure Call) –Defined by IETF in RFC 1831. –Function-oriented, Not suitable for n-tier apps› DOC (Distributed Object Computing) –CORBA, DCOM/COM+, RMI –Based on Objects and Object Managers (Object Request Brokers/Registry Service)A Comprehensive Introduction to SOA | http://soa-tr.com | Page 29
    30. 30. SOA-trEAI > Enterprise Application Integration› An integration framework composed of a collection of capabilities and technologies that form a middleware to enable integration of systems and applications accross the enterprise. App App App App Programming Interface Middleware System System System SystemA Comprehensive Introduction to SOA | http://soa-tr.com | Page 30
    31. 31. SOA-trMOM > Message Oriented Middleware› Message Oriented Middleware (MOM) – Exchanging messages across distributed systems (routing & transformation) – Many depend on Message Queue systems – Standards: JMS, MSMQ, AMQP, STOMP – Hardware Middleware: http://goo.gl/cKt4P› Commercial Examples – IBM WebSphereMQ, TIBCO EMS, Progress SonicMQ, MS Biztalk, webMethods IS, Oracle AQ› Open Source Examples – Apache ActiveMQ, Apache Qpid, Fuse Message Broker/Mediation Router, OpenSAF (GoAhead & MontaVista), Glassfish MQ, Spring RabbitMQ, – More: http://www.ow2.org/view/Activities/ProjectsByFunction#MW – Evaluation: http://wiki.secondlife.com/wiki/Message_Queue_Evaluation_Notes#SprinkleA Comprehensive Introduction to SOA | http://soa-tr.com | Page 31
    32. 32. SOA-trDATA INTEGRATION MIDDLEWARE› Data Integration – Has many different flavors (ETL “Extract, Transform, Load”, Data Mapping, MDM, Information Integration, Semantic Integration)› Commercial Examples – Oracle ODI, webMethods OneData, AbInitio, Progress DataXtend SI, IBM InfoSphere, SAS EDIS› Open Source Examples – Pentaho, Talend Open Studio, Apatar, Clover ETL, Virtuoso, JitterBit, XAware, WSO2 Data ServicesA Comprehensive Introduction to SOA | http://soa-tr.com | Page 32
    33. 33. SOA-trDate Integration MiddlewareA Comprehensive Introduction to SOA | http://soa-tr.com | Page 33
    34. 34. SOA-trBible Of Enterprise Integration› Enterprise Integration Patterns – Patterns and best practices for enterprise integration – Consistent vocabulary and visual notation – Core language of EAI – Gregor Hohpe & Bobby Woolf http://www.eaipatterns.comA Comprehensive Introduction to SOA | http://soa-tr.com | Page 34
    35. 35. SOA-trEnterprise Integration PatternsA Comprehensive Introduction to SOA | http://soa-tr.com | Page 35
    36. 36. SOA-trEnterprise Integration Patterns “..A composite message is splitted into parts and based on the type of the sub-message, they are send to different inventories. After that sub-messages are aggregated back to a new message”A Comprehensive Introduction to SOA | http://soa-tr.com | Page 36
    37. 37. SOA-tr Service design principles, classification, delivery, modeling and development MORE ON SERVICESA Comprehensive Introduction to SOA | http://soa-tr.com | Page 37
    38. 38. SOA-tr SERVICE DESIGN PRINCIPLESA Comprehensive Introduction to SOA | http://soa-tr.com | Page 38
    39. 39. SOA-trWhat Makes A Good Service?› Good services adhere to SOA Design Principles and they are governed. ABSTRACTION LOOSELY COUPLED REUSABILITY AUTONOMY DISCOVERABILITYINTEROPERABILITY SERVICE CONTRACT STATELESSNESS COMPOSIBILITY-GRANULARITYA Comprehensive Introduction to SOA | http://soa-tr.com | Page 39
    40. 40. SOA-tr1- Service Contract› Services should adhere to a conract where the service and the terms of use is described CONSUMER SERVICEA Comprehensive Introduction to SOA | http://soa-tr.com | Page 40
    41. 41. SOA-tr2- Loosely Coupled› Hide service implementation from the consumer, minimize dependency SERVICE INTERFACE CONSUMER SERVICE CONSUMER SERVICEA Comprehensive Introduction to SOA | http://soa-tr.com | Page 41
    42. 42. SOA-tr3- Autonomy› Services should have control over the resources and business logic they encapsulate RESOURCES & LOGIC SERVICE RESOURCES & LOGIC SERVICEA Comprehensive Introduction to SOA | http://soa-tr.com | Page 42
    43. 43. SOA-tr4- Service Abstraction› Logic used by the service should be hidden from the consumers CONSUMER SERVICEA Comprehensive Introduction to SOA | http://soa-tr.com | Page 43
    44. 44. SOA-tr5- Reusability› The real benefit of the Services lies in their level of reusability. CONSUMER SERVICE CONSUMER CONSUMERA Comprehensive Introduction to SOA | http://soa-tr.com | Page 44
    45. 45. SOA-tr6- Statelessness› State management affects the availability of a service hence makes the service unsuitable for reuse.state Request Response time ServiceA Comprehensive Introduction to SOA | http://soa-tr.com | Page 45
    46. 46. SOA-tr7- Discoverability› Consumers should find services easily CONSUMER SERVICEA Comprehensive Introduction to SOA | http://soa-tr.com | Page 46
    47. 47. SOA-tr8- Composibility› Service design should allow composition of new services (Composite Services) from existing services to handle bigger problems. SERVICE BIG CONSUMER SERVICE SERVICE SERVICEA Comprehensive Introduction to SOA | http://soa-tr.com | Page 47
    48. 48. SOA-tr9- Interoperability› Services should have standards-based access to support diverse service consumers CONSUMER CONSUMER CONSUMER SERVICE CONSUMER CONSUMERA Comprehensive Introduction to SOA | http://soa-tr.com | Page 48
    49. 49. SOA-trReading > SOA Postulatesby Yogish Pai (http://entarch.blogspot.com/ )› A service is an indivisible unit › There can be one or more of work service consumers for a given› A service is independent of the service protocol or implementation › A line between the services is› There will be one and only one the agreement between the service producer producer and the consumer› There can be multiple › A service can invoke other instances of the same service services, thereby, creating a› hierarchy of services An entity that utilized the service is called the service › A service not consumed by any consumer producer is an orphan serviceA Comprehensive Introduction to SOA | http://soa-tr.com | Page 49
    50. 50. SOA-tr SERVICE CLASSIFICATIONA Comprehensive Introduction to SOA | http://soa-tr.com | Page 50
    51. 51. SOA-trService Classification› Services can be classified in many ways –Type of logic (Entity, Utility, Task) –Granularity (Atomic, Composite) –Provider (Business Domains, 3rd Parties) –Consumer (Internal, External) – ... –Taxonomy (That’s another story)A Comprehensive Introduction to SOA | http://soa-tr.com | Page 51
    52. 52. SOA-trAtomic vs Composite Business Processes and Applications IT Systems and ApplicationsA Comprehensive Introduction to SOA | http://soa-tr.com | Page 52
    53. 53. SOA-trEntity, Utility & Task Business Processes and Applications task entityutility IT Systems and ApplicationsA Comprehensive Introduction to SOA | http://soa-tr.com | Page 53
    54. 54. SOA-trENTITY, UTILITY & TASK› Task Service – A business service associated with a business task or process. – E.g. ActivateSubscription› Entity Service – Services related to business entities – E.g. EmployeeService, CustomerService› UtilityService – Non-business functional services › SOA Principles of Service – E.g. Design NotificationService,TaxCalculatio – Thomas Erl nServiceA Comprehensive Introduction to SOA | http://soa-tr.com | Page 54
    55. 55. SOA-tr Orchestration ChoreographyA Comprehensive Introduction to SOA | http://soa-tr.com | Page 55
    56. 56. SOA-trReading > Orchestration vs Choreography› BPEL (Business Process › WS-CDL (WS Choreography Execution Language) Description Language)› OASIS Standard › W3C Standard› Orchestration or Choreography › A Critical Overview of the WS- http://goo.gl/T3g5I CDL http://goo.gl/4UZXs – When off the shelf products are – Where processes may scale to a required (since this is the very high number of component approach implemented by most steps current products) – Where opacity of process details – For composed services is desired among process – Where transaction semantics can partners (such as B2B) be handled by compensation – Where different process partners alone may require their own process – For relatively static process customizations definitions – Where processes are highly – Where a graphical process dynamic or goal-seeking definition is desiredA Comprehensive Introduction to SOA | http://soa-tr.com | Page 56
    57. 57. SOA-tr SERVICE DELIVERY APPROACHESA Comprehensive Introduction to SOA | http://soa-tr.com | Page 57
    58. 58. SOA-trTop-Down Service Delivery Business Processes and Applications IT Systems and ApplicationsA Comprehensive Introduction to SOA | http://soa-tr.com | Page 58
    59. 59. SOA-tr Bottom-Up Service Delivery Business Processes and Applications IT Systems and ApplicationsA Comprehensive Introduction to SOA | http://soa-tr.com | Page 59
    60. 60. SOA-trMeet-In-The-Middle Service Delivery Business Processes and Applications IT Systems and ApplicationsA Comprehensive Introduction to SOA | http://soa-tr.com | Page 60
    61. 61. SOA-tr SERVICE MODELINGA Comprehensive Introduction to SOA | http://soa-tr.com | Page 61
    62. 62. SOA-trWSDL Modeling w/ UMLA Comprehensive Introduction to SOA | http://soa-tr.com | Page 62
    63. 63. SOA-trSOAML› Developed by OMG http://www.omg.org/spec/SoaML/CurrentA Comprehensive Introduction to SOA | http://soa-tr.com | Page 63
    64. 64. SOA-trSOMF› A modeling platform for Enterprise Architecture, Business Architecture, Application Architecture, SOA and cloud computing. – http://www.modelingconcepts.com/› Completely implemented in Sparx Enterprise Architect› Proprietary UML stereotypes› Looks complicatedA Comprehensive Introduction to SOA | http://soa-tr.com | Page 64
    65. 65. SOA-trSOMF (Practices, Disciplines & Artifacts)A Comprehensive Introduction to SOA | http://soa-tr.com | Page 65
    66. 66. SOA-tr SERVICE DEVELOPMENTA Comprehensive Introduction to SOA | http://soa-tr.com | Page 66
    67. 67. SOA-trService Development› SOA does not impose a service development technology – i.e. Web Services ≠ SOA Services – Real life examples: › Spring EJBs › CORBA Components › SCA Components › XML/HTTP › Apache Thrift (Facebook)› Well-known Service Frameworks – SCA(*), Apache Axis2, Apache CXF, MS WCF, Hessian, WSO2 WSF, NuSOAP, Zolera, FuseSource Services Framework (CXF)› SOAP WebService vs RESTful Web Service – We’ll come to this later.A Comprehensive Introduction to SOA | http://soa-tr.com | Page 67
    68. 68. SOA-trSCA > Service Component Architecture› Initiated by Open SOA (OSOA), now owned by OASIS› Components might be built with different technologies› The SCA specifications define how to create components and how to combine those components into complete applications.› Introduction to SCA: http://goo.gl/46APa › Implementations and Tools › Apache Tuscany › Fabric3 › FraSCAti › ServiceConduit › TIBCO ServiceGrid › IBM WIDA Comprehensive Introduction to SOA | http://soa-tr.com | Page 68
    69. 69. SOA-trSCA ExampleA Comprehensive Introduction to SOA | http://soa-tr.com | Page 69
    70. 70. SOA-tr SERVICE STANDARDSA Comprehensive Introduction to SOA | http://soa-tr.com | Page 70
    71. 71. SOA-trWell-Known Service Standards› XML XML, XSLT, XSL, Xquery, Xpath› Message SOAP, JSON, XML› Service Registry UDDI, ebXML› WS-* – WS-I Web service interoperability – WS-Policy Defining web service policies – WS-Security Using security token for integrity and confidentiality – WS-ReliableMessaging Reliable delivery of messages – WS-Discovery Discovery protocol to locate services – Ws-Notification Event driven web services – More http://en.wikipedia.org/wiki/List_of_web_service_specificationsA Comprehensive Introduction to SOA | http://soa-tr.com | Page 71
    72. 72. SOA-tr Where to go from here? SOA REFERENCE ARCHITECTURESA Comprehensive Introduction to SOA | http://soa-tr.com | Page 72
    73. 73. SOA-trReference Architecture› Visualizes the target architecture› Creates an abstraction with a technology-neutral approach› Helps to define and execute a roadmap› Defines a common vocabulary for the architecture› Helps to measure the progess made in building the target architecture Initiate Set Build Execute SOA Principles an RA RoadmapA Comprehensive Introduction to SOA | http://soa-tr.com | Page 73
    74. 74. SOA-trArchitecture Continuum› Open Group’s SOA Reference Architecture Continuum.› From Conceptual to Solution ArchitectureA Comprehensive Introduction to SOA | http://soa-tr.com | Page 74
    75. 75. SOA-trOpen Group - SOA RA Logical ViewA Comprehensive Introduction to SOA | http://soa-tr.com | Page 75
    76. 76. SOA-trExample: Components On RAA Comprehensive Introduction to SOA | http://soa-tr.com | Page 76
    77. 77. SOA-trCBDI Reference FW Architecture* Framework architecture for developing architecturesA Comprehensive Introduction to SOA | http://soa-tr.com | Page 77
    78. 78. SOA-trExample > RA w/ Open SourceA Comprehensive Introduction to SOA | http://soa-tr.com | Page 78
    79. 79. SOA-trExample Service Architecture* SOA Practitioners’ Guide Part 2: SOA Reference ArchitectureA Comprehensive Introduction to SOA | http://soa-tr.com | Page 79
    80. 80. SOA-tr The SOA Backbone ENTERPRISE SERVICE BUSA Comprehensive Introduction to SOA | http://soa-tr.com | Page 80
    81. 81. SOA-trEnterprise Service Bus› ESB provides high level services, service orchestration, service abstraction, basic transformation and intelligent routing.› Mediates communication between the service consumers and the providers.› Provides security,management, monitoring, sync/async communications, service versioning, QoS, framework for Service ReuseA Comprehensive Introduction to SOA | http://soa-tr.com | Page 81
    82. 82. SOA-trDemo > WSO2 ESB› WSO2 ESB is an open source ESB based on Apache SynapseA Comprehensive Introduction to SOA | http://soa-tr.com | Page 82
    83. 83. SOA-tr Where’s your SOA.. at? SOA MATURITY MODELSA Comprehensive Introduction to SOA | http://soa-tr.com | Page 83
    84. 84. SOA-trOpen Group Maturity ModelA Comprehensive Introduction to SOA | http://soa-tr.com | Page 84
    85. 85. SOA-tr You think you need help? SOA METHOLODOGIESA Comprehensive Introduction to SOA | http://soa-tr.com | Page 85
    86. 86. SOA-trReading > SOA Manifesto› Business value over technical strategy› Strategic goals over project-specific benefits› Intrinsic interoperability over custom integration› Shared services over specific-purpose implementations› Flexibility over optimization› Evolutionary refinement over pursuit of initial perfectionhttp://www.soa-manifesto.org/A Comprehensive Introduction to SOA | http://soa-tr.com | Page 86
    87. 87. SOA-trReading > SOA Manifesto (Cont’d)1. Respect the social and power structure of the 8. Identify services through collaboration with organization. business and technology stakeholders.2. Recognize that SOA ultimately demands 9. Maximize service usage by considering the change on many levels. current and future scope of utilization.3. The scope of SOA adoption can vary. Keep 10. Verify that services satisfy business efforts manageable and within meaningful requirements and goals. boundaries. 11. Evolve services and their organization in4. Products and standards alone will neither give response to real use. you SOA nor apply the service orientation paradigm for you. 12. Separate the different aspects of a system that change at different rates.5. SOA can be realized through a variety of technologies and standards. 13. Reduce implicit dependencies and publish all external dependencies to increase robustness6. Establish a uniform set of enterprise and reduce the impact of change. standards and policies based on industry, de facto, and community standards. 14. At every level of abstraction, organize each service around a cohesive and manageable7. Pursue uniformity on the outside while unit of functionality. allowing diversity on the inside.http://www.soa-manifesto.org/A Comprehensive Introduction to SOA | http://soa-tr.com | Page 87
    88. 88. SOA-trDelivering SOA w/ TOGAF› SOA TOGAF Practical Guide: http://www.opengroup.org/projects/soa-togaf/A Comprehensive Introduction to SOA | http://soa-tr.com | Page 88
    89. 89. SOA-trService Architecture & Engineering› Developed by Everware-CBDI (CBDI-SAETM)A Comprehensive Introduction to SOA | http://soa-tr.com | Page 89
    90. 90. SOA-trService Architecture & EngineeringA Comprehensive Introduction to SOA | http://soa-tr.com | Page 90
    91. 91. SOA-tr Or why do SOA projects fail? SOA GOVERNANCEA Comprehensive Introduction to SOA | http://soa-tr.com | Page 91
    92. 92. SOA-trExplaining SOA Failure To Your Boss› “...I have failed to associate our SOA initiatives with our business needs, therefore I cannot show any value for the hundreds of services we have created.”› “...I have failed to properly create and support an SOA Center of Excellence, Steering Committee or Competency Center.”› “...I firmly believe that SOA is nothing more than fancy CORBA or COM. ”http://goo.gl/Bpj73A Comprehensive Introduction to SOA | http://soa-tr.com | Page 92
    93. 93. SOA-trKey For SOA Success› “…In fact, Gartner forecasts that through 2010, the lack of working SOA governance arrangements will be the most common reason for SOA failures.” – Gartner Press Release, 2009, “Gartner Says SOA Is Evolving Beyond Its Traditional Roots” (http://www.gartner.com/it/page.jsp? id=927612)› “…Left ungoverned, SOA could allow anyone anywhere to deploy a new service any time they wish, and anyone anywhere to invoke and orchestrate that service.” – James Kobielus, Principal Analyst at Current AnalysisA Comprehensive Introduction to SOA | http://soa-tr.com | Page 93
    94. 94. SOA-trWhy SOA Fails? – when it fails..› What, if anything, has or will inhibit SOA adoption at your company? (InfoWorld) Lack of SOA governance 50% Difficulty building an SOA roadmap 40% Performance and reliability 39% Incomplete/immature standards 39% Unresolved security issues 33% Lack of service infrastructure technology 33% No reference architecture 27% Difficulty determining where/how to start 24% Identifying the new application or service to build 21% Funding/budget issue 3% Other 8% Dont know 3% Nothing 5% 0% 10% 20% 30% 40% 50% 60%A Comprehensive Introduction to SOA | http://soa-tr.com | Page 94
    95. 95. SOA-trSOA in Action Reveals Questions› Service Discovery – What are my services? – Do I already have a similar service? – Who provides this service? – What are my other SOA artifacts? – ... Name Description Owner Version Discover DeployedPlatform SOA Artifacts Taxonomy Date PoliciesA Comprehensive Introduction to SOA | http://soa-tr.com | Page 95
    96. 96. SOA-trTaxonomies Are Important› A well-defined classification scheme› Can be a proprietary (Internal) or an industry standard (External)› Example: Internal Taxonomies BusinessDomain, OperatingSystem, Vendor, DevelopementFramework SOA ARTIFACT External Taxonomies TM Forum TAM, eTOM, NAICS Industry Classification, ISO 3166 Geographic Code System, UNSPSCA Comprehensive Introduction to SOA | http://soa-tr.com | Page 96
    97. 97. SOA-trSOA in Action Reveals Questions› Impact Analysis – Who uses my services? – What if analysis? – What will happen if do a maintenance shutdown on my systems? – ...A Comprehensive Introduction to SOA | http://soa-tr.com | Page 97
    98. 98. SOA-trSOA in Action Reveals Questions› Design Time Governance › Run Time Governance – Do I really execute my service – Right people accessing to right development methodology? services? – Do I handle change management – Are my services up and running accurately? – Do I provide the agreed QoS? Service Lifecycle Design Time Policies Management Policies Policy Execution Run Time Policies PointA Comprehensive Introduction to SOA | http://soa-tr.com | Page 98
    99. 99. SOA-trExample > Design-time Policy Get Approval Certify Register Service Validate VerifyBest practice: Design-time / Change-time should be applicable notonly to services but to all other SOA artifactsA Comprehensive Introduction to SOA | http://soa-tr.com | Page 99
    100. 100. SOA-trTypical SOA Governance Offering PEP Repository Registry •Execute Policies •SOA Documents •Web Service Descriptions •WSDL, XML, XSL •Other SOA Artifacts •BPEL, XPDL •Design-time Policies •Development Related Docs •Run-time Policies Monitoring •Monitor Services •Monitor KPIs SOA Governance is not a product. It is People, Processes and Technology.A Comprehensive Introduction to SOA | http://soa-tr.com | Page 100
    101. 101. SOA-trA Comprehensive Introduction to SOA | http://soa-tr.com | Page 101
    102. 102. SOA-tr http://soa-tr.com THANK YOU.A Comprehensive Introduction to SOA | http://soa-tr.com | Page 102

    ×