jump to navigation

Just Don’t Call It SOA December 4, 2009

Posted by Peter Varhol in Software platforms, Software tools.

A bit over a decade ago I started work at Compuware Corporation’s NuMega Lab.  One of our flagship products was BoundsChecker (now owned by Micro Focus), a runtime error detection tool for C and C++ code.  It was one of the two standards for deep debugging (the other being Rational Purify), because it worked in a unique way.  One component injected debugging code into the running process space.  Here that code could observe the executing code and make some determinations about pointer errors, memory leaks, incorrect addressing, and the like.

Injecting anything into a running process is serious business.  You have to be conscious of where running code is executing, and avoid injecting into that space.  You can’t step on the process code.  At the same time, your debugging code has to be intimately aware of where the executing code is, and what it looks like, in order to follow and analyze it.

Then there is when you can inject your code.  Ideally, you would like it to be the first code running in the process space immediately after the process is created.  And you would like it to be the last code out of the process upon program termination.

It turns out that you can do more than debug once you inject into a running process.  For example, once you have your code into the process space, you can identify public and private function calls, and by observing execution have a good idea of what those calls do.  In this case, you don’t have to worry about being the first code in and the last out.

That’s what the OpenSpan platform and OpenSpan Studio does.  To what effect?  Well, if it can identify functions and their purpose, it can call them.  You use OpenSpan Studio to query a running process to identify function call that may be of use, then wire them across applications to create a desktop workflow.  You get to pick and choose what part of an application from which you need data, and pass that data on to parts of other applications that are useful in your workflow.

Let’s say you have a set of five applications on your desktop (including two Web applications displayed in browsers).  You are either copying and pasting data between these applications (if possible), or IT has built one or more adapters between them.  OpenSpan, on the other hand, provides automatic connectivity between the parts of the application you need, and in doing so defines a specific workflow.  And you can identify the functions you need, and wire them together, in no more than a few days.

Way cool.  And the company is coming out with a free developer tool early next year.  I’ll talk more about it later.



No comments yet — be the first.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: