SOA in 10 days
Q: Can you do a full-scale implementation of a wall-to-wall SOA in any company in 10 days?
A: No – unfortunately not.
Q: Can you establish the basic parts of an EA framework and agreements for a full scale implementation of a wall-to-wall SOA in any company in 10 days?
A: Yes – definitely!
In a series of articles we will share our experiences in doing just that. We will cover the challenges and obstacles we have met during a series of SOA implementations at our customers. We will walk through the solutions and the thoughts behind the decisions made.
Please feel free to contact any of the authors anytime. A talk one-on-one could be of greater benefit than reading the entire site. We do appreciate any comments, suggestions and your interest on the topics covered on this site.
The articles will cover the following topics:
- Initial model.
- Establishing framework and agreements
- How to identify services/boundaries of the services
- SOA infrastructure
- Project model
- IT projects
There are a number of EA models out there that represent best practices based upon experience gathered during the years (Zachman, TOGAF, DODAF, FEA, OIO etc.). They are all excellent frameworks. The problem for any company is to choose between them and adapt them to your needs. Especially for companies adopting their initial EA framework it is hard to choose between the established frameworks.
If you do not have a wide and long experience in adopting EA frameworks you do not know what to choose from. It is like choosing your first baby stroller – it is hard to set out any criteria’s to choose from .
This first article will discuss what to do in this situation. The decision we made was to use a very simple and safe model to get companies going. A model that comprises the essence of all the institutional models mentioned before. Hence the company can “upgrade” the model once the basic EA processes are in place.
Establishing framework and agreements
The next step is to fill out the EA model/frame you have chosen and adapt it to your own company. You have to decide upon how the entities map to each other and how you are going to cooperate within the model and within the IT projects.
It is important that you get these agreements in place at this point in time. The agreements and principles the company decides upon now must be respected and supported by everyone within the company. In our experience the biggest challenge to any EA model is lack of support from the organization. Almost any EA can survive a rather high number of very bad decisions (technology, process etc.) – but no model can survive lack of support from the organization.
In this article we will share our experiences on how you can establish these agreements and in which areas you need an initial agreement.
One of the mandatory activities in any SOA implementation is to answer the questions:
• “What is a service?”
• “Which services do my company have?”
We will share our experiences in identifying and defining services within an organization. The organization's support and understanding of the services are crucial to the durability of the model. You have to take this into consideration when deciding upon the boundaries of your services.
It is important that the organization adapts the service model and fully supports the model. If the organizational reputation of the model ends up like: "It is a model made for propeller heads by propeller heads" then your EA/SOA is already dead.
Having decided upon the principles of your process model and service model you are now ready to decide upon the requirements for the infrastructure needed to support your initial EA model.
In this technological domain there are a lot of issues you can look into. However, you should consider what the most important issues are and start deciding on those. If you have succeeded in the previous activities to maintain a simple and understandable model you will realize that the requirements for the infrastructure also turn out rather simple.
Should you further choose to implement the SOA infrastructure in a service-oriented way you can start out with a rather simple infrastructure and elaborate it over the years as the need arises. We will show you how we have succeeded with this approach across several customers. You should plan for the future - but build for the present.
Several issues tend to pop up at all SOA implementations: data redundancy, large messages, real time data vs. performance etc. These issues are for real - and should be dealt with. On top of the technological challenges we also face a challenge of solving the issues in a way the entire organization understands and supports.
Next on the list is the project model after which the IT projects are conducted. A generic project model often consists of roles, phases and deliverables. Assuming a project model is in place in the organization we usually only adjust the deliverables.
The greatest single risk to any EA/SOA model is the IT projects. If the EA model is not supported and used within the IT projects, the model will become void. Developing an EA model is like developing software; everything works just fine until you expose it to the users. In the case of EA/SOA the IT projects are the users. The cure for this is also the same; ensure user involvement from the beginning.
Many companies already have an existing project model. Usually we start out by reusing this existing model and restrain ourselves to adjusting a few deliverables. Usually the structures of the use cases/scenarios are adjusted based upon the decisions made previously.
Having established agreements upon all the EA-issues above it is now time to try the EA model out in some real IT projects. As mentioned before the greatest risk for any EA model is the IT projects. If the EA does not come to live in the project, the EA is dead.
We have had some experience on what to watch out for; good signs and bad signs. We have also gathered some experience in mitigating - and have some learning points to share :-)
Please approach this site like a book. We hope you will find useful inspiration for your SOA projects. Also please feel free to share your thoughts with us and exchange points of views with the authors.
On to Initial model.