Glass and others at BT recognized that BT had to move away from what was essentially a product-oriented software architecture -- home phone service, business phone service, etc. -- to a customer-focused one. "We needed customer-centric systems. We needed an order-entry system for all customers, a billing system, a provisioning system." By designing and building general-purpose services that could be invoked in the sale of different products, BT started to cut down on its software overhead and phase out older systems.
"You've got to design services in the context in which they will operate," Glass adds. It's easy to come up with a billing service, but will it be able to handle the 500,000 bills that need to be composed every night by BT's billing system?
"You can predict what the level of performance will be. You can design the service with that in mind," he says.
But all designs began with the customer experience team, which thought about how existing and future customers would need to interact with the service. "It defined what the customer experience should be" rather than delivering it as an afterthought as part of a product-oriented system. The customer experience team simplified BT's sometimes complex customer relationships into three phases. First is the period when the customer requests a service, gets it, and starts paying for it. The second is when some issue arises with the service that needs to be resolved. And the third is when a new service is introduced to the customer.
By designing systems that can meet the needs of each phase, BT avoided building the same systems over and over again. "We took designs and held them up to the light. We asked, if we built it, how much reuse would we get?" he says.
BT reinforced its design discipline with bonuses. The new service had to replace an existing system. Building a service wasn't enough. Bonuses were paid only when an old system's "hardware was decommissioned and signed off."
That doesn't mean all legacy systems disappeared. Many have been wrapped and converted into services, but they function now as part of composite applications and can be moved around to new hardware, in some cases closing down the old monolithic system. Neither adding new services nor closing old systems was the primary focus. "The customer experience is the Holy Grail," Glass says. Build services that match the needed customer experience. The other benefits will flow out of your SOA project, he says.