Despite Complexity, Merrill Skipped

By Mel Duvall  |  Posted 2006-02-07 Print this article Print

The firm reinvigorated 420 financial programs stored on mainframe computers. How? By building—from scratch—Web services that can handle millions of interactions a day.


The team considered using a middleware server for the key job of translating requests in one language, such as Java, into instructions that could be understood by the mainframe, but opted to implement the translation piece directly on the mainframe. The reason: speed and simplicity. Using fewer moving parts—by eliminating the server—means higher reliability and writing the translation code in Assembler, a programming language for the mainframe, delivering higher performance than a Java parser.

The X4ML development environment where Web services are created, analyzed and tested sits on a Java server—not on a mainframe—and was written in Java 2 Enterprise Edition, which was selected because of its ability to work with multiplatform architectures. The Java server can be accessed by any browser-equipped computer, satisfying the requirement to allow Merrill's mainframe programmers to develop Web services without the need for high-end workstations.

The key thing, Crew says, is that there is no middleware between the requesting application and the mainframe. For example, a Merrill financial adviser may submit a request from his desktop to find all of his clients with shares in ExxonMobil, perhaps due to a sudden dip in the stock. The request is submitted from the adviser's desktop application, and the search is run directly on the mainframe via a SOAP request. SOAP tells the mainframe which operation to perform, and XML does the translating.

The X4ML Web services development environment is where the magic is created. A mainframe programmer accesses the X4ML tool via his desktop browser. He assigns the new service a name, such as "Client Finder," then tells the tool where to find the application by providing its mainframe listing.

The programmer then clicks on an Import button, and X4ML learns the program's "signature"—that is, the program's variables and how they are used.

Next, the programmer uses an analyzer tool to essentially pull the program apart and determine each of its inputs and outputs. By doing this, a programmer can create a Web service tailored to perform all or just parts of an operation contained in a legacy application. For example, a client finder application on the mainframe may produce results that list the name, address, phone number, birthdate and Social Security number of a client.

However, the programmer may want to produce a Web service that just retrieves name and address but not the other data, due to privacy concerns. Increased security policies, such as requiring authentication or encryption, can also be assigned. Alternatively, the programmer can click on a One Click button to automatically create a Web service based on the signature of the program that was determined by the Import tool.

Either option creates the Web service and automatically lists the new service in a Universal Description, Discovery and Integration (USSI) directory, where it can be accessed and utilized by other programmers.

A testing function within the X4ML tool also lets the programmer test the operation and evaluate errors before it is used. Creating new applications from the Web services then becomes a matter of accessing and combining operations in the directory.

The value of Web services was demonstrated over the last three years when Merrill launched a $1 billion effort to create a new suite of applications for wealth management that are available for use by Merrill's 14,000 financial advisers. The dual-screen desktop essentially provides these advisers with access to research, tools and account information to serve clients.

The wealth management project involved the creation of a wide range of new programs, in partnership with Thomson Financial, which brought its range of financial data and research services to the table, and Siebel Systems, for its client management expertise. Where possible, Merrill leveraged functions and data already available on the mainframe.

There was no need to create a complicated system that would allow a financial adviser to search through 1,200 clients to find just the ones owning ExxonMobil shares, when such a search could easily be run on the mainframe and be enacted by a Web service.

QUESTION: What's the biggest headache your tech team can expect to get from deploying Web services? Let us know at Baseline@ziffdavis.com

Story Guide:

Merrill Lynch & Co.: Web Services, Millions of Transactions;, All Good

  • Unlocking Access to Customer-Service Functions
  • Despite Complexity, Merrill Skipped Middleware
  • Mainframe Remains Strategic
  • Base Case: Merrill Lynch By the Numbers

    Next page: Mainframe Remains Strategic

  • <12345>
    Contributing Editor
    Mel Duvall is a veteran business and technology journalist, having written for a variety of daily newspapers and magazines for 17 years. Most recently he was the Business Commerce Editor for Interactive Week, and previously served as a senior business writer for The Financial Post.


    Submit a Comment

    Loading Comments...
    eWeek eWeek

    Have the latest technology news and resources emailed to you everyday.