Level: Introductory Arnaud Le Hors (lehors@us.ibm.com), On Demand Operating Environment Standards, IBM Angel Luis Diaz (aldiaz@us.ibm.com), Director, On Demand Operating Environment Technology , IBM
15 Feb 2005 This article describes the different layers and components that constitute the IBM® On Demand Operating Environment, including how they relate to each other and how the operating environment builds on open standards for an increased business value proposition. It explains how SOA and Web Services fit into the picture and how profiles can help you -- vendors and customers alike -- make sense out of the ever-increasing number of standards that come into play.
In a climate of constant change, managing business and IT systems can be challenging. Companies must remain flexible, resilient, and secure, and must be ready to respond quickly to the opportunities that arise from customers, partners, and suppliers.
The IBM On Demand Operating Environment is a strong foundation from which to manage change. It provides business and IT environments with an integrated infrastructure that's tightly aligned with business goals and processes.
Based upon open technology standards that enable interoperability between traditionally siloed applications, the On Demand Operating Environment helps businesses leverage their technology investments for greater business process efficiency and better responsiveness to change.
Open standards are commonly agreed-upon specifications that help ensure that different technologies can work together. The exact process that is followed to produce a standard varies greatly depending on the type of standard and the standards organization involved. From the IBM perspective, specifications for Web services-related standards are typically at one of three stages of development:
- Published on IBM developerWorks
- In development by standards-development organizations
- Declared standards by standards organizations
For example:
- SOAP 1.1 was first published on IBM developerWorks.
- It then underwent work at W3C.
- This ultimately resulted in the SOAP 1.2 Recommendation (see Resources).
These standards basically move through a development pipeline, as shown in Figure 1.
Figure 1. Standards development pipeline
The landscape of open standards, or approved specifications, can be difficult to navigate. Collections of standards, or profiles, are easier to comprehend and can assist in faster implementations and smoother operations.
The climate: Constant change
Both business and technology are changing rapidly, and changes in one can cause changes in the other. For example, as companies alter business processes to respond to shifting demands from customers, partners, and suppliers, IT systems must support those changes in ways that were previously unimaginable. Conversely, as new technologies become available and are implemented, companies must ensure that their business processes are nimble enough to take full advantage of the efficiencies and opportunities that these new technologies present. A company that does so is poised for greater growth: It becomes an On Demand Business.
An On Demand Business is an enterprise whose business processes -- integrated end-to-end across the company and with key partners, suppliers, and customers -- can respond with flexibility and speed to any customer demand, market opportunity, or external threat.
To become an On Demand Business, an enterprise should consider implementing three processes, each of which can be completed incrementally. These are:
- Componentize business into processes, or services
- Determine how services can be reorganized to best meet business needs
- Employ standards, and in particular interoperability standards, for more effective service reorganization
Interoperability standards facilitate the integration of both siloed and legacy applications enabling them to interoperate within and beyond the enterprise. So, for example, an automobile parts manufacturer can participate in the supply chain activities of an automaker, regardless of the applications it's running.
The On Demand Operating Environment and its foundation in standards
On Demand Business is based upon an On Demand Operating Environment, which is in turn founded on open standards. An On Demand Operating Environment is an integrated infrastructure, aligned with business goals and processes.
The On Demand Operating Environment architecture is based on the concept of a service-oriented architecture (SOA). An SOA is an overall application and IT blueprint that takes everyday business applications and breaks them down into individual business functions and processes, called services. An enterprise can reuse and recombine these services to support different activities, within and beyond the enterprise. A service might be a business function, such as check customer credit, or it might be a system capability, such as log in user. With an SOA, you can build, deploy, and integrate these components independent of applications and the computing platforms on which they run.
This integration can take place without standard ways for the services to interact. In that case, you then need to custom-code the connections -- and if the ways in which services interact change, you must then re-code the connections. SOAs can employ a number of technologies. The most widely-embraced technology -- Web services based on open standards -- eliminates the need for recoding.
Web services are self-contained, modular applications that are able to work together without relying on custom-coded connections, because they are built on open standards. They share a common ubiquitous Web protocol (HTTP), so they can communicate with each other despite the fact that they speak different languages. For example, Web services can access legacy or proprietary systems -- such as those using Microsoft® .NET -- with Extensible Markup Language (XML) standards.
The On Demand Operating Environment consists of three main elements (layers):
- Application services
- Infrastructure services
- The enterprise service bus
The enterprise service bus is a middleware platform through which services can execute, communicate, and be defined and deployed. Standards play an increasingly important role in the On Demand Operating Environment, on both the application and infrastructure layers (see Figure 2). Eventually, nearly every segment and sub-segment of the On Demand Operating Environment will include interoperability standards.
Figure 2. Standards exist in every layer of the On Demand Operating Environment
Standards within the layers of the On Demand Operating Environment
User access services and user interaction services are part of the application services layer. They allow multiple types of devices, modes of interaction, and connection topologies to work together. User access and interaction services are supported by standards like VoiceXML, which provides a standard way of defining voice-based interactions, and Web services for remote portlets (WSRP), which offers a single interface for lifecycle and interaction.
Common services are containers that host integration and business services. They help simplify interactions with other integration and infrastructure services. They can be used by several other services and can be acquired, customized, or created. Some examples include personalization, utility, and reporting services supported by standards such as JSR-47, which defines a standard logging API for error and trace logs.
Finally, information management services at the application service level provide a uniform means of representing, accessing, maintaining, managing, analyzing, and integrating data from heterogeneous sources. This is where you'll find SQL, the well-known and dominant database query language standard, as well as XQuery. XQuery can be described as the "SQL of XML"; it flexibly queries XML documents and extracts data from them, providing a bridge between the Internet world and the database world.
The infrastructure services layer is primarily composed of resource virtualization services, which help enable an indirect relationship between an application's use of physical resources and the actual allocation of those resources. Resource virtualization services are supported by standards like Web services distributed management (WSDM), which define an architecture and a set of XML vocabularies that manage Web services and distributed resources. These services are used by the service-level automation and orchestration components that help enable system resources to self-configure, self-heal, self-optimize, and self-protect. Autonomic managers and resource managers provide enabling services. These are supported by standards like the Open Grid Services Architecture (OGSA), which describes the functions and relationships of enabling services.
Service-oriented architecture/Web services standards
The technologies found in the Web services platform help to enable sophisticated, cross-platform, inter-enterprise applications. This layer consists of four key components:
- Web services base protocol
- Web services description
- Common Web services
- Policies
Web services profiles provide a different view of the platform and are not considered an architectural component of it; this is addressed in Profiles: Logical groupings of standards.
Web services base protocol standards use XML to define protocols in a decentralized, distributed environment. This primarily includes Simple Object Access Protocol (SOAP), which enables a program that runs on one kind of operating system to interact with a program that runs on the same or another kind of operating system. SOAP uses HTTP and XML to do this. Message Transmission Optimization Mechanism (MTOM) and XML-binary Optimized Packaging (XOP) describe a way to more efficiently exchange certain types of data with SOAP.
Web services description standards define XML grammars for describing a Web service interface and for invoking the operations it supports. These include Web Services Description Language (WSDL) and WS-Addressing, as well as other standard technologies, such as WS-Resource Properties, WS-Security, WS-Policy, BPEL4WS, and WS-ReliableMessaging.
Common Web services bring additional run-time services to the base Web services platform, and isolate Web services applications from some implementation details. For example, the WS-Notification specification isolates Web services applications that need to send messages or notifications from the specific messaging application that's deployed in the environment. If WS-Notification were not used, then each Web services implementation would have to interface directly with the messaging system installed -- through JMS for Java™ messaging software, or C for Microsoft® Messaging Queue. Other examples of standards in the common Web services layer include WS-MetadataExchange, WS-Coordination, WS-AtomicTransaction, and WS-ServiceGroup.
Web services policies include policy description documents based on common, standardized policy grammars. You can instantiate and reuse policies to promote both interoperability and portability. The Web services platform uses policies to govern the handling of a service; policies also govern the applications on the Web services platforms, such as WS-SecurityPolicy. WS-Policy defines a framework and XML schema for describing policy. Policies can accompany a service during deployment into an environment. Similarly, execution environments can process and consult policy descriptions while they are running. An example of policy definition is the WS-Security standard policy grammar for security. Similar grammars will emerge for management.
Technology platform and XML standards
While Web services standards rely on a wide range of technologies and standards, such as HTTP for SOAP, they are primarily based on XML. XML standards include a set of specifications that provide a common way of representing data so that it can be exchanged between two system components regardless of how it is stored internally. This starts with the XML 1.0 standard, along with its companion Namespaces in XML, which defines a standard way of representing data and serves as the basis for all other XML and Web services standards. XML 1.0 works with other standards -- such as W3C XML Schema -- to define a standard way of adding data type and structure to XML.
While you can design components to manipulate XML data directly, XML is most often used with legacy software associated with some form of mediation that transforms data from XML to its legacy format, and vice versa, as it flows into and out of the system.
Profiles: Logical groupings of standards
In the complicated arena of standards, one thing is crystal clear: Businesses need a way to use them effectively. Because the sheer volume of standards being created can result in confusion, businesses are increasingly adopting profiles -- logical groupings of standards appropriate to their specific business domain.
Profiles are composed of standards that commonly work together to extend business processes between applications, both internally and externally. For example, a small healthcare provider can employ a profile composed of standards that govern security. If a larger healthcare organization also adopts the same profile, their applications can operate together, thereby extending their value chain.
Web services profiles, such as those created by the Web Services Interoperability Organization (WS-I), define a list of Web services standards that a platform must support to increase interoperability between different platforms. These profiles also provide instruction regarding how the standards are used together.
Similarly, Java profiles -- such as: Java 2, Enterprise Edition (J2EE); Java 2, Mobile Edition (J2ME); and Java 2, Standard Edition (J2SE) -- virtually guarantee application portability by combining the Java language and functions that certain types of Java-enabled applications need.
IBM: A strong tradition of supporting standards
IBM has an unparalleled track record as an industry champion of open standards. The company founded or cofounded most of the industry's leading open-standards organizations, and maintains extensive participation in more than 50 working groups and technical committees for Web services alone. In conjunction with other industry leaders, IBM has propelled every major Web services initiative, and is responsible for the first Web services gateway as well as the first integrated private Universal Description, Discovery and Integration (UDDI) directory. In support of these standards, IBM has made significant contributions to the open source community with innovative technologies in the area of XML parsing with Xerces, XSL transformation with Xalan, SOAP with Apache SOAP and Axis, and development tools like the Eclipse framework. More recently, it contributed IBM Cloudscape to the database arena. IBM remains dedicated to helping its clients employ standards that increase business value.
Resources - Get an architectural overview of the On Demand Operating Environment with the developerWorks article, "The On Demand operating environment: Architectural overview" (August 2004).
- Take an in-depth look at the On Demand Operating Environment with "Operating environment essentials for an on demand breakthrough" (developerWorks, July 2004).
- Read the "Architecting on demand solutions" series from developerWorks to learn best practices for using the 13 capabilities of the IBM On Demand Operating Environment.
- Read about IBM and the On Demand Business.
- Read the SOAP 1.2 Recommendation, mentioned in the introduction.
- Visit the Web Services Interoperability Organization (WS-I), an open industry organization chartered to promote Web services interoperability across platforms, operating systems, and programming languages.
- Find a broad array of articles, columns, tutorials, and tips at the developerWorks XML and SOA and Web services zones.
If you're just getting started with these technologies, visit the
"New to XML" and
"New to SOA and Web services" pages.
- Browse for books on these and other technical topics.
About the authors  | |  | Arnaud Le Hors is part of the IBM On Demand Operating Environment Technology Strategy and Marketing department. He is responsible for the technical coordination of IBM software standards development, and participates in defining IBM software standards strategy. Mr. Le Hors received his Masters in Software Engineering from Centre d'Enseignement et de Recherche en Informatique, Communication et Sytèmes in France. You can reach him at lehors@us.ibm.com. |
 | |  | Dr. Angel Luis Diaz is the director of the IBM On Demand Operating Environment Technology Strategy and Marketing department. Dr. Diaz received his Ph.D. in computer science from Rensselaer Polytechnic Institute. Before joining the IBM Software Group in 2003, Dr. Diaz was a member and senior manager of the IBM research staff, where he led advanced technology projects related to XML and Web services. You can reach him at aldiaz@us.ibm.com. |
Rate this page
|