Service-oriented analysis and design
From Wikipedia, the free encyclopedia
It has been suggested that Service-oriented modeling be merged into this article or section. (Discuss) |
As service-oriented architecture (SOA) and the service-oriented computing platform mature more formal approaches and methodologies to building service-oriented solution logic have emerged. These build upon earlier analysis and design processes (including object-oriented analysis and design and business process modeling) and share in the common goal of promoting an effective means of achieving a separation of concerns.
A number of common terms have surfaced in association with structured service and SOA delivery processes:
- service-oriented analysis
- service-oriented design
- service-oriented analysis and design (SOAD)
- service-modeling
- service-oriented modeling
- service-oriented modeling framework (SOMF)
- service-oriented modeling and architecture (SOMA)
- business-driven development (BDD)
Contents |
[edit] Service-oriented analysis
This process generally refers to a pre-design effort centered around the definition of conceptual services or a conceptual service-oriented architecture. Much like object-oriented analysis, the goal is often to achieve an ideal representation. A variation of service-oriented analysis is provided as part of the SOAD framework. The first vendor-agnostic service-oriented analysis process to be published was documented in Thomas Erl’s "Service-Oriented Architecture: Concepts, Technology, and Design" in which the conceptual services were termed "service candidates". Service-oriented analysis is documented as part of "Service-Oriented Architecture Compass".
[edit] Service-oriented design
Generally following the completion of a service-oriented analysis, a service-oriented design process will continue by using the results of the service-oriented analysis as a starting point. This process usually subjects the conceptual services to real world factors and conditions, ultimately resulting in concrete service designs. Thomas Erl was also responsible for publishing the first vendor-agnostic service-oriented design process in his book, "Service-Oriented Architecture: Concepts, Technology, and Design". As part of Erl’s process, service candidates produced by the service-oriented analysis process are used as input for service-oriented design. Coverage of service-oriented design was published in an article titled "Service-Oriented Architecture Compass".
[edit] Service-oriented analysis and design (SOAD)
Created by IBM (and also referred to as "service-oriented architecture modeling and analysis"), this is an approach to software modeling and development specially designed for service-oriented architecture (SOA). SOAD adds innovations for service repositories, service orchestration, and the enterprise service bus. It also helps design, build, aggregate, and deploy applications as Web services based on SOAP, WSDL and UDDI technologies. The term SOAD first was used in the article "Elements of Service-Oriented Analysis and Design". SOAD is further covered in "Service-Oriented Architecture Compass" (by Bieberstein, Bose, Flammante, Jones, and Shah).
[edit] Service modeling
Service modeling refers to a sub-process of the service-oriented analysis process documented in Thomas Erl’s book "Service-Oriented Architecture: Concepts, Technology, and Design". The service modeling process is responsible for the definition and refinement of service candidates based on various considerations, including a specific subset of the service-orientation principles.
[edit] Service-oriented modeling – an SOA modeling framework (SOMF)
One approach to service-oriented modeling, known as service-oriented modeling framework (SOMF), has been created by Michael Bell and is documented in his book "Service-Oriented Modeling: Service Analysis, Design, and Architecture".[1] The service-oriented modeling framework (SOMF) evocates that all software assets that we have been designing, architecting, constructing, and deploying to production environment are actually Services.
These entities are regarded as service-oriented assets that should be treated just like any other software piece in our world. The SOMF idea accentuates this notion since it offers a holistic and anthropomorphic modeling language, easy to use, and universal enough that business and technology personnel can jointly collaborate to model software for an organization. So what is the major advantage of this methodology? This approach does not tie SOMF modeling effort with any specific language platform. The SOMF simply deals with three major modeling aspects: structural, behavioral, and relationships of services.
Thus, SOMF proposes three major service structures that make up a business application: atomic service - an indivisible software entity; composite service – software piece that aggregates other services and forms hierarchical relationship among its contained services; and last, service cluster – a conceptual structure that binds distributed services by their business or technological relationships and context.
- SOMF Examples (Softcopy). Methodologies Corporation.
- SOMF Examples & Language Notation (Softcopy). Methodologies Corporation.
[edit] Service-oriented modeling and architecture (SOMA)
SOMA refers to the more general domain of service modeling necessary to design and create SOA. SOMA covers a broader scope and implements service-oriented analysis and design (SOAD) through the identification, specification and realization of services, components that realize those services (a.k.a. "service components"), and flows that can be used to compose services.
SOMA includes an analysis and design method that extends traditional object-oriented and component-based analysis and design methods to include concerns relevant to and supporting SOA. It consists of three major phases of identification, specific and realization of the three main elements of SOA, namely, services, components that realize those services (aka service components) and flows that can be used to compose services.
SOMA is an end-to-end SOA Method for the identification, specification, realization and implementation of services (including information services), components, flows (processes/composition). SOMA builds on current techniques in areas such as domain analysis, functional areas grouping, variability-oriented analysis (VOA) process modeling, component-based development, object-oriented analysis and design and use case modeling. SOMA introduces new techniques such as goal-service modeling, service model creation and a service litmus test to help determine the granularity of a service.
SOMA identifies services, component boundaries, flows, compositions, and information through complementary techniques which include domain decomposition, goal-service modeling and existing asset analysis.
- Arsanjani, Ali (2004). Service-Oriented Modeling and Architecture: How to Identify, Specify and Realize Services for your SOA (Softcopy). IBM developerWorks.
- Bierberstein, Norbert; Sanjay Bose, Marc Fiammante, Keith Jones, Rawn Shah (2006). Service-Oriented Architecture (SOA) Compass: Business Value, Planning, and Enterprise Roadmap (Hardcover). IBM Press (ISBN-13: 978-0-13-187002-4; Published: Oct 25, 2005; 272 pages).
[edit] Business-driven development (BDD)
Business-driven development is a methodology for developing IT solutions that directly satisfy business requirements. This is achieved by adopting a model-driven approach that starts with the business strategy, requirements and goals and then transforms them into an IT solution. The transformation is typically achieved by applying model transformations. Due to the alignment of the business layer and the IT layer, it is possible to propagate changes of the business (semi-)automatically to the IT systems. This leads to increased flexibility and shorter turnaround times when changing the business and adapting the IT systems. BDD shares these objectives with SOA and SOAD, which makes it one of the candidate methodologies for SOA design. SOMA and BDD can be used in combination.
[edit] References
- ^ Michael Bell, Service-Oriented Modeling: Service Analysis, Design, and Architecture, Wiley 2008, ISBN 978-0-470-14111-3
- Shan, Tony; Hua, Winnie (2006). A Service-Oriented Solution Framework for Internet Banking (PDF). International Journal of Web Services Research, Vol. 3, Issue 1, pp 29-48.
- Shan, Tony; Hua, Winnie (2006). Solution Architecture for N-Tier Applications (PDF). In Proc. of the 3rd IEEE International Conference on Services Computing (SCC 2006), pp. 349-356.
- Erl, Thomas (2005). Service-Oriented Architecture: Concepts, Technology, and Design (Hardcover). Prentice Hall (ISBN 0131858580, 796 pages).
- Wada, Hiroshi; Suzuki, Junichi (2006). A Service-Oriented Design Framework for Secure Network Applications (PDF). In Proc. of the 30th IEEE International Conference on Computer Software and Applications Conference (COMPSAC 2006).
- Wada, Hiroshi; Suzuki, Junichi (2006). A Model-Driven Development Framework for Non-Functional Aspects in Service Oriented Grids (PDF). In Proc. of 2nd IEEE International Conference on Autonomic and Autonomous Systems (ICAS 2006).
- Zimmermann, Olaf; Schlimm, Pestel, Waller (2005). Analysis and Design Techniques for Service-Oriented Development and Integration (PDF). INFORMATIK 2005 — Informatik LIVE! Band 2, Beiträge der 35. Jahrestagung der Gesellschaft für Informatik e.V. (GI), Bonn, 19. bis 22. September 2005, ISBN 3-88579-396-2).
- Bell, Michael (2008). Service-Oriented Modeling: Service Analysis, Design and Architecture. John Wiley & Sons 2008, ISBN 978-0-470-14111-3.