Enterprise applications

The Internet is the main infrastructure of the information society. As a large scale public network, it allows for an open and dynamic business environment, where information and communication technologies enable new and innovative ways to work and create value.

Electronic business

Enterprise applications are the software part of information systems for electronic business on the Internet. They have many users, must deal with large volumes of complex data, and use complex and changeable business rules to process it. They also need to be integrated with other systems typically built for distinct purposes, by other organizations and using different technologies. All of this requires advanced tools and qualified people. Building enterprise applications is a significant technical challenge.

One of the main challenges of enterprise applications is change: customers change, businesses change and their information systems must also change. This means that applications need to be more agile, i.e., they need to more easily adapt to changes in the business requirements. Programming methodologies and techniques are important, but the underlying technology must also be an enabler and not an obstacle. Web Services (WS) and Service-Oriented Architectures (SOA) are currently being proposed to address this need for agility, at the technology and architecture levels, respectively. Services are the unit of structure in enterprise applications with the goal of maximizing flexibility, reuse and interoperability.

Web Services in action

The following slideshow illustrates the interaction process between a client and a service.

Web Services in action   Web Services in action slideshow

Web Services platform

A Web Services platform is an implementation of a set of Web Services standards that enable the creation and execution of Web Service instances.

The core standards are XML, SOAP and WSDL; and are broadly available in most implementations.

There are several on-going standardization processes for Web Services extension technologies. Each standard is usually sponsored by companies, like Microsoft, IBM, Sun Microsystems and Oracle, then is submitted to a standards organization, like W3C, OASIS, IETF, WS-I or another, where there it is further discussed and finalized.

To keep the platform design coherent, there are several core technical guidelines that standards and implementations should abide to:

WS-Map

WS-Map is a contribution to Web Services developers and researchers, to help them find their way around so many standards. WS-Map is a visual index of standards categories that aims to give a broad and vendor-independent view. WS-Map is not an attempt to describe the standards in detail.
WS-Map

Inside each category, the standards are shortly described, referenced by the web address of their site, and cited in BibTeX format so they can be easily used in papers (using a tool like JabRef, for instance). In each category page there is a status table summarizing the information. A standard can be in one of four possible states: proposal (not yet submitted by its sponsors), draft (submitted to a standards organization but not finalized), standard (finalized), or deprecated (use no longer recommended, abandoned in favor of another standard).

The WS-Map graphical layout contains some informal meaning about the platform's structure. Each category is represented by a box with rounded corners. The data representation and interoperability boxes are underneath all the other boxes, as they encompass all the other ones. The remaining layout is built bottom-up. At the top stand the business process standards, because they are the ultimate goal of the platform. The management box is on the side, because those standards are orthogonal to the other ones.

More information on Web Services

Beyond WS-Map, you can find more information about Web Services in the following links:


References

BibTeX entries

[Booth04]
Booth, D.; Haas, H. & McCabe, F., Web Services Architecture, W3C, 2004
http://www.w3.org/TR/2004/NOTE-ws-arch-20040211/

[Cabrera04]
Cabrera, L.F.; Kurt, C. & Box, D., An Introduction to the Web Services Architecture and Its Specifications, Version 2.0, Microsoft Developer's Network, 2004
http://msdn.microsoft.com/webservices/default.aspx?pull=/library/enus/dnwebsrv/html/introwsa.asp

[Kreger03]
Kreger, H., Fulfilling the Web services promise, Communications of the ACM, ACM Press, 2003, 46, 29-ff

[Whali05]
Wahli; Kjaer; Robertson; Satoh; Schneider; Szczeponik & Whyley, WebSphere Version 6 - Web Services Handbook - Development and Deployment, IBM, 2005

[Wilkes05]
Wilkes, L., The Web Services Protocol Stack, CBDI, 2005
http://roadmap.cbdiforum.com/reports/protocols/