SlideShare a Scribd company logo
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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

More Related Content

PDF
Chris Riley Design Patterns For Web Service Versioning
PDF
Robert Schneider What Every Developer
PDF
Soa Offerings
PPTX
Aspencustomerwebinar slideshare-120111174354-phpapp01
PDF
Use the Power of APEX Dictionary Views to Increase the Quality of Your APEX ...
PDF
S Ven Hakan Olsson Compos Index
PDF
Jim Webber Guerrilla S O A With Web Services
PDF
Doug Groves Shell S O A Symposium
Chris Riley Design Patterns For Web Service Versioning
Robert Schneider What Every Developer
Soa Offerings
Aspencustomerwebinar slideshare-120111174354-phpapp01
Use the Power of APEX Dictionary Views to Increase the Quality of Your APEX ...
S Ven Hakan Olsson Compos Index
Jim Webber Guerrilla S O A With Web Services
Doug Groves Shell S O A Symposium

Viewers also liked (20)

PDF
Paul Brown Org Man Issues V1
PDF
Paul Butterworth S O A Runtime Governance Practices
PDF
Umit Yalcinalp Enterprise Mashupsfor S O A
PDF
Dennis Wisnosky 3 Difficult Pieces
PDF
Dirk Krafzig S O A And Conveys Law
PDF
Thomas Rischbeck Real Life E S B
PDF
Johan Kumps Federal E S B
PDF
Natasja Paulssen S A P M D M And E S O A At Philips
PDF
Robert Schneider 10 Strategies
PPTX
Introducción soa
PDF
Anne Thomas Manes Using User Experience
PDF
Laurent Tarin B P M Ilog
PDF
Arnaud Simon Flight Data Processing
PDF
Anthony Carrato S O A Business Architecture
PDF
Paul Butterworth Policy Based Approach
PDF
Arnaud Simon Service Contract Template
PDF
David Chappel S O A Grid
PDF
Art Ligthart Service Identification Techniques
PDF
Paul C Brown S O A Governance
XLS
Sven Hakan Olsson Composability Index V2
Paul Brown Org Man Issues V1
Paul Butterworth S O A Runtime Governance Practices
Umit Yalcinalp Enterprise Mashupsfor S O A
Dennis Wisnosky 3 Difficult Pieces
Dirk Krafzig S O A And Conveys Law
Thomas Rischbeck Real Life E S B
Johan Kumps Federal E S B
Natasja Paulssen S A P M D M And E S O A At Philips
Robert Schneider 10 Strategies
Introducción soa
Anne Thomas Manes Using User Experience
Laurent Tarin B P M Ilog
Arnaud Simon Flight Data Processing
Anthony Carrato S O A Business Architecture
Paul Butterworth Policy Based Approach
Arnaud Simon Service Contract Template
David Chappel S O A Grid
Art Ligthart Service Identification Techniques
Paul C Brown S O A Governance
Sven Hakan Olsson Composability Index V2
Ad

Similar to Chris Riley S O A Modeling (20)

PDF
Thomas Erl Introducing S O A Design Patterns
PDF
Chris Riley Soa From The Trenches
PPTX
Soa 18 soa trends
PDF
Quality - The key to successful SOA
PDF
7 SOA Practices that unlock business value
PDF
Service Oriented Architecture (SOA) [4/5] : SOA Governance
PDF
SOA governance
PPTX
SOA - Make your CEO Happy
PDF
Arquitectura orientada a servicios
PDF
Transformation of the Enterprise to SOA
PPTX
SOA Methodology - Strategy (as of 2010)
PDF
All you need to know about SOA testing- Bahaa Al Zubaidi.pdf
PDF
PPT
Soa Driven Project Management
PDF
SOA Offshore Onsite Delivery Model | Torry Harris Whitepaper
PPT
CBDI SAE Togaf V1 21072008
PDF
SOA architecture patterns, Matjaž Jurič (FRI/Univerza v Ljubljani)
PPT
Oracle SOA Suite for High availability Enterprises
PPTX
Intro to soa and middleware presentation
PDF
Compasso Eo Soa 2012
Thomas Erl Introducing S O A Design Patterns
Chris Riley Soa From The Trenches
Soa 18 soa trends
Quality - The key to successful SOA
7 SOA Practices that unlock business value
Service Oriented Architecture (SOA) [4/5] : SOA Governance
SOA governance
SOA - Make your CEO Happy
Arquitectura orientada a servicios
Transformation of the Enterprise to SOA
SOA Methodology - Strategy (as of 2010)
All you need to know about SOA testing- Bahaa Al Zubaidi.pdf
Soa Driven Project Management
SOA Offshore Onsite Delivery Model | Torry Harris Whitepaper
CBDI SAE Togaf V1 21072008
SOA architecture patterns, Matjaž Jurič (FRI/Univerza v Ljubljani)
Oracle SOA Suite for High availability Enterprises
Intro to soa and middleware presentation
Compasso Eo Soa 2012
Ad

More from SOA Symposium (12)

PDF
Radovan Janecek Avoiding S O A Pitfalls
PDF
Stefan Pappe Making S O A Operational
PDF
Paul Brown Org Man Issues
PDF
Mark Little Web Services And Transactions
PDF
Mohamad Afshar Moving Beyond Project Level S O A V1
PDF
Brian Loesgen An Early Look At Oslo
PDF
Prakash Narayan Building Social Web V1
PDF
Anne Thomas Manes S O A Fatigue
PDF
Mohamad Afshar Moving Beyond Project Level S O A
PDF
Anish Karmakar S C A
PDF
Cesare Pautasso R E S T V1
PDF
Andre Tost Service Models Java
Radovan Janecek Avoiding S O A Pitfalls
Stefan Pappe Making S O A Operational
Paul Brown Org Man Issues
Mark Little Web Services And Transactions
Mohamad Afshar Moving Beyond Project Level S O A V1
Brian Loesgen An Early Look At Oslo
Prakash Narayan Building Social Web V1
Anne Thomas Manes S O A Fatigue
Mohamad Afshar Moving Beyond Project Level S O A
Anish Karmakar S C A
Cesare Pautasso R E S T V1
Andre Tost Service Models Java

Recently uploaded (20)

PDF
Approach and Philosophy of On baking technology
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Cloud computing and distributed systems.
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
cuic standard and advanced reporting.pdf
PDF
KodekX | Application Modernization Development
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Encapsulation theory and applications.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
Approach and Philosophy of On baking technology
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Cloud computing and distributed systems.
“AI and Expert System Decision Support & Business Intelligence Systems”
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Understanding_Digital_Forensics_Presentation.pptx
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
The AUB Centre for AI in Media Proposal.docx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
cuic standard and advanced reporting.pdf
KodekX | Application Modernization Development
Unlocking AI with Model Context Protocol (MCP)
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Diabetes mellitus diagnosis method based random forest with bat algorithm
Encapsulation theory and applications.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
20250228 LYD VKU AI Blended-Learning.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Spectral efficient network and resource selection model in 5G networks
Dropbox Q2 2025 Financial Results & Investor Presentation

Chris Riley S O A Modeling

  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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