Effective, Agile, and Connective (Part 1)

The business value that standards bring to enterprise SOA is a good starting point for determining the importance of standards. First, standards reduce the costs of IT. If there were no standards like Java, it would be much harder to find or train people to staff IT projects as standards reduce the learning curve for IT. Standardized software and solutions also provide better value because they are bought and sold at high volume, with usually no need for additional development.

Second, if standard components from various sources interoperate they can be easily combined to create new composite applications that help a business become more agile, increasing the speed in which new business processes can be supported. Standards-based business processes, data models, and technologies like Web services also accelerate building composite applications.

Businesses benefit because they become more flexible when responding to change. Third, standards speed the development of business networks. If partners run their processes in a similar, standardized way, they can link their business systems together more quickly.

Standards can deliver business value only when implemented in enterprise-class software solutions that offer scalability, reliability, security, and performance. To be of real value, a standard must be widely adopted by the software industry, so that solutions from different vendors can be connected to each other.

Technology and business semantics

To support enterprise SOA, SAP focuses on more than just technology standards such as Web services. Business semantic standards that define business functionality are also important. For example, all the enterprise service definitions within the Enterprise Services Repository (ES Repository) of the SAP NetWeaver technology platform contain business semantics about how to use a particular functionality in a business process.

Technology and business semantics are linked together by language standards that are used to define business semantics in a manner that the technology can understand. The SAP standards taxonomy can be used to identify which standards deliver the most business value for enterprise SOA.

Let’s look at some technology standards.

Metadata for the entire lifecycle

One example of technology standards is metadata infrastructure standards that define additional machine-readable information about components. Composite applications need reusable metadata about the components they use such as enterprise services or Web services and their interfaces. The same metadata is also needed during deployment and operations and for application management throughout the entire lifecycle.

If the metadata is structured in a standardized manner, the information can be more easily moved through different phases and repositories. The key standard for defining metadata is the Metadata Object Facility (MOF). It provides a great deal of flexibility. Any metadata can be defined in MOF and then stored in any repository that knows how MOF works. MOF is a mature, widely-used standard that is supported by the SAP NetWeaver Composition Environment offering and the ES Repository.

Models for components

Another group of technology standards, component frameworks, provide models and methodologies for building components from scratch along with ways to combine, configure, and deploy the components. JEE and Java 5 offer these capabilities, as does the new Service Component Architecture (SCA) standard, co-developed by SAP and industry leaders. SCA offers an option to define components in a language-neutral manner, using XML definitions.

In other words, interfaces are defined independently of the technology used to develop them. Defining a component in XML means that links to various technology environments (Web services, Java, and ABAP) become much easier when building a composite application, which delivers good business value. In terms of maturity and adoption, Java is widely established, and SCA is at an early development stage and getting a great deal of interest.

Standardized messaging

Technology platforms like SAP NetWeaver use messaging standards to send messages to and from an enterprise service. Messaging is like a house’s plumbing, which connects all the pipes so things can be sent reliably and securely. A standardized messaging technology means that the basic plumbing works: Users can worry about what data is sent rather than how it is sent. Inside the enterprise, the focus is on high performance and efficiency.

In this case, the best choice of messaging standards would be Java Messaging System (JMS) or Microsoft Message Queuing (MSMQ). But when messages are sent over the Internet between enterprises, secure, reliable message delivery is often the most important consideration. Reliability can be assured by using standards like SOAP and WS-Reliable Messaging. In either case, messaging is critical to making enterprise SOA work. If a message can’t be sent to an enterprise service, the whole business process grinds to a halt.

The standards in the fields of metadata infrastructure, component frameworks and messaging are examples of the standards that enable enterprise SOA from a technological point of view. But getting the full business value out of those standards requires a comprehensive approach that covers business semantics as well.