Time to pound the 'reuse' drum some more. Can organizations actually foster reuse of SOA services? Does reuse of SOA-based services have the potential to deliver cost savings and agility? Three separate types of reuse: enterprise reuse, shared reuse, and specialized reuse
The answer seems to be: it depends. What do organizations that are saving oodles of money from reuse have that other failed efforts may not? Corporate culture, corporate culture, corporate culture.
In a new post, Theo Beack takes a very comprehensive look at the whole reuse argument. He observes that reuse doesn't just spring up by itself: "Many assume that by going towards an SOA, reuse will automatically fall into place. This is obviously not the case," he writes. Organizational issues hold back a reuse ethic, as well as interoperability problems, poor internal communication, and lack of organizational standards.
Beack has worked with organizations that have been able to make reuse work quite well. What these organizations have in common is "the ability to foster a culture of reuse, provide incentives for developers and teams to create reusable services, implement mechanisms to measure how each services is being used, by whom and how often." He adds that "this also resulted in their ability to measure the quality of each service."
Other critical factors include implementing "a governance structure, tools, processes, collaboration workspaces and blogs to facilitate improved communication and thus share knowledge and best practices that helps improve the reusability of the services being created, and provide management support to drive the cultural change."
I just heard about one major financial services company that apparently has quite successfully put reuse to work. Ameriprise Financial, which has had an SOA effort underway since 1999, has been able to save millions of dollars in development costs through reuse of crucial business services.
Tracy Legrand, chief architect for the financial planning firm Ameriprise Financial, talked about his firm's SOA progress at a recent press conference for IBM's latest SOA product rollouts, which include a registry and repository, along with 26 other products.
Legrand acknowledges that not every service is reusable across the enterprise, and some may never get reused at all. His team actually divided its services into three separate tiers: enterprise reuse, shared reuse, and specialized reuse. "At the enterprise level, we had very few services that we identified as enterprise in nature," he related. However, the leading enterprise-reuse service -- customer management -- delivered up to $10 million in savings to the company, he added.
The next level of reuse, shared reuse, occurred at the line of business portfolio level, Legrand continued. "We would try to identify services that were, for instance, within our banking division, and could be shared across the banking division, but weren't necessarily targeted at enterprise reuse."
Then there were specialized, services "that frankly weren't intended or expected to be shared to any great degree," he said. "But we still wanted to build them using SOA tools and technology because of the quality value and ability to manage them through things like BPM infrastructure and other things down the line."
Interestingly, Legrand also observed, the specialized services didn't necessarily remain siloed forever. "In fact, specialized services grew to become shared services, and eventually became enterprise services," he said. The presence of registry/repository helped drive more reuse, he explained.
"The savings that we realized were in things around time to market, and how quickly we could deliver new business products or services," he added. "We had savings around avoiding duplicate build functions. What tends to happen in large companies is that's its easier often to just think about building a new service that does 80 percent of the same thing as an existing service."