Chris Riley S O A Modeling

570 views

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
570
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
17
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Chris Riley S O A Modeling

  1. 1. SOA Workshop This Presentation Courtesy of the International SOA Symposium October 7-8, 2008 Amsterdam Arena www.soasymposium.com info@soasymposium.com Founding Sponsors Platinum Sponsors Gold Sponsors Silver Sponsors An Introduction to Service Modeling SOA Systems Inc. An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 1
  2. 2. SOA Workshop About the Book Series Five titles currently in development for release in 2009. The Prentice Hall Service-Oriented Computing Series is the top-selling SOA book series in the world. www.soabooks.com Copyright © SOA Systems Inc. (www.soasystems.com) About the SOA Certified Professional Program Industry-recognized certification program for the following designations: • Certified SOA Architect • Certified SOA Analyst • Certified SOA Consultant For more information: • www.soacp.com • www.soaschool.com Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 2
  3. 3. SOA Workshop A Note About SOAMethodology.com Before we begin: The following description of Service Modeling is part of a mainstream SOA methodology that is further explained at www.soamethodology.com. This mainstream methodology is not proprietary and does not compete with other approaches. It is the result of on-going industry research that provides a balanced blend of the most common, proven, and mature approaches currently in use. For any given IT enterprise, this methodology is considered a starting point only, and almost always requires further customization. The purpose of this mainstream methodology is to raise key considerations for the delivery of SOA projects and specific project lifecycle stages. Copyright © SOA Systems Inc. (www.soasystems.com) Service Delivery Terminology Let’s first establish some common terms: • “Service Candidate” • “Service Inventory Blueprint” • “Service-Oriented Analysis” • “Service Modeling” • “Service-Oriented Design” Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 3
  4. 4. SOA Workshop SOA Projects SOA projects introduce new considerations and tend to augment traditional the project lifecycle. Specifically, SOA projects require: • more up-front analysis effort • closer collaboration between business and technology experts • a careful prioritization of tactical and strategic needs Copyright © SOA Systems Inc. (www.soasystems.com) Up-Front Analysis • An SOA project is often actually a service delivery project that is part of a larger SOA initiative. • The scope of the initiative and the size of the target service inventory tend to determine the amount of up-front effort. • More up-front analysis results in a better defined blueprint which results in a better quality inventory of services. • This up-front analysis effort is carried out iteratively as part of the Inventory Analysis Cycle. Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 4
  5. 5. SOA Workshop Up-Front Analysis The Inventory Analysis process is comprised of an iterative cycle during which the service inventory blueprint is incrementally defined as a result of repeated iterations of steps that include the service- oriented analysis. Copyright © SOA Systems Inc. (www.soasystems.com) Analysis Collaboration • To carry out the up-front analysis work requires the involvement of business analysis and technology architecture experts. • Business expertise is needed for the definition of business service abstraction layers. • Technology architecture expertise is needed for all services. • This form of collaboration establishes the basis for the service-oriented analysis process. Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 5
  6. 6. SOA Workshop Analysis Collaboration How analysts and architects work together in SOA projects is a departure from traditional projects. Copyright © SOA Systems Inc. (www.soasystems.com) SOA Project Delivery Prior to commencing with the analysis process, a project approach needs to be chosen to best organize the overall delivery lifecycle. Three common delivery approaches have emerged: - top-down - bottom-up - meet-in-the-middle Of these, some extent of top-down delivery is usually required to incorporate meaningful levels of inventory and service analysis. Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 6
  7. 7. SOA Workshop Tactical vs. Strategic • In service delivery projects there is a constant need to balance pressing tactical requirements against preferred strategic requirements. • Tactical refers to the fulfillment of short-term, immediate requirements (which are usually specific to the organization). • Strategic refers the fulfillment of long-term goals associated with SOA and service-oriented computing. Copyright © SOA Systems Inc. (www.soasystems.com) Tactical vs. Strategic • The greater the priority of tactical requirements, generally the less time there is for up-front analysis effort. This leads to a tendency to apply more of a bottom-up approach. • The greater the priority of strategic goals, the more is invested in up-front analysis stages, which corresponds with a top-down approach. • The meet-in-the-middle delivery approach attempts to provide a compromise by allowing a top-down analysis to occur while delivering services that are later re-aligned. Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 7
  8. 8. SOA Workshop Service Delivery & Governance Up-front analysis as part of a top-down effort reduces the eventual governance burden. The bottom-up approach results in less up-front impact, but defers burden to the governance phase. Copyright © SOA Systems Inc. (www.soasystems.com) Service-Oriented Analysis • A service-oriented analysis is a formal process completed jointly by business analysts and technology architects. • Service modeling is a sub-process of service- oriented analysis that produces conceptual service definitions called service candidates. • The subsequent service-oriented design process uses these candidates as a starting point and then shapes them into physical service services. Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 8
  9. 9. SOA Workshop Service-Oriented Analysis • The typical scope of a service-oriented analysis is one business process. • In a top-down delivery, the service-oriented analysis process is carried out repeatedly as part of the Inventory Analysis Cycle. • Each iteration is focused on analyzing a different business process. Copyright © SOA Systems Inc. (www.soasystems.com) A generic service-oriented Service-Oriented analysis process that can be Analysis further customized. In a nutshell, it represents a parent process comprised of two information gathering steps and a detailed service modeling sub-process. Business logic is essentially decomposed into preliminary service operation candidates that are then grouped into logical contexts that represent conceptual services called service candidates. Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 9
  10. 10. SOA Workshop Service Modeling • Service modeling is essentially a process by which proposed capabilities are identified and grouped into proposed services. • It is therefore important to continually remind ourselves that we are not actually implementing a physical design at this stage. • Using the terms “service candidate”, “service operation candidate”, and “service composition candidate” clearly communicates this. Copyright © SOA Systems Inc. (www.soasystems.com) A generic service Service Modeling modeling process that can be further customized. Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 10
  11. 11. SOA Workshop Logic Types There are four fundamental service logic types that allow you to choose and position (and customize) service models and service abstraction layers as part of a service inventory blueprint: • business • utility • agnostic • non-agnostic Copyright © SOA Systems Inc. (www.soasystems.com) Service Models The following primary service models exist: • Entity Service – Functional business context associated with a business entity or a collection of related business entities. • Utility Service – Functional non-business context associated with a related set of processing capabilities. • Task Service – Functional business context associated with a specific business process. (A variation of this service model is the Orchestrated Task Service.) Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 11
  12. 12. SOA Workshop Logic Types and Service Layers Non- Business Utility Agnostic Agnostic Logic Logic Logic Logic Utility Service X X Layer Entity Service X X Layer Task Service X X Layer Copyright © SOA Systems Inc. (www.soasystems.com) Entity Service Definition • An entity service is a form of business service because it has a business-centric context. • It derives its context from a specific business entity (or a group of related business entities). • Examples of business entities: invoice policy vehicle shipment purchase order benefit site ingredient claim vendor region asset employee partner zone equipment customer credit note account material product ledger license resource Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 12
  13. 13. SOA Workshop Entity Service Definition • Entity service capabilities provide functionality centered around the processing of the information set associated with the business entity. • This leads to many CRUD- style capabilities. Copyright © SOA Systems Inc. (www.soasystems.com) Utility Service Definition • The purpose of the utility service layer is to establish services that provide functionality that addresses cross-cutting concerns. • These types of services have a functional scope that is deliberately non-business-centric. • They are also referred to as “application services” or “infrastructure services”. • Utility services often encapsulate enterprise resources, such as legacy systems and databases, and expose them in unique contexts. Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 13
  14. 14. SOA Workshop Utility Service Definition • Utility services are typically composed by parent business services. • Utility services are often the most challenging type of service to design and evolve because an appropriate functional context is difficult to determine. • Following are some guidelines for defining utility service contexts. © SOA Systems Inc. (www.soasystems.com) Copyright Task Service Definition • Task services encapsulate business logic specific to a parent task or business process. • A parent task represents business process logic that spans business entities. • Task services are intentionally non-agnostic and therefore have limited reuse potential. • The task service definition results from the application of the Non-Agnostic Context pattern in addition to any further analysis steps that may be part of the overall modeling process. Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 14
  15. 15. SOA Workshop Task Service Definition • Task services usually act as controllers in complex compositions, but they are ideally modeled to participate as composition members as well. • Task services tend to be more stateful than agnostic services and almost always expose fewer capabilities. Copyright © SOA Systems Inc. (www.soasystems.com) Service Layer Abstraction Service layers abstract different types of logic… …and establish logical domains for governance purposes. Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 15
  16. 16. SOA Workshop Service Layer Abstraction A typical complex composition will span multiple layers. Copyright © SOA Systems Inc. (www.soasystems.com) Primitive Service Definition and SOA Patterns The primitive service definition process is carried out by sequentially applying the following patterns: • Service Encapsulation • Agnostic Context Definition • Non-Agnostic Context Definition • Agnostic Capability Definition • Capability Composition • Capability Recomposition Note that each pattern essentially corresponds to a foundational step within service-oriented analysis and design. For more information, (www.soasystems.com) Copyright © SOA Systems Inc. see SOAPatterns.org. An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 16
  17. 17. SOA Workshop Project Roles SOA project roles have common relationships with specific phases of a typical SOA project delivery lifecycle. Note that this diagram does not show the service governance lifecycle. Copyright © SOA Systems Inc. (www.soasystems.com) Services and Granularity Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 17
  18. 18. SOA Workshop Contact and Resources SOA Systems Inc. www.soasystems.com SOA Training www.soaschool.com SOA Certification www.soacp.com SOA Books www.soabooks.com SOA Magazine www.soamag.com SOA Patterns www.soapatterns.org Updates notify@soasystems.com Contact info@soasystems.com Copyright © SOA Systems Inc. (www.soasystems.com) An Introduction to Service Modeling (Copyright © SOA Systems Inc., soacp.com, soaschool.com) 18

×