There's been some debate recently about the role of centers of excellence (COE) -- aka competency centers - in building and maintaining service-oriented architectures.
Analysts love to recommend centers of excellence as a best practice, but in the real world, companies often ignore their advice, as Joe McKendrick pointed out in a recent blog post.
McKendrick said an April ebizQ survey revealed only 9 percent of respondents had established some form of SOA competency center/center of excellence. You probably won't be surprised to learn that large companies - more than $1 billion a year in revenue - were more likely than small companies - less than $25 million a year in revenue - to establish centers of excellence.
I wasn't surprised to learn this about SOA, which is a relatively new initiative at many companies and with few well-defined best practices. But integration competency centers (ICC) -- which analysts have been pushing for several years now -- also are a woefully neglected best practice, according to Forrester analyst and ICC expert Ken Vollmer.
In a recent interview, Vollmer said ICCs are still very much in the realm of a best practice that's not actually practiced:
"...I do not believe the majority of firms have an ICC, only those that are more leading edge, if you will. It's mistakenly seen as a luxury, when in fact it should be a necessity. It makes operations much more effective. So, people can think they're saving money and not fund an ICC -- they're going to pay the piper in the long run."
I asked Vollmer how companies could decide whether they needed an ICC. He said any organization with mid-to-high-level integration issues could benefit from an ICC, but added that there are four very clear symptoms that you need an ICC:
I would say you could apply those same standards to a SOA center of excellence -- except substitute "SOA" and "services" for "integration tools" and "interfaces." And, although Vollmer didn't specifically mention it, I also do not doubt that a SOA center of excellence could benefit from working with or including members of an established ICC.
ICCs can also prove valuable during business process management (BPM) implementations, according to Vollmer.
"We did a survey recently of 18 large financial institutions that had the BPM center of excellence; in every one of them, the IT organization was providing the leadership for that group, and it has very similar overall requirements as an ICC. ... So, these things started out as integration competency centers, but they are really being called on more and more frequently to provide guidance for a wide range of tools that are being used both on the IT and business side."
So if centers of excellence are so useful, why aren't more companies embracing the concept for integration or SOA? Being a free spirit with a deep aversion to meetings, my hunch is companies are turned off by the very bureaucratic sound of a competency center or center of excellence. So, I asked Vollmer if an ICC had to be an ongoing effort -- a standing commitment -- or if you could just get everybody in one place, identify some best practices, and lay out the rules?
Alas, Vollmer said an ICC does need to be an ongoing effort. And his reasons make sense:
"There are always new integration tools coming out, and this group should be responsible for keeping up to date on what the latest trends are, and make sure that that is incorporated in the business. So it's not a static, one-time job, not at all. They have to keep current, they have to keep trained, and they have to make sure that they keep pushing that information out to the rest of the application development team."
No doubt, that would apply to SOA, too.
Vollmer makes a good case for a standing center of excellence -- but I've learned the hard way that the "right" way of doing things doesn't always work out in real life. Sometimes, you have to do what's right for you now, even if it's not "the" best practice.
As Todd Biske argued in a recent blog post, there are good reasons to create a temporary center of excellence. Sometimes, you've got to do what you can to get a job done and you just don't have the staff or patience for an ongoing obligation. In that case, why not set up a temporary center of excellence? Of course, it would probably help if you took Biske's other piece of advice and include the enterprise architect -- or someone with IT infrastructure oversight -- on each COE so that you could ensure continuity.
At the least, a temporary COE will serve your needs now without burdening your staff with an ongoing commitment. On the other hand, this short-term experiment may help you understand why competency centers and COEs are considered "best practices" and you may opt to extend yours indefinitely. Either way, your immediate needs are met.