BT's model of SOA development
Thursday, March 30, 2006 09:37 AM
Two years ago, BT Exact--BT Group's technology and IT operations division--announced a far-reaching project to develop a single design-and-delivery methodology for all future IT projects across the group.
The company's Systems Engineering Programme (SEP) is ultimately intended to provide a single environment for managing software development, using technologies and concepts that have become a familiar part of the lexicon of the service-oriented architecture (SOA). For instance, BT is standardising on Unified Modeling Language (UML) for its design notation. The company worked with Borland--which is also supplying the tools underpinning the SEP effort--to put together a BT-specific guide translating the company's usual requirements specifications into UML.
The hope is that the clarity afforded by UML will make it easier for different teams to work together, as well as making outsourcing and offshoring more effective. BT had failed in its previous attempts to standardise on a single design notation because of lack of agreement over language in the industry.
At the same time, BT is undergoing a massive shift in its engineering culture, looking to use more agile methods, cut spending on development and ultimately to merge resources into a single IT department of about 8,000 people.
Like many large companies, BT's design and development practices have grown up without any particular overall plan, leading to high development costs and inflexibility. Its internal and external software architects, engineers, analysts and systems integrators all use a range of tools to manage different stages of development, something BT is looking to simplify by standardising on common tools and processes.
The company is putting into place a single repository for all its designs--based on Borland's StarTeam and incorporating a UML-based agile modelling development platform--which should promote clarity and the re-use of standard design components.
Simon Ward, a lead architect at BT Exact currently working with the Integration and Data Design team, shared with Builder UK the unique challenges facing a company of BT's size and complexity in implementing a SOA.
Q: First of all, could you give a quick introduction to what BT is doing with SOA? What was the specific motivation for putting a SOA into place? What are the particular benefits you expect from it?
A: BT is in the process of migrating its Operational Systems Stack (OSS) to SOA, and there are several reasons why we are doing this. Most importantly, we want to provide our customers and partners with an experience that is self-service, zero touch and real time. We also want to accelerate product development cycles and drive down software development costs by reusing existing services. By dramatically reducing the number and complexity of systems that we support, we are driving down the cost of ownership of our systems.
Is this of direct benefit to BT's customers?
The team I work with is concentrating its efforts on BT's internal systems. However, the changes BT is making will inevitably benefit all of BT's customers as we work to make our systems more transparent.
We understand some of the particular benefits you wanted for your services were high flexibility and easy management--could you talk a bit about how the services needed to work?
Our systems are being designed to give customers the ability to build, deploy and manage their products and services themselves, via the web or other interactive portals. The transactions carried out by our systems need to be zero-touch. That is, the processes should be fulfilled automatically without intervention from a BT agent. The systems should also respond in real time to give the customer instantaneous feedback on the outcome of the request.
In an interview last year, Norman Street, head of Internet applications and technology at BT Retail, talked about how BT needed to reduce the complexity of its integration model, which he described as a typical spoke model. Could you talk a bit about what you wanted to do on the integration front, and how difficult it has been to carry it off?
I think what makes the work we're doing different is that we haven't simply set about wrapping our legacy systems with a service layer. We're trying to separate the interface from the implementation across our whole OSS. We have designed our interfaces to be independent of any underlying systems or COTS packages. To do this, we have built an exchange data model incorporating industry standard models where appropriate.
The main benefit of this is that service consumers require no knowledge of the underlying systems. This allows us to remove or replace the underlying applications or COTS packages as part of our drive to reduce the complexity of our systems estate with little or no impact on service consumers.
Is BT Exact focusing on one particular type of technology to build its SOA, or are you keeping things more open?
In our design work, we try to be 'technology agnostic' due to the diversity of the systems with which we're working.
What has been BT's experience with migrating existing applications to the SOA?
It's a challenge working with the huge number and diversity of systems that have grown up in BT over the years. I think the biggest learning experience has been gauging the correct level of granularity for a service. At one extreme, you can have an entire system exposed as a single service with a huge number of operations on it. At the other extreme, you can build a service for every operation. The ideal is usually somewhere in between.
How difficult has it been to put the SOA into place? To what degree has BT's engineering culture had to change?
We have had to devise some new roles for building an SOA. Broadly speaking, we have what we call "Capability Designers", who are responsible for designing the service interface and then implementing the interface on the underlying systems. We also have "Solution Designers" who work with the business and combine those services to build the required IT solutions. We've put a lot of effort into winning over the hearts and minds of our key architects and designers. I think everyone is in agreement that in the long-term SOA is the only way to go, as we cannot continue to proliferate systems.
We understand BT is doing things with agile development and architectural governance--can you speak about that a bit?
A lot of effort is being put into adopting agile development within BT. There is some synergy between SOA and agile development, certainly. SOA allows large problems to be broken down into smaller independent units that can then be developed using agile techniques. In a large organisation like BT, SOA requires an overall design to hold it together. What's perhaps unique in our approach as a large company is that the teams responsible for leading on SOA and the teams responsible for leading on agile development are both part of the same organisational structure. This gives us plenty of opportunities to work collaboratively.
How important have standards been in your SOA project?
Wherever suitable standards exist, we endeavour to use them.
How typical do you think BT's experience is of SOA--or is there any typical situation?
I don't think that what we've set out to do in BT is typical. The work we're doing is different in that we haven't simply set about wrapping our legacy systems with a service layer. Although SOA as a concept has been around for a while, it is only now just reaching maturity. Therefore, I don't think that there are any typical experiences within the industry.



There are currently no comments for this post.