The attainment of the goals and benefits commonly associated with service-oriented computing and SOA require the application of the service-orientation paradigm. Service-orientation provides us with a well-defined method for shaping software programs into units of service-oriented logic that we can legitimately refer to as services. Each such service that we deliver, takes us a step closer to achieving the desired target state represented by these strategic goals and benefits.
Proven practices, patterns, principles, and technologies exist in support of service-orientation. However, because of the distinctly strategic nature of the target state that service-orientation aims to establish, there is a set of fundamental critical success factors that act as common pre-requisites for its successful adoption. These critical success factors are referred to as pillars because they collectively establish a sound and healthy foundation upon which to build, deploy, and govern services.
The four pillars of service-orientation are:
- Teamwork – Cross-project teams and cooperation are required.
- Education – Team members must communicate and cooperate based on common knowledge and understanding.
- Discipline – Team members must apply their common knowledge consistently.
- Balanced Scope – The extent to which the required levels of Teamwork, Education, and Discipline need to be realized is represented by a meaningful yet manageable scope.
The existence of these four pillars is considered essential to any SOA initiative. The absence of any one of these pillars to a significant extent introduces a major risk factor. If such an absence is identified in the early planning stages, it can warrant not proceeding with the project until it has been addressed – or – the project’s scope has been reduced.