You're right Anne, SOA is not a thing. In my discussion on compliance, the thing being compared is probably best defined as a services blueprint or service portfolio, which is something concrete.

-tb

Todd Biske
[EMAIL PROTECTED]

Sent from my iPhone

On Jul 2, 2007, at 4:03 PM, "Anne Thomas Manes" <[EMAIL PROTECTED]> wrote:

+1.

Every time I see someone say "SOA implementation", "a SOA" (or "an SOA"), or "implement our SOA", I get very frustrated. SOA is not a thing. It's a design discipline; an approach to designing systems based on a set of design principles. Unfortunately, the rest of the world doesn't see it that way. In fact, I noticed in the recent "SOA compliant" discussion, folks like Todd Biske and Eric Newcomer (both of whom know better) referred to SOA as a thing. And you're absolutely spot on when you say that service-orientation is just one of many architectural disciplines applied to a given system.

btw -- this a just a nit. (I deal with editors as a normal part of my job, so I'm more aware of these things than most people.) I'm not sure if it was you that attempted to correct Brass, Clements, and Kazman's grammar, or whether you got it from another source, but the proper grammar is in fact

"...comprise software elements, the externally visible properties of those
          elements, and the relationships among them."

See this Usage Note from Dictionary.com [1]:

"Usage Note: The traditional rule states that the whole comprises the parts and the parts compose the whole. In strict usage: The Union comprises 50 states. Fifty states compose (or constitute or make up) the Union. Even though careful writers often maintain this distinction, comprise is increasingly used in place of compose, especially in the passive: The Union is comprised of 50 states. Our surveys show that opposition to this usage is abating. In the 1960s, 53 percent of the Usage Panel found this usage unacceptable; in 1996, only 35 percent
         objected. See Usage Note at include.

[1] http://dictionary.reference.com/browse/comprise

Anne

On 7/2/07, Rob Eamon <[EMAIL PROTECTED]> wrote:
I wanted to get the various views that folks have on a phrase that
gives me pause: "implement an SOA" or "SOA implementation." IMO, this
phrase is off since an architecture (SOA or otherwise) isn't
something one implements. I wonder about the validity of my POV,
however.

The reasons I think that support my POV:

* While there is no single definition of "architecture" Booch,
Rumbaugh and Jacobson state that architecture "is the set of
significant decisions about the organization of a software system."
Architectural principles are decisions--"when faced with this set of
circumstances/needs, this architecture states that the approach shall
be X."

* Many posts on this forum, as well as various articles and blogs,
state that SOA is something you do, not something you buy or build.
It follows, then, that it cannot be implemented either.

* When used as a term in building construction, architecture seems to
be invariably used to describe the attributes or characteristics of
the structure. The building itself isn't called "the architecture"
nor is it considered an "architectural implementation."

* Service orientation is but one of many sets of principles applied
to a given system. This is probably a poor analogy but: A car has an
engine but I don't refer to the entire car as "the engine" nor as
an "engine implementation." :)

The reasons that I question the position:

* Brass, Clements and Kazman define architecture as "...comprise[d]
[of] software elements, the externally visible properties of those
elements, and the relationships among them." Clearly one can
implement/instantiate the elements of the architecture so "implement
the architecture" doesn't seem completely far fetched.

* Many, many people whose opinions I respect often say "SOA
implementation." I have a long held belief that architectures
aren't "implemented." But perhaps I need to let that view go.

I'm quite interested in hearing other points of view.

-Rob




Reply via email to