Building on Duane’s idea that “there are other differences between SOA and OO”, one might point to Service Orientation Principles. A subset of these service-orientation (SO) principles (e.g. service reusability, service abstraction, and service composability) have earlier object-oriented counterparts. But SO didn’t take all of the OO ideas (e.g. bound methods) and some principles were added or advanced.
SO proposes a healthy degree of abstraction to the SOA model separated from the technology. Duane noted that SOA is not just programming Indeed an architecture is also not a computing platform, there is a degree of abstraction there that is generally useful and some think that such abstraction that helps to standardize well documented interfaces enough to build loosely coupled services while continuing to leverage new technology advancements/platforms as they come along.
SO also espouses Business Component models which as ways to link business services and IT/SOA services. Unfortunately, in my opinion the semantics needed to model the business is generally not there to support significant SOA efforts. For example, people want THE taxonomy for a domain. For significant domains there are way ways we dice it. Models often fail to handle granularity issues too.
Which brings us back to the original ontological point, that started the discussion. It’s great to have a start on these semantic issues for SOA. But one can see the challenge when we discuss what a service is because that connects us back to the complexities of the real work and not just IT.
Gary Berg-Cross, Ph.D.
http://colab.cim3.net/cgi-bin/wiki.pl?GaryBerg_Cross
Principal in Semantic Technology
EM&I SOCoP Executive Secretary
On Site Phone 703-696-6280
Office - 703-742-0585
From: ontolog-forum-bounces@xxxxxxxxxxxxxxxx on behalf of Duane Nickull Sent: Thu 7/17/2008 3:22 PM To: edbark@xxxxxxxx; [ontolog-forum] Cc: Toby.Considine@xxxxxxxxx Subject: Re: [ontolog-forum] The Open Group SOA Ontology
Ed:
There are other differences between SOA and OO. For starters, OO is a programming level paradigm while SOA is an architectural plane model. True OO impact application architecture but generally, the consensus I have seen tends to be that SOA has a higher scope than any single application. I don¹t think it serves the community to mix the two up as they are meant for different areas of focus.
Another difference is at runtime, objects typically need be be instantiated and instrinsic knowledge of a specific environment is required (example J2EE or .NET), even for RMI. Consistent with REST principles, Services lie in a state of readiness (assuming request-response patterns) and do not need to be explicitly constructed by some known factory method. SOA focuses on additional concepts required to make interactions possible on larger than single application scopes such as visibility, reachability, service description, interaction models, behavior models, real world effects etc. Now this can be argued both ways and it gets a little hard to quantify where the exact lines are drawn. Some principles of OO and SOA are, at some level of abstraction, highly alike IMO.
One other aspect of SOA that is often ignored is the ³other-than-request-response² interaction patterns. I have published a white paper here to try and help people think beyond RR. It also explains some of the concepts.
http://www.google.com/search?source=ig&hl=en&rlz=&q=soa+white+paper&btnG=Goo gle+Search
(click on the first link to Adobe to the PDF entitled ³Service Oriented Architecture (SOA) and Specialized Messaging Patterns²
Duane
On 17/07/08 12:02 PM, "Ed Barkmeyer" <edbark@xxxxxxxx> wrote:
> Toby Considine wrote: >> SOA at some level is nothing more than OO writ big (nothing new there!) > > Duane Nickull wrote: > >> I would consider this not quite true. Service oriented architecture is a >> paradigm for architecture (software or otherwise), that matches needs and >> capabilities across multiple domains of ownership. This makes it >> substantially different from OO which is typically under one environment and >> one domain of ownership. > > I would never have said that "OO is typically under ... one domain of > ownership". Any set of software that is created under a single > program-of-work is under one domain of ownership, regardless of its > architectural paradigm. > > But the whole idea of "interface presentation", "instantiation", and > "encapsulation" (which are the heart of object-oriented technology) is > that one domain of ownership can use things that were created in, and > still owned by, another. Lots of programmers write Java programs using > open-source libraries that fit their needs. And vendors write software > tools to run in the Windows environment using off-the-shelf DLLs with > documented (OO) interfaces. And I assumed that these ideas are what > Toby meant when he said SOA is OO writ big. > > What forced the "single domain" behavior on CORBA and Java/RMI > environments was the "broker"/"app server" concept. But there is > nothing OO about the broker/app-server concept; it was just an easy > implementation architecture for earlier distributed systems. I can > agree that SOA is a departure from the server/broker *architecture*, but > that part of the CORBA/Java architecture is not an OO property. > > Once you generalize the "directory service" concept and provide some > kind of "dynamic binding" capability, CORBA (3.0) and Java (J2EE) also > supported interdomain interactions of autonomous agents. > > I should say, BTW, that this problem of "portmanteau concepts" is a pet > peeve of mine. People regularly seem to confuse guiding principles with > implementation choices in identifying the facets of a thing like SOA. > This is also why someone else earlier said that SOA has nothing to do > with "webservices" a la WSDL/SOAP -- the same principles can be applied > in a J2EE implementation environment. > > -Ed > > -- > Edward J. Barkmeyer Email: edbark@xxxxxxxx > National Institute of Standards & Technology > Manufacturing Systems Integration Division > 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 > Gaithersburg, MD 20899-8263 FAX: +1 301-975-4694 > > "The opinions expressed above do not reflect consensus of NIST, > and have not been reviewed by any Government authority." > > _________________________________________________________________ > Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/ > Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/ > Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx > Shared Files: http://ontolog.cim3.net/file/ > Community Wiki: http://ontolog.cim3.net/wiki/ > To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx > >
-- ********************************************************************** Senior Technical Evangelist - Adobe Systems, Inc. Duane's World TV Show - http://www.duanesworldtv.org/ Blog - http://technoracle.blogspot.com Community Music - http://www.mix2r.com My Band - http://www.myspace.com/22ndcentury Adobe MAX 2008 - http://technoracle.blogspot.com/2007/08/adobe-max-2008.html **********************************************************************
_________________________________________________________________ Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/ Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/ Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx Shared Files: http://ontolog.cim3.net/file/ Community Wiki: http://ontolog.cim3.net/wiki/ To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx (01)
|