OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

soa-rm-ra message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [soa-rm-ra] RE: A general comment on the SOA RA


Jeff, thanks for this lengthy reply. Once again, I am still trying to get into your guys frame of thinking and basing a lot of this on my previous experience and work. Let me try to answer some of your concerns below. At any rate, if you guys do not want consider this, that’s fine.

 

-----Original Message-----
From: Estefan, Jeff A [mailto:jeffrey.a.estefan@jpl.nasa.gov]
Sent: Saturday, April 04, 2009 4:02 PM
To: soa-rm-ra@lists.oasis-open.org
Subject: [soa-rm-ra] RE: A general comment on the SOA RA

 

Boris,

 

Starting with "architectural style" vs. "paradigm" ...

 

In the Reference Model (RM), we purposely targeted a much broader audiences than just techies, e.g., architects.  It was intended to be readable to non-IT people as well as IT people.  We purposely contrasted SOA with OO at the paradigm level.  As you know, OO concepts were introduced in the 1960s but the paradigm didn't begin to take hold in industry until the early- to mid-1990s; almost 30 years hence.  While pundits are considering SOA to be dead, it too is a paradigm shift that will likely take years before its value will be more broadly seen in industry.

 

I agree – SOA is a paradigm shift. What exactly does this mean? In my mind it is a paradigm shift because SOA is all about business aligned services and business processes, orchestrating those services into solution. But you may ask, how it is difference from OO? My answer would be two fold:

·         OO is decomposition of the application, where as SOA is decomposition of IT assets in general

·         Objects can be anything, for example linked lists, while services have to be aligned with business functionality (more on this later)  

 

 

In the RA, we expand on the paradigm notion introduced in the RM to a SOA ecosystem perspective.  I certainly understand the point about connecting this to the complexity of the Web, but we're really focused on the "service Web" vice the early "document (hypermedia) Web," "Semantic Web," or more recent "social Web."  My words, sorry.

 

I am sorry, I was trying to be sarcastic here. When people compare SOA to Web it makes me very nervous. Web is collection of resources – any resources, while SOA is about specific resources – business aligned services.

 

To be precise, the RA is an architectural description of the paradigm that is SOA.  It is not a solution- or enterprise-oriented RA.  And that is why we're in discussions with The Open Group on harmonization efforts because their efforts are focused on the latter, which again, is techie focused, e.g., architects. Not that that is a bad thing, just more limited in scope.  This is why I think characterizing our RA as foundation work is important.

 

Sorry, this reminds me the arguments that I have often heard from ESB vendors (nothing personal) – “buy or product and you will have SOA”. The issue here is that with the most wonderful paradigm, crappy services lead to a crappy SOA. All of us have seen systems, which were using object decomposition for defining services and then claimed that SOA does not scale.

 

A few comments now about the term "architectural style."  Even architects don't agree on a common definition of architectural style.  The folks out at the CMU Software Engineering Institute (SEI) define it as follows (see http://www.sei.cmu.edu/architecture/glossary.html):

 

"A specialization of element and relation types, together with a set of common constraints on how they can be used. See architectural pattern."

 

What the heck does that mean?  And obviously this definition means that you need their definition of architectural pattern.  Let's see, here's how they define that term:

 

"A description of element and relation types together with a set of constraints on how they are used.  The term architectural style has also been widely used to describe it."

 

(Looks like a circular definition to me.)

 

Guess that means we need to know what "element" and "relation" means in their context.  Well those definitions are provided in the above link as well.

 

But then Garlan and Shaw (both of whom are CMU/SEI folks) define architectural style in their book as:

 

"A form or pattern of design with a shared vocabulary of design idioms and rules for using them."

 

Well that seems to make a little more sense than the earlier definitions, but once again that word "pattern" keeps creeping in.  So we have two different definitions of architectural style FROM THE SAME organization, which is usually regarded as one of the leading organizations in the world on software engineering and software architecture.

 

The problem here is that none of this makes sense to the layman, or to the non-techie CEO or business person.  And in the RM, we very much wanted a very broad audience.  For the RA, we build on the RM core so we of course adopt the notion of paradigm.

 

No it does not. But what does this mean? In my mind this is abd definition – end of story. On another hand, SOA RA starts by explaining that SOA is architecture and refers to the definition of what architecture is. You do not consider this too technical right? Now about this definition from Richard Hubert’s Convergent Architecture: Building Model Driven J2EE Systems with UML. Wiley, 2001 ISBN: 0471105600 - “An architectural style is a family of architectures related by common principles and attributes”. I think this is quite readable.

 

Now, on the subject of "business services" ...

 

