Identifying the Services
Stating that Services are the central part of both SOA and SOEA will probably not offend anybody. But in my opinion, methods to identify Services are only slowly emerging. When talking about SOA the Services are often seen as a task that will require only a small effort – so small that we almost don’t bother talking about it. The level of detail, in which this task is described, is usually focused on whether to approach this Top-Down or Bottom-up. In practise you will probably use a mix of both, but should have a strong emphasis on the Top-Down – this is necessary in order to control the coherence between the Services.
But how do we actually identify our Services? This is now doubt a discipline normally mastered on the abstraction level of EA. In SOEA we need a method to identify Services in a way that supports the paradigm of SOA and utilizes the experience of EA. The important notion here is that we don’t start from scratch!
In the OASIS SOA Adoption Blueprints TC a first draft of a method to identify Services has just been released, titled: “Methodology for Service Architectures” (For those unfamiliar with this work I would like to strongly recommend this). If you are experienced working with SOA and EA you should however not expect any revolution – it is in fact a very simple method. But this is just where I see the strength of the method. The simple message is: when identifying your Services don’t start developing your solution! Keep on track, and identify the Services one level of abstraction at a time.