Over the course of the last year, we've all read many articles on Web
services and the various standards forming to address the different
levels of the Web services stack (SOAP, UDDI, WSDL, ebXML). The stock
quote example is becoming as recognized as "Hello World" from our
introductory programming books. From responses to a recent poll in an
online magazine, it is evident that there is still confusion over
what Web services actually are and how they can be used effectively
by organizations. One of the main reasons for this is that Web
services are only as good as the service they offer, and that the
benefits of Web services often depend on the domain within which they
are applied.
This is understandable when you consider that at a basic level Web
services are all about exposing, publishing, and invoking a
programmatic interface to a business application service. A service
that lists addresses and ratings of restaurants within a given radius
may be very useful for a travel portal, but it is not useful for
telecommunication's IT department building a contract management
application for managing service level agreements across network
providers. These examples also highlight the different types of
service interactions that may be involved in a Web services
environment, from intraenterprise and interenterprise to
business-to-consumer, and from simple to complex, such as services
that exist as part of an entire business process (e.g., contract
negotiation).
In this article we will examine how Web services can be used in the
domain of content management.
Why content management? Applications of content management illustrate
the various types and usage model benefits associated with the new
Web services model. We have heard much discussion around the
application server market in relation to Web services (the new battle
after J2EE), but we have heard little about the other components of
the e-business stack, which are often at the heart of applications
business logic.
Before we go into the details of Web services and content management,
let's recap briefly some of the core concepts of the Web services
model and the role of content and content management in e-business
applications.
Content-Rich Applications
So what does content have to do with e-business? Quite a lot when you
think about it - much of e-business is based around the exchange of
information. How could you buy or sell a product without up-to-date
product information or a catalog?
The increasing importance of content management as a critical
e-business infrastructure component has been driven by the explosive
growth in the use of the Internet over the last few years. Until
recently, organizations have mainly been concerned with managing
their structured data, and gave little thought to how unstructured
content assets were managed and controlled. As the use of the
Internet increased, and Web sites both internal and external grew in
complexity and size, streamlining the aggregation, creation,
management, and distribution of content assets became critical for
organizations to effectively capitalize on the Internet and move
their businesses online.
Today, a Web content management application is vital for
organizations moving online, but with the evolution of e-business
systems, the management of all content assets becomes crucial. The
word content itself is often misleading, as content represents core
business assets from contracts and catalogs to product information,
RFPs, and even the code that makes a Web site function.
Similar to the last decade in the data-centric world, where the RDBMS
started out managing data and evolved to managing higher level chains
of business applications, now content-centric applications such as
contract management, RFP management, SOP management, catalog
management, and so forth, have emerged. These applications are
indispensable to companies as they fully integrate and automate their
business processes.
An enterprise e-business infrastructure is built from a stack of
best-of-breed products such as enterprise information portals,
application servers, databases, and enterprise applications (ERP,
CRM). The content platform resides as part of a full ecosystem of
products. As with other business applications, these content
applications are required to seamlessly integrate with both internal
and external applications, be delivered through multiple interfaces
(portals, Web sites), and, more interestingly, are often based around
rich content, which merges content and data to produce a unified view
of information. For example, consider a contract, which combines
customer information, pricing information, and legal text, or a
product catalog, which combines all types of content assets from
images and data specifications to SKUs and pricing
information.
Now, let's take a closer look at Web services©
The Next Stage in e-Business Evolution
Web services represent an important next step in how we use the
Internet, and may revolutionize not only how we think about
application development and deployment, but how we do
business.
To the extent of creating many new business models,
we have seen the impact on every industry of the move from mainframe to client/server
to the Internet. However, until recently the use of the Internet was
largely concerned with human-based interaction through browsers. The
back-end integration between business systems involved a lot of work,
never mind considering when this integration occurs across
enterprises. There are two reasons for this. Applications are
generally developed in isolation from how they need to interact with
other applications and systems. And integration generally involves a
lot of "hard wiring," a busload of system integrators, and plenty of
money.
In today's economy, companies are facing conflicting requirements - a
shortage of IT budget but a pressing need to automate their business
processes to remain competitive and drive down costs. Due to the
ever-changing nature of business, partnerships, and technology,
business systems need to be agile and adaptable. They need to
integrate with each other across the extended enterprise regardless
of the language they are written in, the platform they run on, and
where they run.
In the next stage in the evolution of
e-business systems, applications will be built from a set of service
components that can be published, discovered, combined, and consumed
over the Internet. The eventual goal is applications that can be
dynamically assembled according to changing business needs, and
personalized based on device and user access. In essence, services
are self-contained building blocks that can act in a plug-and-play
manner with other services to provide business functions that run on
any networked platform.
From a technology and investment standpoint, this next stage is an
evolution, not a revolution. In today's economy, companies are loath
to discard existing investments in their legacy business
systems.
The Web services model represents a merging of the
distributed systems model with Internet computing. Applications can now be built,
and dynamically combined, in a loosely coupled manner using Web
services in a distributed networked environment. Web services expose
self-contained business functions that are the result of an evolution
in programming and application development from object-oriented and
component-based models to a services-based model. The move to a
service model is distinguished from the traditional component model
by the addition of the notion of a service contract. The service
contract is what enables complete separation of how and where the
service is invoked from how the service is implemented. A service
becomes a Web service when it can be discovered and invoked over the
Internet. Discovery is based on it being published - in the most
basic case in a manual, but most likely in a service registry (e.g.,
UDDI).
Currently, a Web services contract is defined using WSDL; published
in a service registry (UDDI); and invoked over HTTP using SOAP, with
XML being the neutral glue. Services can be implemented in any
programming language (EJBs, Java Classes, COM, COBOL, C) and can be
deployed on any platform (Windows, UNIX, mainframe) as long as it is
network accessible.
The real power of services can be realized by the ability to chain
them together to build applications that fulfill complex business
processes without the need for hundreds of programmers, but rather by
business users, or even better dynamically, which is the ultimate
goal.
Usage Scenarios
As we have seen, content management is a broad area that deals with
the aggregation, creation, management, and distribution of content
assets. Content flows across systems and enterprise boundaries (see
Figure 1).
The various applications of content management involve the
combination of business logic and content. There are four main roles
for using Web services with content management:
- Exposing and publishing content management services as
Web services
- Invoking Web services as part of content
management applications
- Extending business processes intra- and
interenterprise
- Managing Web services
For each of these roles, Web services may be accessed at multiple
levels, either within an enterprise, across the extended enterprise
with partners and suppliers, or as generally accessible Web services
over the Internet. Generally, most enterprises will not freely
publish their core content management services over the Internet
unless this is their actual business model, but will leverage
services to rapidly integrate their applications across enterprise
systems, and extend functionality to their extended enterprise
(customers, partners, suppliers) where appropriate.
As Web services become more the norm for software
deployment and services (e.g., pay-per-usage models), corporations
will begin to leverage external services for components of their
applications.
Exposing Content Management Components
Business logic encapsulated in core components can be exposed as Web
services to provide access through other applications (portals,
enterprise applications, and external systems) and to rapidly build
new applications by leveraging core services of the content
management system - reducing overall costs and deployment time for
organizations.
Web services will become a natural mechanism for integrating content
management across systems, e.g., CRM, ERP, and portals. Vendors of
these products will generally provide the integrations, which
are key across the e-business stack, and companies nowadays
are pushing for tighter, more complete integration out of
the box.
The portal is one very good example. The enterprise portal is
becoming the WebTop of the enterprise. Companies no longer want to
deal with multiple application front-end interfaces for their
employees. Content management is central to a portal in two
respects:
- Enabling employees, partners, and customers to participate in
content management applications through one seamless interface
- Powering portals with accurate content
Exposing content management components as services enables portal
builders to rapidly include content management capabilities in the
various enterprise portals.
Documentum, for example, has already released a set of services for
portals (eContent services or portlets) that allow for
core content management components such as inbox for workflow,
subscriptions, and browse to be easily incorporated into any
portal.
Exposing these portlets as Web services allows for
more intelligence within the portal. Instead of having multiple disconnected
components, the components can interact through the published
interface. For example, for a customer service portal, a sales
support person may look up a customer name through a portlet into the
CRM system, while the browse portlet to the content management system
automatically updates the contract view to show contracts just for
that customer.
Developer and application builders will also leverage core services
of the content management platform to build content management
applications more rapidly, and will develop their own applications as
services that their customers can readily use within the enterprise.
For example, a number of companies develop content management- based
applications using Documentum as the foundation, e.g. contract and
catalog management systems. These vendors will use the core services
of the platform to rapidly build and get their products and ser-vices
to market faster. They may want to expose their applications
as higher level services to include, for
example, contract management as part of an
e-procurement system, or for market site providers to easily add
catalog management and aggregation for their suppliers.
Corporations will also build Web services to expose their in-house
applications both within the enterprise and to external partners.
Exposing services will be done using standard interfaces (e.g.,
RossettaNet PIPs) or by agreed-upon interfaces between partners. One
of the PIPS (2A9) is a good example of a content-based service that
would be exposed by a corporation to their partners. This PIP is used
in the semi-conductor industry and allows for companies to search
across partners for information on available components that meet
certain criteria. Another example might be a financial services
company that would like to provide a new offering to some of its
value-added customers by providing access from their portal to
certain subscribed research reports.
Invoking Web Services
Content management applications can also invoke Web services to
extend functionality. For example, Documentum has many third-party
technology providers who provide complimentary technology, e.g.,
translation software, transformation technology. These third parties
will be able to expose and publish their components as services so
they can be easily plugged into customers' systems either run
remotely by the third party or installed at the customer's site. One
example could be transformation. Dif-ferent third parties might offer
services for XML to PDF transformation, GIF to JPEG, or even more
complex transformation services such as from one catalog schema to
another, e.g., RosettaNet to XCBL. Customers could either search for
companies that offer these services using a service registry or they
could tell the system that they would like this particular document
transformed from X to Y and it would automatically find a service
that offers this and invoke the transformation.
Extending Business Processes
The business process/workflow around content can be extended to
support external sources, e.g., negotiation of contracts, as is
common with many applications, and participate in workflow spanning
systems and enterprises (see Figure 3).
Managing Web Services
Earlier, we looked at examples of how services can benefit the entire
eco-system of content management, but there is also an entire area
that deals with how services are created, managed, and
deployed.
Web content management has been one of the main
applications that has
allowed organizations to effectively manage all the content and code
that supports their Web site infrastructure. As we now move to the
next generation of the Internet, from using it primarily as a
mechanism for human interaction to one of machine-to-machine or
system-to-system interaction, there will be a need for companies
to effectively create, manage, and deploy services. Web content
management systems will evolve to fill this need, providing for the
versioning and management of services, and the deployment of these
service descriptors to registries
so they can be accessed.
Content Management Platform Requirements
A scalable, open content management platform is required as the
foundation of content-rich e-business applications that enable the
successful and rapid integration of content across the entire
information chain. The content management platform you select must
offer a comprehensive set of services to deal with all aspects of
managing your content assets on a global scale. More importantly,
this platform must embrace and support the core technology
foundations of the next-generation Internet (portals, J2EE, .NET, Web
services, XML), allowing rapid development and deployment and easy
integration with all business applications.
How Long Will It Take?
We may all have thought that the development of the Internet and the
move to the browser happened extremely quickly, but the Web services
model is likely to be adopted at an even more rapid pace. There are a
number of reasons for this:
- All major platform and infrastructure providers are quickly adding
support for the Web services model into their platform offerings.
- Web services are not a revolution but an evolution of
investments already made.
- They are simple in concept and leverage existing
implementations - the same reasons the Internet was so popular
initially.
- They will solve real problems of interoperability across systems
and integration of systems components, allowing rapid application
development and, eventually, dynamic application development.
- They will offer a substantial competitive advantage through
the realization of operational efficiencies from automation across
the extended enterprise and the reduction of the huge integration
costs incurred by the current model of application integration. These
benefits alone will be very appealing to organizations in the current
economic climate.
Apart from the benefits of Web services already described, they also
offer other potential opportunities, for example:
- New business models for software delivery: Pay-per-usage
models, pay-per-service, and realization of hosted business models
- Unparalleled scalability using the Internet as the network
and all connected devices as the computing power (assuming network
bandwidth issues resolved)
Not everything will be exposed as Web services, but Web services do
offer a large number of benefits to content management applications.
There is still much work to do and obviously the more that is
available as Web services, the more value a company is going to get
from this model.
Author Bio:
Una Kearns, XML architect at Documentum, leads the development of
Documentum's next-generation XML solutions and is responsible for the
company's overall XML product strategy and architecture. She is a
member of the OASIS board of directors and XML.ORG advisory
committee, and is the Documentum representative to UDDI.org and the
W3C. She is also an active participant and
spokesperson in industry events and conferences. questions@documentum.com
All Rights Reserved
Copyright © 2004 SYS-CON Media, Inc.
E-mail:
info@sys-con.com