While other organizations may begin service-oriented architecture (SOA) with pilot projects or a few Web services-based applications Railinc, a wholly owned subsidiary of the American Association of Railroads, began with a center of excellence.
The first roadmap for the organization's transition from a legacy Electronic Data Interchange (EDI)-based system to SOA was not for an SOA project but for the center of excellence that will manage and govern the overall implementation, explained Garry Grandlienard, IT director of enterprise architecture and center of excellence lead. Among other things, the roadmap identifies the roles of IT staff in all projects. Grandlienard defines his own role, which includes liaison between business and IT organization as "the advocate for making SOA successful at Railinc."
"I'm responsible for developing the business architecture, information architecture and technical architecture," he said. "So we've integrated consideration for SOA into all those architectures. It's important that you include that in what you design for the future in those architectures."
It was crucial that the SOA implementation at Railinc be both comprehensive and centered in a commitment to excellence, Grandlienard said, because railroad companies, vendors and shippers rely on the information the IT systems provide.
"We have repositories of equipment information, location information, movement information and we provide that information to the industry," he explained.
It includes data on the status of railroad cars and shipments that are used by both the railroads and shippers. Information also covers what railroad cars are moving into which locations. That information is vital to the smooth flow of freight moving over 460 railroads crisscrossing the U.S., Canada and Mexico.
"When a train's approaching a location like Chicago," Grandlienard explained, "that train is going to be broken up and cars are going to be moved around to other railroads. So if they don't have good accurate information, that will really slow down the speed at which the freight moves through the system."
SOA is ideally suited for an information system handling 5.8 millions messages a day with business data flowing among 1,500 trading partners, tracking more than 7 million pieces of equipment. What better way to provide this information than via Web services applications that can be accessed anywhere via a PC with a Web browser.
"The systems we build here at Railinc are shared systems," Grandlienard explained. "Where SOA comes in is we really have a need to assure that we have a single system of record for the information."
Real-time access important
SOA's selling point for Railinc was that it provides real-time access to the information via available Web services, while avoiding problems associated with out-of-date information, he said. Web services reuse will also make it possible to develop new applications faster with lower cost, he added.
"It might cost a little more when we do a project to do it in the service-oriented fashion, but the benefit we believe is that later on those services can be reused," Grandlienard said. "We'll be able to take that development time out of the equation for subsequent projects."
To assure quality, Railinc developed the SOA center of excellence before beginning the process of moving from the existing legacy EDI system. The goal of the center was to develop a long range plan that would provide answers to questions the IT organization had when first contemplating the project. The questions started with the basics.
"We really struggled with how we would know which services to build," Grandlienard said. "What are the right services we need to build? What's the order we need to build the services in? Who should build those services? What are the roles and responsibilities of the folks in our organization when you're building services?"
Old approaches that had served Railinc well in the EDI era would not answer those questions, he said.
"Building SOA is different than building a monolithic application," Grandlienard said.
Deciding roles and responsibilities
The organizational issues, including who would be responsible for what, became a major focus for the center of excellence. Standardizing on Web services specification such as SOAP, and the installation of the IBM WebSphere platform for the SOA implementation was the "easy part," Grandlienard said.
"We wanted to establish a center of excellence to make sure we had the right roles and responsibilities defined and had people tapped to carry out those responsibilities," he explained.
Through the center of excellence process it was determined, for example, that it would be most efficient to divide development project teams up according to specific business areas so they would be experts in developing and maintain services in an area such as equipment management.
"In the past you could just assign a project team and build out a project," Grandlienard explained. "When you're talking about a service-oriented project there are going to be some aspects of that project that are going to need to be built by developers outside of that project team. If your project is about how to provide weight information to the industry, if you need to check and validate information about location or about a piece of equipment, you're going to ask another project team to build that service for you."
The center also helped establish experts in-house for the software infrastructure for the SOA applications. For example, there is a service administrator responsible for getting services into the registry/repository.
Having in-house expertise on the various aspects of SOA is a goal the center of excellence is promoting throughout the IT organization so that service-orientation becomes the way things are done.
"The idea is we want to push these roles and responsibilities out into our existing organization," Grandlienard said. "We don't want the center of excellence to be an island. Because if it is an island, we'll never be able to do SOA throughout the organization."