Presentation is loading. Please wait.

Presentation is loading. Please wait.

Service Oriented Architecture Concepts March 27, 2006 Chris Armstrong

Similar presentations


Presentation on theme: "Service Oriented Architecture Concepts March 27, 2006 Chris Armstrong"— Presentation transcript:

1 Service Oriented Architecture Concepts March 27, 2006 Chris Armstrong

2 SOA enables business flexibility by breaking business applications into dynamic and reusable services. Traditional Application Componentized Application Composite Application 1 2 3 Decompose the business application into modular and reusable functions and services Combine business services to meet business needs Re-use services to meet changing business needs Recombine for new business requirements Why is SOA concept useful Flexibility, responsiveness, increased collaboration – collaboration of people, application collaboration, collaboration of information) Allows for the modeling of business in a more generic way (define complex business processes as a series of service consumers, service providers and relationship between them) Allows for reuse of business processes, application functions, technical functions |

3 Service Orientated Architecture
SOA builds flexibility on Existing Architectures An evolution of Application Development and Integration Flexibility Client Server OO Design Service Orientated Architecture Enterprise Application Integration (EAI) SOA is NOT just an evolution of Integration technologies – it is also an evolution of Application Development. SOA builds up previous integration and solution design techniques but does not replace them. The desire to make IT more flexible is not new. Indeed, it is as old as the IT industry itself. Each of these integration techniques has its place and is appropriate for handling certain situations. Messaging backbones and point-to-point connectivity work great for direct application to application connection. They support high throughput and are comparatively simple to create and deploy. But they work best when you’ve got a fairly small number of connection points that don’t change very much if at all. Enterprise Application Integration is a hub-and-spoke integration design. This kind of system relies on adapters to connect applications and data sources to a central hub. This kind of design works well when you’ve got a larger number of end-points and when they change more frequently. When you add an endpoint or change how the endpoint connects, all you need to do is change one of the adapters rather than the connections to all the other endpoints. The downside of this is that this doesn’t support high throughput very well and the communications standards are usually proprietary and less interoperable. SOA blends the best of all these concepts into one new architecture giving users capabilities that they’ve never had before. But it’s important to recognize that SOA is not the end of the road either, It’s the next step in the evolution of flexible infrastructures. This evolution will continue into the future. The Enterprise Service Bus (ESB) can help you achieve the goal of SOA. It is a flexible connectivity infrastructure for integrating applications and services. It is at the heart of an SOA powering it by reducing the number, size, and complexity of interfaces. The ESB does four things: It ROUTES messages between services It CONVERTS transport protocols between requestor and service It TRANSFORMS message formats between requestor and service It HANDLES business events from disparate sources Messaging Backbone Flexibility As Patterns Have Evolved, So Has IBM |

4 Information as a Service: Master Data Management MDM Enables Information Reuse Within an SOA
App 1 App 2 SOA Infrastructure (e.g. Enterprise Service Bus) Master Data and Services App 3 |

