Previous Blog Posts
- Introduction to Service Oriented Architecture (SOA)
- Service Oriented Enterprise Architecture
- Basic Dynamics of SOA and Service Modeling
In this post we will work on how to model the Service Oriented Solution for a particular business problem.
Firstly what is a Business Problem?
It’s a business process which required automated solution. After implementing the business solution business will achieve the following goal.
- Increased intrinsic interoperability
- Increased federation
- Increased vendor diversification options
- Increased business & technology domain alignment
- Increased ROI
- Increased organization agility
- Reduce IT burden
Let’s start the real work by organizing the business process actions into two primary categories which we identified in the earlier post, Agnostic & Non-Agnostic. To do so we need to do the following steps
- Functional decomposition : Identify the large problem and then create small collection of problems which will represent the large problem. Then find the solutions for each of the small problems. This method is also known as “Separation of concern theory”
- Service encapsulation : In this step we need to identify what subset of logic needs to encapsulation within a service
Agnostic Context (Reusing the solutions)
- Reusing the agnostic services : Now we have reusable solution logic units with proper encapsulation. Identification of solution logics which can reuse to solve different problems will take place in this step.
- Utility abstraction : Separate the common, cross cutting functionality that neither specific to a business process nor a business entity . In the service inventory we will have a utility service layer, which can be used in services.
- Entity abstraction : Similar to utility abstraction, we will identify services which are related to business entities and have them in the entity service layer of the service inventory.
Non-Agnostic Context
- After identifying the all the above solutions related to agnostic context, remaining solutions will be specific to business processes.
Now we have organized the solution properly from the above process. So let’s build the Service Oriented solution in the next post.
References
- http://serviceorientation.com/whatissoa/fundamental_design_terminology_and_concepts
- Service-Oriented Architecture (SOA): Concepts, Technology, and Design by Thomas Erl
- Next Generation SOA: A Concise Introduction to Service Technology & Service-Orientation by Leo Shuster; Thomas Erl; Clemens Utschig; Hajo Normann; Bernd Trops; Berthold Maier; Clive Gee; Pethuru Chelliah; Jürgen Kress