Crunch Time for Application Servers

Now, in the next step in the evolutionary process, application platforms are beginning to assume a role traditionally played by the OS as a mechanism for deploying enterprise applications. Platform vendors are building on the architecture of their application-server products to add new pieces of functionalty,the kind previously found in higher-level products that ran on top of the application server layer. It's yet another example of an age-old process within the industry: As enterprise software continues to evolve, its features and functionality become commoditized. The logical next step is for those features to be driven back into the platform.

Previously, an application server provided only reusable back-end services; today's new application platforms provide considerably more. Depending on the product, you can expect to find frameworks for commerce, portals and integration; standalone modules for personalization and portals; and sophisticated development tools to speed application- development and deployment. Factor into the equation the rate at which these platforms are evolving, and the selection of an application platform becomes far more complicated.

Application-platform vendors continue to add features and capabilities, enriching the platform layers and broadening their appeal. Among the categories of new capabilities and modules that are appearing in application platforms are frameworks, server modules and development tools.

Frameworks

id
unit-1659132512259
type
Sponsored post

Frameworks provide libraries of functionality and associated design patterns that offer much of the functionality that a typical enterprise application might require,thereby reducing application-development time significantly. Most platforms also provide sample applications a development team can use as a starting point. Among the frameworks commonly available within application platforms are frameworks for integration, commerce and portals.

Integration frameworks: These provide a method to communicate with services and applications that reside outside of the platform. Because the integration framework is part of the platform, any code running within the platform should be able to consistently communicate with remote applications. Organizations should be aware, however, that while this consistency in approach can lead to greater programming efficiency, it can also mean being locked into that application platform, as code written to custom frameworks may not be portable across platforms.

The J2EE Connector Architecture (JCA) is an example of a common integration framework. Included as part of the J2EE 1.3 specification, JCA provides a standard means of communicating with a variety of third-party applications, including packages such as ERP and CRM systems. The overriding benefit of this approach is that once an adapter is written, it can be re-used by any application, across any Java-based application platform.

Most platform vendors now also provide a framework to both host and consume Web-services-enabled applications. As Web services are cross-platform by nature, this creates a bridge that allows J2EE applications and .NET applications to communicate. Web services also provide underlying support for other frameworks, such as commerce and portals.

Commerce frameworks: Much of the functionality that previously existed only in high-end, expensive commerce packages is now included out of the box with some platform products. This trend is particularly evident in the B2C space, where common pieces of functionality, such as catalogs, shopping carts, and shipping and tax calculators, are often included as part of an application platform's e-commerce framework.

Portal frameworks: Portal servers are receiving considerable attention as a means of aggregating access to applications, service, content and people under a single, ubiquitous, Web-based interface. While some platform vendors are offering support for portal creation through the use of bundled standalone servers (see discussion on server modules below), others are including frameworks that can be used either by in-house developers or by third-party ISVs to deliver a finished portal product. For many organizations, base-level functionality is often sufficient to get a simple portal up and running very quickly.

Server Modules

Another way application platforms add functionality is through the use of add-on server modules. Server modules are standalone products that run atop the platform layer and can be leveraged across all applications, whether developed in-house or purchased from third-party vendors. Ideally, server modules are also developed via an extensible application programming interface (API), in the event that the buying organization seeks to use a plug-in product to provide this functionality.

Among the server modules commonly available are modules for personalization and portal fun- ctionality.

Personalization server modules: Personalization servers allow an organization to tailor its offerings to better meet the individual needs and preferences of its end users. Among the most significant benefits of personalization servers is the ability to maintain a consistent interface to end users across multiple touch-point applications, which may include portal services, commerce services, marketing automation and CRM systems. That consistency eliminates redundancy for users and also helps to maintain brand awareness and individualized service.

Portals: As an alternative to providing a portal framework, some platform vendors are providing full portal server functionality. As noted above, extensible APIs that allow the buying organization to introduce a third-party portal server are an important feature, and should be verified when evaluating vendors' offerings.

Development Tools

Most application-platform vendors have chosen to include development tools with their server licenses. These tools may include integrated development environments (IDEs), packaging and deployment tools, and data modeling components.

IDEs: One advantage of a bundled IDE is that the server frameworks can be integrated into a graphical development tool, appearing as components on a toolbar. The resultant ease of use can greatly increase developer productivity.

Packaging and deployment tools: Packaging tools allow for the quick creation of archives that encapsulate application code and resources into a single file, which can be published to a platform server or servers. The leading products provide the ability to deploy archives in real time, without a server restart, and allow an administrator to quickly roll back changes if an error condition is observed.

Data modeling tools: Data modeling tools provide the ability to introspect data sources, including relational databases, Web services, JCA adapters and Enterprise JavaBeans. Such tools allow developers to view the results of application queries in real time, as they are creating code.

What's Ahead?

Looking at the current offerings, the trend is clear: Any piece of functionality that is not highly specialized or vertically oriented will be fair game for inclusion in the platform layer. In the near term, this process of natural selection will result in platform vendors' continuing to augment the feature sets of their products with additional portal functionality and B2B commerce functionality, including procurement and integration. The logical migration path is for a vendor platform to provide standalone server modules, which are eventually integrated into a unified or framework-based approach to delivering functionality. In particular, the combination of JCA, Web services and .NET represent the potential for application platforms to become the integration hub for the next generation of enterprise architectures, by hosting both the client and server components of those frameworks.

Looking to the future, as enterprise software is deployed to the next generation of application platforms, Doculabs expects that the underlying OS will become much less relevant and more transparent from a developer's perspective. Code will no longer be written to a specific OS, but will be written to platform specifications, bringing with it new levels of interoperability the industry is sorely lacking. And while the traditional server OS has yet to disappear, it has most assuredly begun to fade into the background as a differentiator for buying organizations. n

David Homan is a principal analyst, Surya Kalavagunta is an analyst and Linda Andrews is a senior editor with Doculabs, an independent research and consulting firm that helps organizations plan for, select and optimize emerging technologies. Reach them at (312-433-7793, www.doculabs.com.