This rigorous approach gave FCPS confidence in selecting the webMethods Integration Platform. FCPS selected webMethods for its ability to solve FCPS integration problems, the ease of use of the development tools, and the close alignment of the webMethods and FCPS strategic direction.

Integration One

Before jumping in and implementing a new, integration architecture, the IWG thought it prudent to conduct an integration exercise -- known as Integration One. The purpose was to establish the hardware environment, establish development practices and gain experience with the webMethods technology.

Working with webMethods consultants, the IWG selected the Sun Solaris platform to handle the high-speed communications of an integration platform. The IWG established development, test and production environments.

The use of Sun Cluster was also critical to this hardware configuration. As a hub for applications, the webMethods platform must be highly available. The hardware and software environment could not become a new single point of failure.

The primary software component was the integration server, which executes Web services. The enterprise server handles message (document) communication, queuing and routing. An Oracle database was used for logging.

With the environment in place, the IWG received on-site training on the webMethods platform. They also selected the project to serve as the integration exercise.

The integration exercise needed to be independent of a critical path delivery to enable a learning experience. However, it also needed to prove that the IWG could integrate information from FCPS enterprise applications. The IWG chose to implement a simple Web application to match teacher information from the student information application with employee information from the human resources application.

Through the course of development, the IWG sought to establish standard practices for:

-Requirements definition

-Integration design

-Data model design

-webMethods implementation

-Testing

-Deployment

-Configuration management

Configuration management in an integration environment proved to be a challenge. Here the IWG needed to recognize that multiple integrations could progress simultaneously. Furthermore, integrations would advance from development to test to production at different milestones. Thus the environment could not be managed as one would manage a single application. The IWG overcame this challenge by controlling the webMethods environment at the package level for packages associated with a specific integration interface.

Another key outcome was the initiation of a universal data model. In an environment with many applications -- most based on commercial products -- the data modeler's dream of a single enterprise data model often goes unrealized. However, with an integration platform, it is possible to define a common representation for enterprise entities, such as student, employee and teacher.

The integration platform enables a universal data model by transforming application-specific representations into the common representation, which is then made available to other applications. This is key to the reuse of services and data.

The IWG developed the Web application in Java Server Pages for an Oracle application server. When a user starts the application, it invokes a webMethods service that retrieves a list of valid schools from the student information application. When a user selects a school, the application invokes a webMethods service that retrieves teacher information from the student information application and another service to retrieve employee information from the human resources system. The information is then matched and presented to the user.

This simple application provided a valuable learning experience. It also provided a valuable utility for preparing data necessary to meet reporting requirements of the No Child Left Behind law.

Integration X

Now that the fun was over, it was time to deal with the spaghetti architecture. IWG dubbed this phase of the effort "Integration X," which signifies this was a project of many.

To reduce complexity, IWG organized the effort into