Expert Texture Home Contact me About Subscribe Digipede Connect on LinkedIn rwandering on Twitter rwandering on FriendFeed

rwandering.net

The blogged wandering of Robert W. Anderson

On OO, SOA, and OOP-G

In Modeling Web Services using OO and moving on, Savas Parastatidis recently posted that object-orientation is a poor choice for modeling large-scale distributed applications. As he argues (and I agree), Service-Orientation is a better way to architect these applications.

My product, the Digipede Network, is built on a service-oriented architecture. So why do we Digipudlians talk so much about object-orientation (e.g. here and there)?

Tools
One reason is that our SDK makes it straight-forward for our customers to distribute their objects across a network of computers and perform work on them. They are generally using object-oriented development tools with .NET (e.g., Visual Studio with C# or VB) or COM objects. We take these objects and submit them into the Network (by value). The developer need not be troubled with the intricacies of the WSDL or Web services that underlie the architecture.

In other words, the tools are (mostly) OO, and the underlying services / architecture that supports the whole thing enables so much more. Our customers don’t need to get into that if they don’t want to.

Resonates with Developers
Another reason is that we connect a lot more quickly with developers by describing our model as a way to scale out OO applications quickly. The fact is that most businesses have existing non-SOA applications that can easily be distributed on the Digipede Network.

OO and SOA?
Of course, we don’t want to ignore SOA as this is our architecture and we want to enable these kinds of applications (we will be exposing rich Web services interfaces to our product in the coming year). To bring these two concepts of OO and SOA together, I have begun referring to this specific programming model as “object-oriented programming for grid over a services-oriented architecture”, or OOP-G over SOA and simply OOP-G for short.

Has a nice ring to it, no?

    Trackback

2 Comments »