SOA Centre of Excellence-Why it's Worth Making the Investment
As a specialist IT systems integration company, we get to see the best and worst of what’s going on in companies’ integration environments. One of the most surprising observations is how many companies are willing to invest big money into new systems and new integrations, but they’re not willing to take a step back and look at what they already have, and what can be reused.
"Having a holistic understanding of your integration environment can and will save you money"
Typically, they have people or teams which are responsible for their individual systems, but no-one responsible for the integrations. Many organisations are put off this approach because having a person or team with an overview of all the systems and the connections between them requires having stringent governance in place.
Reports from Gartner confirm that this approach can have serious consequences. For example, one report warned that Service Oriented Architecture (SOA) projects fail unless they are tightly managed and audited. They go on to recommend that IT directors establish a dedicated IT integration team to oversee the development of new services (or microservices).
The role of SOA Governance and a Centre of Excellence
The goal of a Centre of Excellence (CoE) is to make the most of companies’ existing systems and respective features, helping harmonise them with new solution architecture. Depending on the size of the company, the CoE would usually contain an enterprise architect and a business process architect. Between them, they are familiar with how applications are developed and with how business processes work within the organization. Ideally these roles would be internal rather than outsourced because they require intimate knowledge of the company's inner workings. However sometimes it can be useful to have consultants help set up a CoE to begin with.
Other possible roles within the CoE are information security specialists, data modelling and information management specialists, business analysts, IT governance professionals and SOA governance analysts. They would identify and catalogue software assets that are susceptible to reuse and align any future demands with the company's strategy. In small companies a CoE could comprise one person fulfilling these functions, even part-time, and in larger companies you could have a permanent team in place.
These roles would work together to build a SOA Governance Framework, which relies on a Service Repository which catalogue the services which connect software applications together.
Why go to all this trouble when all your systems are working?
1. Sooner or later, you will need to have an overview of all the system integrations, or services, rather than just an overview of the applications themselves.
Examples of this could include when something goes wrong, when a system has to be added or replaced or when a new service request requires you to understand the knock-on effects on other systems.
2. Having a holistic understanding of your integration environment can and will save you money.
In our business, we often see companies calling in consultants to develop new services for them. When the consultants investigate, they find existing services which have been developed at great expense, and which could be easily reused. We have even seen an example where two business areas were commissioning similar new services to be developed in parallel. They were about to spend at least double what was necessary.
3. Having a good CoE in operation will save you time. It can take weeks or even months to develop a new service.
We often see companies spending valuable time ‘reinventing the wheel’, when they already have services which can be reused.
4. SOA Governance decreases the level of coupling between systems.
This creates more independence of software suppliers and consultants—especially when you’re thinking about version upgrades.
5. You have more resilience to integration problems as there is a team which owns the integrations.
Sometimes whole systems go down just because of a single service. A CoE has them documented and monitored, and is in a position to deal with any problems if they occur.
6. The devil is in the detail—you need to get these right to avoid being tripped-up later.
Having a single vocabulary to describe software assets and business terms (aka a Canonical Model) can help promote reuse and improve communication across the whole enterprise, thus saving time and money for future developments.
If it’s a no-brainer, how do companies end up in this position?
A company might start out small, focusing aggressively on their business development, and less on their systems. In time the business grows, and there is a need for more systems, as well as for more complexity in existing systems. All is well until some crucial detail is missed and the system breaks down. Or perhaps the person who was responsible for the bespoke system is no longer around and no-one has a view of how all the systems work together.
It goes without saying that the complexity of IT environments has grown exponentially. This alone is driving the need for IT departments to plan for complexity from the outset. We have seen many companies underestimate the amount of systems they need or the number of integrations required.
Company changes, mergers and acquisitions can be hard to predict, and these are typical major drivers for creating a better understanding of your systems.
One step back, three steps forward
It can feel like you’re wasting time taking effort and resources to create best practices, add a layer of governance and document your services, and that you’re gaining no benefit from the exercise. In our experience, we have seen that this investment saves companies time and money. More importantly, it can reduce reputational risks your department or company can be exposed to should things go wrong. The press is littered with stories of systems which went wrong and caused downtime or data breaches, for example, which could have been saved through better documentation and monitoring at the outset. Looking ahead, organisations may have no choice other than to adopt a CoE approach.
To do this, it can be very useful to get third-party help from specialist consultants who have experience of running integration projects—but the outcome has to be greater independence and autonomy.