Developer's Toolkit

Integrate Your World

Use OpenSpan to build a workflow between applications based on data and processing available in those applications.

Application integration is a difficult assignment. After achieving -- at best -- limited success with approaches such as CORBA (and to a lesser extent COM), adapters and remote procedure calls (RPCs), the industry is now placing its bets on Web services and service-oriented architecture (SOA). Although Web services have been around for several years, they are still better known for their potential than for their demonstrated value.

Is there another way? OpenSpan (www.openspan.com), a small startup company housed in an office park north of Atlanta, thinks so. That's because OpenSpan has a platform and development studio for building highly detailed custom integrations on Windows applications.


Building Automations
Here's how it works. Using OpenSpan Studio, you create a project that defines the integration you desire. You add components that represent applications on the desktop, then visually interrogate those applications to find data (usually, but not always, in UI fields). Then OpenSpan taps the application to process the data and pass it off to yet another application.

As an example, I used OpenSpan Studio to build one of my own integrations. I took a Microsoft Word document and used an OpenSpan automation to take a word or phrase, send it to Google and perform a search. The results of the search are displayed in a Google page, but I can just as easily display them in yet another application, or back in Word.

That's a simple example of how you can use OpenSpan to tie together two or more applications on the desktop. What you're really building is a workflow between applications, based on data and processing available in those applications.

Interrogation happens in an interesting way. OpenSpan injects code into a running process so that it can identify objects with events, properties or methods of interest. You select a UI object and it returns an interface to that object. It exposes that interface to the OpenSpan automation, so you can access that component and its data or methods later on.

Building an automation consists of visually taking application blocks, arranging them on a palette and connecting them together. The blocks represent the properties, events and methods of the applications, so what you're doing in building an automation is creating a workflow of data and processing through a series of applications.

Integration on the Desktop
OpenSpan is a client-centered technology. The data and functions are integrated on the desktop, not on the servers, even if they are client-server or even server-based applications. To some, it may appear the integrations are fragile. But that doesn't seem to be the case.

I spoke at length with Francis Cardin, an irrepressible Brit who came out of retirement to lead OpenSpan. He thinks that OpenSpan represents the "last mile of SOA" in an enterprise. "Enterprise architects build SOAs," he says. "They're focused on building an infrastructure, not delivering applications to end users. We can take the results of a services-based architecture and bring it to the users in the form of a client-side workflow."

Cardin also had a response to the question of fragility. "An automation on the desktop is no more fragile than any other type of integration," he points out. "If the application changes to the point where the interfaces no longer work, you simply re-interrogate the application. The automation itself doesn't have to change."

OpenSpan works with any Windows application; or to be more correct, any Windows process. That's what enables it to interrogate external Web pages such as Google. You're really interrogating the Internet Explorer process running locally, rather than reaching out to the external Web site.

Personalized Apps for All
OpenSpan Studio is not yet to the point where anyone can build an automation for their personal use, but that's an eventual goal. I encouraged Cardin to consider giving away the Studio in order to build a developer community (the company charges for the automation runtime). "I'd like to get to that point," he replies. "Right now, we're a small company with limited resources to devote to maintaining that kind of community."

I can envision a day where any computer user, technical or nontechnical, can wish for a unique integration of applications to produce a specific result of value to that individual. That person can download OpenSpan Studio, create the integration themselves in a few simple steps, and have the information they want, in the form that they want. Cardin agrees with that vision, but says that OpenSpan must make the process easier still in order for it to be reality.

That day is not far in the future at all.

About the Author

Peter Varhol is the executive editor, reviews of Redmond magazine and has more than 20 years of experience as a software developer, software product manager and technology writer. He has graduate degrees in computer science and mathematics, and has taught both subjects at the university level.

Reader Comments:

Add Your Comment:

Your Name:(optional)
Your Email:(optional)
Your Location:(optional)
Comment:
Please type the letters/numbers you see above