5 … service oriented architecture (SOA)? … a composite application?
What is …..? … a service? A repeatable business task – e.g., check customer credit; open new account … service orientation? A way of integrating your business as linked services and the outcomes that they bring … service oriented architecture (SOA)? An IT architectural style that supports service orientation … a composite application? A set of related & integrated services that support a business process built on an SOA Main Point: Services are repeatable business tasks. Business processes are a series of services snapped together like building blocks. SOA is an architectural style that makes this possible Let’s start by looking at some base-line definitions so we’re all talking about in the same terms. First of all, what is a service? It’s important to stress that we’re talking about a part of a business process here. Don’t think about software or IT. Think about what your company does on a day to day basis and break those business processes up into repeatable business tasks or components. If you look at the graphic in the middle, this is the analogy of building blocks snapping together to build a structure. Services are the building blocks and they are snapped together into a business process. Second, what is Service Orientation? Building on our definition of a service, Service Orientation is a way of integrating your business as linked services and, more importantly, the outcomes that they bring. We’re still not talking about technology; we’re talking about a thought process and a business philosophy. What is SOA? It is quite simply the IT architectural style that supports the Service Orientation thought process makes it a reality. And finally, what is a Composite Application? So composite applications are the actual running services that have been assembled and strung together to support the what your business does. SOA helps make building and adjusting composite applications fast and easy. **Main point** SOA makes it easy to snap together services into a business process just like snapping together building blocks into a structure. 1. What is a service? It is a repeatable business task. Think about when you go into a bank to open up a new account. One of the first things that the bank will do is to do a credit check on you. That credit check process can be thought of as a service. It is repeatable and consistent. It’s important to stress that we’re talking about a part of a business process here. Don’t think about software or IT. Think about what a company does on a day to day basis and break those business processes up into repeatable business tasks or components. A simple analogy is to think of building blocks, snapping together to build a structure. Services are the building blocks and they are snapped together into a business process. A service is a unit of work done by a service provider to achieve desired end results for a service consumer. Both provider and consumer are roles played by software agents on behalf of their owners Any function ... but perhaps at several levels of granularity, e.g.: Business Service: Check Beamline Application Status Application Functional Services - These are services that are leveraged by Business Services but in most cases are not directly invoked by other applications: Approve Beamline Application Technical Function Services: Audit Event Check User Password Check User Authorization 2. What is service orientation? Building on our definition of a service, Service Orientation is a way of integrating your business as linked services and, more importantly, the outcomes that they bring. We’re still not talking about technology; we’re talking about a thought process and a business philosophy. 3. What is service orientated architecture? It is a set of business aligned IT services that support an organization’s business process goals using interface based service descriptors that decouple the provider and consumer, ideally using open standards with potential for dynamically discoverable services. It’s simply the IT architectural method or technique that supports a business that is using a Service Orientation thought process – turning the concept into the reality. In today’s dynamic business environment, it really comes down to three things: flexibility, responsiveness and increased collaboration. Having the capability to reconfigure processes rather than recreate the processes. The new business solutions require the combining of existing IT assets, new applications and network-based services These new solutions depend on an extended and enriched infrastructure; And in order to ensure the sustained alignment of SOA solutions with business … there is a need for IT and business to work closely together to develop a strong, business-sponsored Governance. This often goes beyond existing governance and helps ensure the alignment of SOA solutions with business objectives. Ground rules on SOA: Services neither remember the last thing they were asked to do nor care what the next is, and are not dependent on the context or state of other services. Services are defined using explicit interfaces that are independent of service implementations, and that both service requestors and service providers agree to. Services should be invokable through defined communication protocols that stress interoperability and location transparency Any function is implemented once and once only as a Service |

6 SOA means different things to different users and domains of use
A set of services that a business wants to expose to their customers and partners, or other portions of the organization An architectural style which requires a service provider, requestor and a service description A set of architectural principles, patterns and criteria which address characteristics such as loose coupling, separation of concerns, reuse, modularity, encapsulation and composibility. A programming model complete with standards, tools and technologies such as Web Services Business Architecture SOA is a new approach and it means different things to different people, depending on what area of the business you are from. We’ve seen three different perspectives. Business, Architecture and Implementation. From a business perspective, think of ‘SOA is a set of business services.’ You break down a company’s business tasks and the underlying IT into reusable components or “services”. The services can then be shared with other parts of the business, customers or partners. For an architect, the SOA provides an application framework, that takes everyday business applications and breaks them down into individual functions and processes. SOA lets you build, deploy and integrate these functions and processes, independent of the applications and computing platforms they run on. With an implementation perspective, SOA is a programming model, that builds on standards, tools and technologies such as Web services, REST, XML, Enterprise Service Bus. Web services is just a small piece and this implementation perspective. Implementation |

7 What are SOA Enablers? Standards Organization maturity
web services, BPEL Organization maturity changing organization structures and governance thinking across the enterprise, the extended enterprise linking clients and partners Reference Architectures Technology .net and J2EE XML appliances ESB, message brokers Main points: Standards are just starting to mature to make this happen. As an organization matures, it is easier to enable SOA. How do you break down business silos. It generally requires completely redoing your governance model. It is organizational maturity that prevents an SOA, not the maturity of the standards. SOA methods, design techniques are maturing. The tooling to support this and ease the development of SOA is just starting to arrive. Java is one of SOA enablers. SOA is J2EE’s main driver. Most new features specifically enable SOA (JMS, JAAS, EJB). Information integration is a big thing. Collaboration and activity centric and people centric applications are a big thing. Application integration is now possible with XML appliances the remove the performance issue with web services. Performance is no longer a barrier. (It is still complex.) |

8 Web Services enable Service Oriented Architectures
BPEL4WS Emerging Standards WS-Inspection BEEP WS-ReliableMessaging WS-Policy WS-Security WS-Trust WS-Coordination WS-Transaction UDDI Current Standards WSDL XML SOAP HTTP JMS SMTP Web Services enable Service Oriented Architectures This is a model for describing some of the key elements of an SOA, and where current Web Services technology support stands. As you can see Web Services technologies and standards are still emerging. Right now you would only use the most mature technologies in this area: XML, SOAP or REST, HTTP, JMS/MQ |