What do we mean by "business?"  Heck, we fly spacecraft where I work and we very much use SOA in our modern ground systems.  So does business just mean the 'aerospace business' and flying spacecraft in our world?  I guess it could.  Or does it mean the more traditional profit or organizational oriented context of business such as a company?

 

I think the alignment element here is what the perceived value is in SOA and that is agility.  In our "business" of flying spacecraft, I have always taught our folks that what we strive for is a "composable" ground data system (GDS) rather than building huge monolithic

 

And this is fine. Every business is different. Business service means (for me), that people (often non technical) can understand what the service does, based on its name. On of the definitions, that I have seen sounds roughly like this: “If you can’t explain to your CEO, what this service does, do not bother implementing it.

 

GDS applications that are unique to a specific flight project and very difficult to modify for the next flight project.  By breaking down GDS functionality into composable chunks (i.e., services), then we can make our "business" more agile by rapidly composing functionality specific to the needs of a flight project customer in a much more rapid and efficient manner.

 

Finally, there's this notion of alignment with business processes that leverage services.  That's a good thing and something we talk about in the RA in terms of service-oriented business process (and service-oriented business collaborations).  But, as you know, we don't want to infuse process modeling directly into the service level but rather keep it at a higher level of abstraction just as services abstract functionality of components in a component level, which may in tern be abstractions of objects at an object level.  Just as Duane has always reminded us that to infuse process modeling directly into the services would be considered an 'anti-pattern' in this case.

 

With all do respect to Duane I am not sure, that you can do this (but he is the boss). The issue is that if your do not specifically design your services to be composable, then using them in a business process can be very problematic. On another hand, if we agree that services are business services, then a common way to define them is through decomposing a business process. So no matter how you approach this, a business process still has a big role and separation of SOA from BPM is artificial and typically leads to more issues down the road.

 

Long winded reply.  But that's a little history of why we are where we are today.

 

And a final issue, that you haven’t addressed. SOA is rarely a “green-field” implementation. As a result transitioning from traditional architecture to SOA is a complex undertaking, which is an integral part of SOA.

 

Message to Frank.  Frank, did you send out a PDF of the latest snapshot?  I didn't see it.  Maybe you just send it to the assigned readers from the last call.

 

Cheers...

 

 - Jeff

 

-----Original Message-----

From: Lublinsky, Boris [mailto:boris.lublinsky@navteq.com]

Sent: Friday, April 03, 2009 3:53 PM

To: soa-rm-ra@lists.oasis-open.org

Subject: [soa-rm-ra] A general comment on the SOA RA

 

I have finally finished reading and realized where I had the biggest

issue with this.

The document equates SOA (for the main part) with a complex distributed

system, leaving completely aside Business/IT alignment nature of SOA.

Unless we stipulate from the very beginning, that services are

representation of well-defined business artifacts, there is no

difference between SOA and, for example, The Web. I would think that Web

is even more complex.

So, in my mind,

 

"SOA can be defined as an architectural style promoting the concept of

business-aligned enterprise service as the fundamental unit of

designing, building, and composing enterprise business solutions.

Multiple patterns, defining design, implementations, and deployment of

the SOA solutions, complete this style."

http://www.ibm.com/developerworks/architecture/library/ar-soastyle/

 

Similar definitions can be also find at:

http://www.opengroup.org/projects/soa/doc.tpl?gdid=10632  and indirectly

at http://www.jot.fm/issues/issue_2008_11/column6/index.html

 

Please, let me know if this makes sense?

 

If it does, then the document lacks a few other things that can be

easily added. But lets first agree on this slight change of a viewpoint.

 

Boris

 

 

The information contained in this communication may be CONFIDENTIAL and is intended only for the use of the recipient(s) named above.  If you are not the intended recipient, you are hereby notified that any dissemination, distribution, or copying of this communication, or any of its contents, is strictly prohibited.  If you have received this communication in error, please notify the sender and delete/destroy the original message and any copy of it from your computer or paper files.

 

---------------------------------------------------------------------

To unsubscribe from this mail list, you must leave the OASIS TC that

generates this mail.  Follow this link to all your TCs in OASIS at:

https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php

 

 

---------------------------------------------------------------------

To unsubscribe from this mail list, you must leave the OASIS TC that

generates this mail.  Follow this link to all your TCs in OASIS at:

https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php

 


The information contained in this communication may be CONFIDENTIAL and is intended only for the use of the recipient(s) named above. If you are not the intended recipient, you are hereby notified that any dissemination, distribution, or copying of this communication, or any of its contents, is strictly prohibited. If you have received this communication in error, please notify the sender and delete/destroy the original message and any copy of it from your computer or paper files.



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]