Thanks to open standards, the market for application servers is a lot friendlier than it used to be
- By S. Michael Gallagher
- Aug 04, 2006
General-purpose application servers are the building blocks that make the current preferred paradigm for enterprise application development possible'connecting a Web browser-based client with enterprise databases and other business logic on the back end.
Most of the major packaged enterprise applications deployed today, from enterprise resource planning to human resource management, are built on the backs of application servers.
But despite the success of application server technology (and Java app servers in particular), they have suffered from a steep learning curve for developers and have come with management and interoperability problems.
Variations in the versions of standards supported by application server vendors have made it more difficult to easily move software built on one platform to another.
And the structural requirements for building applications often meant that developers spent nearly as much time setting up the framework for an application as they did writing code that actually did something.
Some of that has changed. Thanks to a new wave of open standards and the continuing pressure from customers and the open-source community, today's application server market is a much friendlier place than it was a few years ago.Picket fences
Where there were once solid walls hemming developers into a single set of products, the barriers between many application server vendors' products are starting to seem more like picket fences.
There's better interoperability between different vendors' wares because of standards like the WS-* Web services specifications. And it's getting easier to build and deploy applications on many application servers because of new and improved Java Enterprise Edition standards.
On top of that, the increasing interest in dynamic programming languages for Web applications'such as PHP, Python and Ruby'is driving app server vendors to open the doors to more ways to do development.
Another major factor in the continuing evolution of app servers is the emergence of the service-oriented architecture and the demand for app servers to provide tools that allow people other than developers to assemble applications from Web services and other bits of application logic to create workflows and business processes.Focal point
As application servers provide a route for developers to bring legacy systems into the world of Web services and SOA, they are increasingly becoming the focal point of business process management and agency integration efforts.
'Where the rubber hits the road [for application servers] now is major initiatives and trends around SOA,' said Drew Ladner, general manager of the government group for JBoss of Atlanta, a division of Red Hat.
'Everybody's talking SOA; the government is excited about it because it's going to help them do more with less, take advantage of existing services, and data that may be out there and take advantage of existing code,' Ladner said.
Service-oriented architectures also offer the opportunity for agencies to use the investment in business process modeling driven by enterprise architecture requirements to actually drive some of the business logic of applications.New possibilities
Increasingly, model-driven development tools, rules languages like JBoss' Drools Rules Language and implementations of the Business Process Execution Language for Web Services, are making it possible for business analysts to assemble core enterprise services into virtual workflows, or even long-running processes that perform queries and transactions across multiple organizations.
Oracle Corp.'s Fusion middleware environment, for example, includes an ESB orchestration engine that can assemble a number of processes, 'including human interaction'in other words, workflow,' said Ashish Mohindroo, senior product director at Oracle.
'It even allows you to monitor processes in real time and improve them based on their performance,' he added.
Another way in which Web services and SOA components are changing the way developers look at application servers is the way they can be turned into 'Web 2.0'-style applications.
While application servers were originally intended to separate the business logic of enterprise applications, technologies like AJAX dynamic web pages are making it much easier for developers to build interactive Web applications based on Web services and other server business logic.
But there's just one problem with SOA today. 'The only thing we know with certainty about SOA is that [the standards are] going to change,' Ladner said.
Managing the cost of dealing with the rapid rate of change in those standards is one of the reasons why open-source platforms are becoming increasingly popular.
Increasingly, the wide availability of open-source application servers, such JBoss, the Apache Software Foundation's Tomcat and Geronimo, and ObjectWeb's JOnAS and Enhydra projects, has made it easier for organizations to experiment with and deploy application server technologies without making a major investment in software licenses and extend those platforms to meet their own needs.Alphabet soup
JBoss, in particular, has emerged as a challenger to even the leading commercially licensed application server vendors, with its professional (paid) support and wide acceptance by major technology vendors (like Hewlett Packard). And it is among the first to implement new approaches to app server development that are making it easier to build and deploy software for BPM, SOA and the ever-growing alphabet soup of other architectures and standards.
In just a year of officially having a government presence, JBoss' application server has seen significant adoption in DOD and civilian agencies, according to Ladner.
Prominent examples are the Navy's Sea Warrior Portal (Phase 2 of the Navy Knowledge Online portal) and the Army Knowledge Online portal, both which run on top of JBoss' application server.
The popularity of open-source application servers for prototyping applications has led most of the major commercial app server vendors to offer free downloadable 'community' or 'developer' versions of their products. IBM offers a version of WebSphere built on Apache's Geronimo and Tomcat, among other open-source components.GlassFish
Oracle, BEA Systems Inc. of San Jose, Calif., and Sun Microsystems Inc. all offer free versions of their current application servers. Sun has open-sourced the latest version of its Java System Application Server (Version 9) as part of a project code-named 'GlassFish.' Oracle has also donated its TopLink persistence code for Java EE to the GlassFish project.
But open-source application servers' popularity isn't all based on cost of acquisition. Part of the attraction of open standards in the app server space is that they help eliminate what former Sun CEO Scott McNealy called 'the cost of exit'.
'We help put [government agencies] back in charge of their procurement,' Ladner said. 'We don't lock them in with proprietary technical extensions. Once an agency has spent millions of dollars, it's very difficult to, even if it makes good business sense, it doesn't play well in the agency and it's not going to play well on Capitol Hill. So helping agencies avoid proprietary lock-in is a huge driver of adoption of open source in government.'
As avoiding that sort of lock-in becomes ingrained in procurement policy'as it has at DOD'open-source application servers only will become more attractive.
Because they can be tested and adopted without a traditional procurement cycle, and vendors can be brought in only when support is needed, such open-source solutions can help agencies be more innovative and react more quickly to requirements.
And that's something that proprietary vendors will have a hard time overcoming by just giving away free developer versions of their own products.S. Michael Gallagher is an independent technology consultant based in Baltimore.