Service Oriented Architecture (SOA) has emerged as the dominant architectural style, especially for enterprise solutions. The potential benefits of SOA in terms of flexibility, agility, cost, and time to market have secured its position, and most software organizations are planning to or are currently adopting SOA. But is the marketing hype just setting up SOA to deliver another major disappointment (remember ERP, BPR, Objects, Components)? Gartner is already reporting that SOA has entered the dreaded “Trough of Disillusionment”. Well…Not if we can help it!
Most of the organizations that we see are struggling with a few major questions regarding SOA.? For example, what is the relationship between BPM, Business Rules and SOA? Where does one leave off and another begin? And, more importantly, What makes a good service? How do you design service interfaces?? How big should a service be? What are the important characteristics of a service? What are the different types of services and the relationships between them? How do services fit into end-to-end enterprise solutions?
This tutorial starts with the basis concepts of SOA: architecture; services, business processes and semantics. We will explain the difference between simply building services, and a true service-oriented architecture that addresses how to build services that can be combined together to support enterprise processes. In addition, we will address the organizational issues of independent producer and consumer groups and SOA governance. Then, we will go into details of the design of an SOA application, from business analysis to service design, including how to drive service design from business process models. We will present a service hierarchy and inventory that addresses the important questions of granularity, scope, and ownership. Finally, the workshop will address service implementation and information processing, showing how to design services and solutions that deliver the value that SOA promises.
Students will gain an overall understanding of SOA and an appreciation for the criteria and tradeoffs of application and service design. The tutorial is structured as a mix of presentation, interactive discussion and group based exercises, so the students get the chance to apply the techniques learned to example scenarios during the facilitated exercises.
- SOA Concept Review
- Architecture and Design Considerations for SOA Solutions
- Conceptual Architecture
- Business Model for SOA
- Information Model for SOA
- Identifying Service Candidates
- Service Interface Design
- Service Document Design
- Factoring granularity, scope, ownership, implementation into service types
- Service Implementation Design
- Information Transformation Techniques
- Case Study
Unique Value of Course:
This course describes a proven design methodology for going from business requirements through to implementation of services and the applications that they support. It provides answers to the most common questions about SOA design including:
- What makes a good service?
- How to identify services?
- How big should a service be?
- How to structure services to support BPM and BR systems?
- How to expose existing applications as services?
- Understand the architectural and design considerations that are critical to SOA success
- Learn a methodology for designing SOA solutions and how to apply it to different types of solutions
- Understand the relationship between the business and information models and service design
- Be able to factor size, scope, ownership and other issues into proper service design
- Get practical experience in applying these techniques during the workshops
- Be exposed to examples of best practices in SOA design and where to get additional information
Who Should Attend:
- Project leaders and Managers
Recommended Prior Courses:
SOA for Architects