9 . Organizations Maturity Matrix
Dynamically Configurable Services Service Integration Composite Services Virtualized Services Silo Integrated Componetized Function Oriented Function Oriented Function Oriented Service Oriented Service Oriented Service Oriented Service Oriented Business View of IT Structured Object-Oriented Component Based Development Service Modeling Service Modeling Service Modeling Grammar Modeling Methods Meeting one or more SOA value propositions requires an understanding of the target SOA. IBM’s Services Integration Maturity Model (SIMM) provides the framework for defining future and current state. Assessing an organization’s maturity in the following areas will give you an insight and help in in planning your SOA journey. It will be not a short-quick fix one. There will have to changes that need to occur at various levels of the Solution Stack and processes. Particularly architectural mindset will need to evolve and to make the transition. Application design changes may be required based on which services they have incorporated and are critical to organization. Development methodology in terms of design practices will need to evolve to approach design from the perspective of an Service perspective. Where the providers might not necessarily be within the same dev-group/organization or even with thin the enterprise. Modules Modules Components Services Process Integration via Services Process Integration via Services Dynamic Application Assembly Applications Monolithic Architecture Layered Architecture Component Architecture Emerging SOA SOA Grid Enabled SOA Dynamically Re-Configurable Architecture Architecture Platform Specific Platform Specific Platform Specific Platform Specific Platform Specific Technology Neutral Dynamic Sense & Respond Infrastructure Level 1 Level 2 Level 3 Level 4 Level 5 Level 6 Level 7 |

10 SOA Reference Architecture Supporting the SOA Lifecycle
Business Innovation & Optimization Services Facilitates better decision-making with real-time business information Interaction Services Process Services Information Services Development Services IT Service Management Enables collaboration between people, processes & information Orchestrate and automate business processes Manages diverse data and content in a unified manner ESB Facilitates communication between services Integrated environment for design and creation of solution assets Manage and secure services, applications & resources Business App Services Partner Services Access Services Apps & Info Assets The SOA Reference Architecture outlines the key capabilities that are required for comprehensive, enterprise wide SOA solutions. These capabilities can be implemented on a build-as-you-go basis allowing capabilities and project level solutions to be easily added as new requirements are addressed over time. At the core of the SOA Reference Architecture is the Enterprise Service Bus. This delivers all of the inter-connectivity capabilities required to leverage the services implemented across the entire architecture. Transport services, event services, and mediation services are all provided through the ESB. The SOA Reference Architecture also contains a set of services that are oriented toward the integration of people, processes, and information: Interaction Services provide the capabilities required to deliver IT functions and data to end users, meeting the end-user's specific usage preferences. Process Services provide the control services required to manage the flow and interactions of multiple services in ways that implement business processes. Information Services provide the capabilities required to federate, replicate, and transform data sources that may be implemented in a variety of ways. Many of the services in an SOA are provided through existing applications; others are provided in newly implemented components; and others are provided through external connections to third party systems. Access Services provide the bridging the bridging capabilities between legacy applications, pre-packaged applications, enterprise data stores and the ESB. Partner Services provide the document, protocol, and partner management capabilities required for business processes that involve inter-actions with outside partners and suppliers. Business Application Services provide runtime services required for new application components to be included in the integrated system. Underlying all these capabilities of the SOA Reference Architecture is a set of Infrastructure Services which are used to optimize throughput, availability and performance. IT Services Management Services include capabilities that relate to scale and performance, for example edge services, clustering services, and virtualization capabilities allow efficient use of computing resources based on load patterns. Development Services are an essential component of any comprehensive integration architecture. The SOA Architecture includes development tools, used to implement custom artifacts that leverage the infrastructure capabilities, and business performance management tools, used to monitor and manage the runtime implementations at both the IT and business process levels. Development tools allow people to efficiently complete specific tasks and create specific output based on their skills, their expertise, and their role within the enterprise. The Business Innovation & Optimization Services incorporate monitoring capabilities that aggregate operational and process metrics in order to efficiently manage systems and processes. Connect with trading partners Facilitates interactions with existing information and application assets Build on a robust, scaleable, and secure services environment Infrastructure Services Optimizes throughput, availability and performance |

11 Information Mgmt XML DB
Enterprise Service Bus: Transform, Route, Notify, Augment, Side Effect “Portal” Service Workflow Business Act. B2B Interactions EIS Adapter “Script” POJO SSB Distinguished Services Information Mgmt XML DB End-to-End Model |


Download ppt "Service Oriented Architecture Concepts March 27, 2006 Chris Armstrong"

Similar presentations


Ads by Google