Service-oriented architecture (SOA) is not a theory for Jerry Kelly, CIO at 3Com Corp., it is a practice that in less than one year significantly improved application developer productivity, data integrity, information delivery and B2B transactions.
When Kelly arrived at 3Com in 2006, he found an application environment, which he describes as "massive spaghetti-ness" with point-to-point integration sometimes being done to support a single transaction. Maintaining the connections for supply chain management, customer relationship management, B2B and human resources took up the majority of development staff time, he recalled.
His first step in planning for a conversion to SOA was to analyze his application portfolio, a practice he recommends to other CIOs contemplating such a re-engineering project.
"Fundamentally, CIOs need to understand the application portfolio thoroughly and how the applications in that portfolio interact," Kelly said. "Too often there are too many point-to-point contacts."
His own analysis at 3Com was a case in point.
"At one point I had 276 points of contact between various applications," Kelly recalled.
Developers were moving from connection to connection trying to keep them working or reconfiguring them as requirements changed.
"Doing an analysis of production support issues," he said, "I was really amazed to find more than half the time they were working on issues relating to transactions between applications in this point-to-point environment."
Point-to-point EAI connections caused unique problems because there was no consistency in the way integration was being done. That made it time consuming to maintain.
"Sixty percent of the time our application team was working to keep the spaghetti wet, to maintain the point-to-point contacts," Kelly said.
Starting last fall, implementation of an SOA approach based on the webMethods Enterprise Service Bus (ESB) from Software AG has greatly reduced the maintenance tasks that kept developers from developing new applications, the CIO said.
"By moving to a robust messaging bus I could have robust interaction between applications and reuse services over and over and over for transactions between applications as well as moving data," he said. "That greatly reduced the production support activities."
Without an SOA environment such maintenance is a major cost for IT, Kelly said. Creating a point-to-point connection for a specific integration may at first appear to be a quick way to deal with an individual problem, but in the long term having the development staff spending the majority of their time on production support is not cost effective, he said.
Prior to the ESB implementation, the application team was spending 64 percent of its time on support issues and 36 percent of its time on value-added development.
"What's happening now is those percentages are reversed," Kelly said. "I'm finding now that 64 percent of the time my applications team is working on development and 36 percent of their time is spent on production support activities."
Even the focus of the support activities has improved as developers are not focused on simply maintaining connectivity between applications or with outside business partners.
"The majority of support activities are not maintaining connections between applications," Kelly said. "I've seen a huge productivity gain for the application team."
Data integrity has also improved with the implementation of the SOA approach, he said. Application interactions and transactions are now occurring in real-time rather than in batch mode in the previous system, so that end users have information when they want it rather than having to wait for it.
"SOA properly implemented is a powerful tool," Kelly said. "It's a powerful process. It's a powerful practice and there are definitely productivity gains that can be realized."