

SOA – the good parts - mqsiuser
http://www.use-the-tree.com

======
mqsiuser
Let's say mildly that SOA failed and unfortunately the remaining parts are not
"a lot". I was in fact able to understand them and it's been possible for me
to open source the very most important parts in a POC. So the very most
important part is the way message processing and transformation is done. IBM
offers this in Message Broker / IBM Integration Bus (IIB) which they implement
in c and I implemented it in Java. I called the project "use-the-tree" and
open sourced it on github. A deployed version is online at www.use-the-
tree.com.

Actually it turned out that I added a couple of improvements which makes my
implementation superior to the one IBM has.

There are open source ESB's and Broker's, but I did not find (and I think it
is unlikely that there are) comparable proper implementations.

Main areas of future work are:

    
    
      - Add support for JSON
      - Add all quirks that XML has
      - Investigate if JavaScript (or Go) can be used (instead of Java) (and implement it)
      - Sorting (super cleverly with tree map ofc)
      - On-Demand Parser (would be awesome, also hard)
      - Investigate on open source solutions for parsing flat files standards like EDI/EDIFACT or HL7/ORM formats and it's usability together with use-the-tree
    

There is constant change in the IT world (I see a decline of SOA and a push
towards open source), so that I think that this project can have a significant
success in the future. Again ... "use-the-tree" is the only thing which is
left of SOA if you remove all the bad parts or the ones that have just
failed... it is "SOA - the good parts" :). It provides strong guidance on how
to do message transformation (to end up with the most efficient transformation
code) as opposed to IBM's approach, which is "we provide you with every
possibility and you better choose wisely".

Xslt would look like it, if xslt would be done properly.

I consider the way message transformation is done a defacto standard (there is
"only one right way") and this is now open source :)

