Drilling Into Web BedrockBy Baselinemag | Posted 2004-05-14 Email Print
Java application servers have matured into reliablebut complexengines for efficiently delivering services over the Web. What should you consider before selecting your "one throat to choke"?
Toyota Financial Services (TFS) last year decided to make a clean break from the past. The Torrance, Calif.-based finance and insurance subsidiary of Toyota Motor has run a homegrown call-center application for more than 15 years to help manage $42 billion in assets. And it had become clear that the mainframe system, which provides 1,200 service representatives with access to information about 2.3 million customer accounts, hampered the way TFS does business.
"The homegrown solution didn't give us the flexibility to add different components," says Shaun Coyne, TFS's chief information officer. "We were tied to that particular application."
Coyne and his team are now replacing the old mainframe system with a new one built around BEA Systems' WebLogic application server, a project scheduled to be completed in 2005. The BEA software will act as the integration layerthe connective tissueallowing data to be exchanged among multiple applications, including Siebel Systems' call-center software and Shaw Systems Associates' credit-management software.
TFS hopes to avoid getting frozen into a single, monolithic system again by basing the new infrastructure on open standards such as the Java programming language and by customizing its packaged applications as little as possible. "That was one of the lessons learned," Coyne says. "Our goal is to have an open-ended, Web-enabled system."
That's essentially the point of an application server: to provide the foundation and a common set of services for the development of software that is accessible through a Web browser and can be linked to other applications using standard protocols. Typically, an application server has referred to software written to comply with the Java 2 Enterprise Edition (J2EE) specification, maintained by Sun Microsystems. The notable exception in this category is Microsoft, whose .NET Framework tools allow developers to build Web applications that run only on servers with the Windows operating system.
The advantage of writing applications using J2EE is that they can be executed on many different types of computers, calling on the same services without a programmer needing to know anything about the underlying hardware or software. "That lets you streamline processes and coding. And you don't have to rewrite applications," says Kevin Himka, a design architect in Boeing's information-technology group.
But while the Java programming models are consistent, each application server behaves differently in a production environment, leading many organizations to standardize on a single vendor. "How you deploy themconfigure and tune themtends to be all different," says Tim Hilgenberg, chief technology strategist for applications at human-resources consulting firm Hewitt Associates.
Application servers can also back-haul older programs into a Web environment. The U.S. Navy's Office of Naval Research (ONR) in Arlington, Va., wanted to bring many of the applications it had developed for the Oracle database to the Web. "We couldn't just get out the magic wand and say, 'OK, it's all Java now,'" says Jim Campbell, a database administrator who works for RS Information Systems, the contractor that manages ONR's infrastructure. "Oracle had a good way to drag those apps along."
In the last few years, Java standards have stabilized and a field of dozens of vendors has narrowed to three main players: BEA, IBM and Oracle. As the segment has matured, application servers increasingly are viewed as a commodity. "In terms of functionality, the application servers are almost identical. They're a piece of the plumbing," says Mike Prince, chief information officer of Burlington Coat Factory, which uses Oracle's application servers extensively. Competition is also surfacing from open-source packages, such as Apache Tomcat, and from enterprise-application vendors, such as SAP, which sells its NetWeaver application server as part of larger offerings.
To stand out, application-server providers are tossing around a newer buzzphrase: service-oriented architecture (SOA), a way of describing business processes that use standard interfaces to integrate a company's applications both internally and externally. In this definition, transaction-based application servers are at the heart of an SOA. "The decision these days is not about which app server you're choosing, but the overall platform," says Dan Scholler, an analyst with Meta Group.
BEA points out that it's alone among the major players in that it isn't trying to sell any other enterprise applications; its application server is designed to pull everything else together, including Microsoft .NET-based code. That distinction resonates with customers: "BEA was not tied to any one technology stack," says TFS's Coyne.
But there's been speculation recently that BEA will be acquired, perhaps by Oraclea year ago, CEO Larry Ellison publicly said he was interested in buying the companyor Hewlett-Packard, one of BEA's closest partners. BEA executives shrug off the acquisition chatter. "People really have been asking that for five years," says Eric Stahl, the company's director of product marketing.
Meanwhile, other application-server customers already subscribe to the "one-throat-to-choke" philosophy. Highmark Life & Casualty, an insurance company based in Pittsburgh, found the biggest advantage of IBM's WebSphere was that it had everything to build and run online applications, including an integrated development environment, says CIO Matt Piroch. "That's worked very, very well for us," he says. "It's allowed for a lot of consistency in our development group."
That may be biting off more than some want to chew. "IBM's tools work very nicely togetherbut if you buy WebSphere, you have to buy all of WebSphere," says Tim Brown, systems architect with AirNet Systems, an air transportation company in Columbus, Ohio, that uses BEA WebLogic to run its shipment-tracking site.
Regardless of vendor, though, any Java application server is a complex nut to crack for the uninitiated. "These products are sort of overwhelming," says ONR's Campbell. He strongly recommends taking vendor-specific training classes before rolling out an application server: "You need someone to explain this to you."