SOA, Yes, it expands to Service oriented architecture. What is it?
Keep these things in mind during design and analysis.
1. Whenever you design a service, you are designing a service for a business task.
2. These services can be linked to achieve bigger business goals.
Let us understand 'Service':
In my view, a service is an expectation fulfillment for a service consumer, without service consumer actually worrying about how is it fulfilled.
For example: A student opts of 'Data structures' lesson. The delivery of a lesson is a service for the student. The professor does his homework, examples and makes sure that student understands the lesson. Student and the professor are the different entities, yet there is a well defined service contract between them which enabled two entities exchange the expectation without student actually worrying about the service implementation aspects of the professor.
So, to be called a service, it should be meaningful. It should satisfy the certain expectations. It should be bound by well defined interfaces. Any design that is designed keeping 'service definition' in mind, is a service oriented design.
SOA is an architectural model for integrating business partners', customers' and suppliers'services into enterprises' business processes.
Why SOA?
- Promotes reuse of IT investment in a business [will touch upon example, later]
- Promotes greater IT flexibility [will touch upon example, later]
- Greater IT flexibility means business flexibility [will touch upon example, later]
- Helps enterprises comply with government regulations [will touch upon example, later]
SOA is characterized by
- Well defined interfaces between the services.
Barriers for SOA adoption:
- Difficult to justify ROI [will touch upon reasons, later]
- Build vs Buy justification
- New IT investment or use existing IT investment
- Complexity of legacy application [How, will touch upon later]
While designing the services, consider the following:
- Business and IT alignment
- SOA Governance
- Decision rights
- Processes
- Policies
- Controlling aspects
- Monitoring aspects
SOA Governance enables stakeholders to identify ROI.
SOA: DIY Kit
- ESB, for aggregation, routing , transformation
- BPM, for business process orchestration
- Web services, well known means of service implementation
Examples will follow ...
Comments
Post a Comment
Thanks for your comments.