« The Truth About SOA | Main | Grady Booch is Mistaken »

Comments

Anuruddha

Coming across the Tangram analogy comes as a pleasant surprise to me because I too independently thought of it as terrific example (as opposed to the popular but crude lego blocks example) to depict SOA paradigm. Another good example could be the LED (Light emitting diodes) digit matrix for displayed numbers (digits) from 0 to 9. The LED matrix when all lit looks like digit 8. So, this means, the digital 8 subsumes (or coveres) all the digits. The LED matrix arranged such way, can be thought of as the service layer, designed in perfect elegance. If we needed to display numbers in 10's and 100's and so on, all we need to do is, place the same LED matrix adjacent to each other. (The recursiveness of counting is truly exploited here). What's more strikingly resembling with Tangram is that the LED matrix is also composed of 7 LED's! (I begin to think if number 7 has magical qualities :)

The point here to note is that both in Tangram puzzle or the LED matrix example, there is an 'optimal' use of fundamental building blocks (SOA services) (7 geometrical pieces or 7 LEDs). The square cardboard for Tangram is 'optimally decomposed' into limited and minimal number of geometrical pieces or the minimal number of LED's. Yet compositely, they can so economically generate and fulfil the goals they have been designed for.

Another aspect to notice is that, both in Tangram puzzle and the LED digit matrix, the output generated is more of an approximation of shapes or numbers. The forms generated are more of an abstract style than their precise and perfect forms. One has to be a bit creative to find out a resemblance between the figures generated by Tangram and the actual real world figures they represent. So, it looks like in a true SOA paradigm, to achieve maximum flexibility/adaptability and output in terms of minimal underlying services that support them, it may be required that the business processes accomodate for some sort of approximation. However, I am not yet sure what this approxmation would be translated into in business domain. There could be many factors that might serve a business goal better when approximated.

Extending the idea of LED matrix displaying digits, the LCD screen of TVs or computer monitors is not a good example of SOA because the decomposition is microspcopic (millions of pixels to be orchestrated leading to high cost factor and managibility needs). True, the clarity is close to real world, however, the design, though uniform (as in lego blocks), is not elegant and optimized. The magic of SOA can be truly realized when it matches the design of Tangram or LED matrix example.

As a final note, I think, Tangram serves as a better example to understand the essence of SOA compared to the LED example, because the geometrical pieces decomposed of a square piece of cardboard (analogously, the technology infrastructure) are not all uniform but of differnt shapes and sizes. In reality, for the best design, the services cannot always afford to be unform (just like array of clones). For maximum efficiency of design and support, they need to be disparate or uneven at times for situational advantages (just as in the case of chessmen).

The comments to this entry are closed.