Service Oriented Architecture

Blog for discussion on various topics related to SOA and SOE (Service Oriented Engineering)

Friday, May 12, 2006

What is SOE (Service Oriented Engineering) ?

Service Oriented Engineering (SOE) methodology is for "Collaborative and Iterative Software Engineering" in line with SOA principles. SOE differes from traditional engineering methodology in a sense that it facilitates "collaborative engineering" environment.

One of the key value proposition of SOA is the re-use of heritage (I picked this from Russell Irwin's speech... it is more appropriate than "legacy") assets. This heritage asset could be a brand-new piece of code written by team across the floor or could be a mainframe application developed 20 yrs back.

So, can any asset be reused ? Answer is - Really not !

One of the missing aspect in IBM's SOA Methodology (Model -> Assemble -> Deploy -> Manage) is that one can not start modeling without understaing the business processes and existing assets that have potential for re-use. In my view, there should be the "Analsys" phase before modeling can be done.

Other challenging aspects in collaborative engineering is quality and scope of components. That makes "testing" as an important activity in SOE. A chain is as strong as it's weakest link. So, what are various certification criterias that a component must undergo before other teams make it as a part of their mission critical applications ? Is internal testing sufficient enough or should there be an independent certification authority ?

Some of above issues can be addressed by putting a good SOA Governance. That brings our attention to another aspect of SOE - what are key ingradients for good SOA Governance ? It is just putting right organization structure and assigning responsibilities / accountabilities ? Or, something more ?

Back to our discussion on SOE ... SOE has 6 phases - Analysis, Modeling, Development, Testing, Commissioning and Integration. One may argue that these 6 phases can be reduced to 4 or 5. But I feel that these are 6 different aspects of software engineering and eash phase has it's own challenges and complications.

These 6 phases are supported by 4 enablers - Governance, Training, Frameworks and Tools. One may point that Frameworks and Tools are linked with each other.... however, it is not...

... to be continued !

1 Comments:

  • At 10:42 PM, Blogger Hiten Patel said…

    First of all, my appreciation for highlighting SOE in a very lucid and precise manner.

    Eager to get more such articles on SOE concepts as well as on Service Reference Architecture and SOA Programming models like SCA, SDO's etc.

     

Post a Comment

<< Home