On 04/07/07, Anne Thomas Manes <[EMAIL PROTECTED]> wrote:
>
>
>
>
>
>
> I still content that you implement the model (a representation of the 
> design), not the architecture. But the term "architecture" is frequently 
> overloaded -- especially in IT. I often hear people use the terms 
> "architecture", "blueprint", and "model" interchangeably.
>
> Steve described it as:
>
>
> Architecture = conceptual model
> Design = logical model
> Implementation = physical model
>
> which kinda puts it into the right taxomony, except that architecture is not 
> a model.

Architecture _creates_ the conceptual model.

>
> Wikipedia describes "software architecture" [1] thus:
>
>
> > The software architecture  of a program or computing system is the 
> > structure or structures of the system, which comprise software components, 
> > the externally visible properties of those components, and the 
> > relationships between them.
>

N.B. I think that software architecture IS design :)

>
> Wikipedia also has this to say about "architecture" [2] :
>
>
> >  By extension, the term "architecture" has come to denote the art and 
> > discipline  of creating an actual, or inferring an implied or apparent plan 
> > of any complex object or system. The term can be used to connote the 
> > implied architecture  of abstract things such as music or mathematics, the 
> > apparent architecture  of natural things, such as geological formations or 
> > the structure of biological cells , or explicitly planned architectures of 
> > human-made things such as software,  computers, enterprises, and databases, 
> > in addition to buildings. In every usage, an architecture may be seen as a  
> > subjective mapping from a human perspective (that of the user in the case 
> > of abstract or physical artifacts) to the  elements or components of some 
> > kind of  structure or system, which preserves the relationships among the 
> > elements or components.
>
> Both of these definitions seem to focus on system structure, the systems 
> components, and the relationships among system components. The second 
> definition goes a bit deeper and talks about creating a "plan". Things get a 
> bit murkier when you next look at the definition of "design" [3]:
>


Why is this murky?  Its pretty clear that this definition of
architecture says that it applies to real "things" hence (I'd say) has
to be implementable.

>
> > Design, usually considered in the context of the  applied arts, 
> > engineering, architecture, and other such  creative endeavors, is used both 
> > as a noun and a verb. As a verb, "to design" refers to the process of 
> > originating and  developing a plan for a product, structure, or component. 
> > As a noun, "a design" is used for both the final (solution)  plan (e.g. 
> > proposal, drawing, model, description) or the result of implementing that 
> > plan (e.g. object produced, result of the process).
>
>
> So I have to ask: What is the difference between "architecture" and "design"?
>
> I was disappointed not to find an entry for "design principle".Next I looked 
> up "architectural style" [4]:
>
>
> > Architectural styles classify  architecture in terms of form, techniques,  
> > materials, time period, region, etc. It overlaps with, and emerges from the 
> > study of the evolution and history of architecture. In  architectural 
> > history, the study of Gothic architecture, for instance, would include all 
> > aspects of the cultural context that went into the design and construction 
> > of these structures. Architectural style is a way of classifying 
> > architecture that gives emphasis to characteristic features of design, 
> > leading to a terminology such as Gothic "style".
>
> In my definitions of SOA, I always refer to it as a style of design, and I 
> think this last definition fits closest to the way I think about SOA -- it is 
> a way of classifying software architecture to give emphasis to characteristic 
> features of design --  i.e., design principles, or in a more specific 
> application architectural style (such as REST), constraints.
>
> [1] http://en.wikipedia.org/wiki/Software_architecture
> [2] http://en.wikipedia.org/wiki/Architecture
> [3] http://en.wikipedia.org/wiki/Design
> [4]  http://en.wikipedia.org/wiki/Architectural_style
>
> (Not that Wikipedia is a dependable source of truth, but I think these 
> definitions are helpful to the discussion.)
>
> Anne

So I think we are getting to the reason for the difference between our
positions.  You are seeing SOA as a software design approach, while I
see SOA as being a business architecture approach.  This is partly
because Service Oriented Design (SOD) has not taken off as a term.

This is why I say that the business architectures I create are
implementable, because people then go away and build software systems
that implement those architectures and which deliver services that are
the physical representations of the conceptual services that existed
in the original business architecture.

http://service-architecture.blogspot.com/2007/05/soa-isnt-about-technology.html
is a quick explanation of how I think that BSA provides a context for
future delivery approaches.

Steve

>
>
>
>
>  On 7/4/07, jeffrschneider <[EMAIL PROTECTED]> wrote:
> >
> >
> >
> >
> >
> >
> >
> >  > * 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
> >  >
> >
> >  Rob,
> >  What term do you use to describe what happens after an architectural
> >  model is created? Some people might say they're going to "build
> >  it", "realize it", "construct it", "implement it", etc.
> >
> >  If the system is made of a bunch of services, the same holds true. I
> >  think that the only point they're trying to make is that they're
> >  taking the concept off of the white board and moving it to the next
> >  stage of realization.
> >  Jeff
> >
> >
>
>
>
>
>              

Reply via email to