This column introduces some reasons for the emergence of Web services for the corporate intranet, extranets and the Internet. Web services offer great promise for the future – particularly for enterprise application integration (EAI). For readers who are interested first in a nontechnical introduction, I will initially relate Web services to other technologies that are more familiar. Later columns will further examine Web service concepts and will look in more detail at some of the tools and products that are being released to support this burgeoning field.

To understand the state of the information technology industry today, it is useful for us to consider problems and solutions from other industries. We will use these solutions as lessons for the IT industry. For example, consider how cars would be built and used if the automobile industry had evolved not as it is today, but instead it had evolved similar to today's IT industry. Picture the following scenario.

I am driving along the highway. It is a beautiful day. My new car, the latest Model X from Major-General Autos, is purring along beautifully. I made the correct decision. It is a magnificent piece of hardware; its performance is incredible. It really does get 1 million miles per gallon of fuel as advertised. I am sure that if it were not for the speed regulator mandated by the government to keep the car's speed below the sound barrier, my new car would easily reach Mach 4. However, speed limits are speed limits, and we all must abide by the law.

Suddenly, the car's controls start to turn blue! I remember from the car operating procedures (COP) course that the "blue controls of death" indicate that the vehicle is developing a fault. Thank goodness I decided to take that six-month COP course. I really learned how to operate the car; the operating procedures were all completely different from my previous car – the Model Y. Some of my late friends had decided to skip the COP course and learn by trial and error. The COP course would have taught them how to avoid their crashes.

I look anxiously for a Major-General Autos Service Center. Only they will have the ability to replace the faulty component with a new part for my Model X. Yet this would really spoil my trip. I know they are really fast, but a three- month wait for them to make a new "soft-part" by hand really would ruin my holiday. The new object-oriented method of soft-parts manufacture has not yet been accepted by the Major-General Autos soft-parts engineers. Most of them gained their soft-parts coding skills over 40 to 50 years. They all know that the new object-oriented method for interchangeable soft parts could not possibly work; it will never replace their special handcraft coding skills.

Of course, this scenario is ridiculous. The automobile industry has not benefited from the speed and power efficiencies that technology has brought to the IT industry. On the other hand, the auto industry has other advantages that IT still has to achieve.

For example, cars have a standard operating procedure. Learning to drive one car enables us to drive any car; all car controls and driving procedures are standardized. This is not yet true for computers. Most operating systems are now similar in operation, due largely to the dominance of Microsoft Windows. However, the operating procedure for each different program still has to be learned in detail. This is changing slowly, such as with common operating procedures now used by most programs in the Microsoft Office suite of products; but this common set of menus and procedures has not achieved standard acceptance across all software developers or manufacturers. Many programs still require considerable training to be used effectively.

What about hardware and software parts interchangeability and reuse? The proprietary hardware interfaces of a few years ago are now disappearing. Most manufacturers of hardware peripherals now use common technology interfaces such as PCI, USB, Firewire and Bluetooth. Most peripherals today can be easily connected using these interfaces for the latest Intel-based machines or for Apple Macintoshes. These technologies are moving us closer to the automobile industry concept of interchangeable hardware parts from inventory, but the delays arising from handcrafted "soft-parts" in the earlier scenario are very real. We do not yet have the capability for easy interchangeability and reuse of software. This is by far the greatest problem today in the cost and use of computers.

Each program and each software component is still largely hand-coded from scratch. Yet much of the hand-coded logic is implied by the database structure that it is designed to use. Code generators today can use standard code patterns to automatically generate 80 to 90 percent of the program code that was previously 100 percent manually coded. We are starting to see automatic generation of programs in a variety of languages, but object- oriented programming has not yet delivered on its promise of interchangeable and reusable code modules. Of course, it is true that object-oriented programmers can develop reusable code modules, but it takes considerable time and skill to achieve this result.

Because of different hardware and operating system platforms, we still have considerable problems in integrating code modules within and between enterprises. These different platforms and programming languages use various application program interfaces (APIs). Consequently, programs or code modules written in one language with a particular API cannot be easily integrated with other programs or code modules on different platforms. To address this problem, remote procedure call (RPC) technologies that use CORBA (common object request broker architecture), COM (common object model) and other approaches have enabled tightly coupled integration of code across dissimilar platforms in real time.

The complexity of these RPC approaches for different APIs has meant that code- module integration and reuse is still time-consuming and difficult. Web services and associated XML technologies have recently been developed to address real-time program and code- module integration. We will discuss the main concepts of Web services and related XML technologies in future Enterprise columns.

Register or login for access to this item and much more

All Information Management content is archived after seven days.

Community members receive:
  • All recent and archived articles
  • Conference offers and updates
  • A full menu of enewsletter options
  • Web seminars, white papers, ebooks

Don't have an account? Register for Free Unlimited Access