I like to think of service orientation as a lifestyle, in a healthy way.
Whether you are already a health freak or the couch potato desperately in need of exercise, fantasize with me for a moment, that you are Mr. and Miss Olympic athlete, with a figure to die for.
At a more practical level, let’s think about the elements of the lifestyle that these athletes most probably have in common. It’s very likely they:
Eat healthy – with a balanced diet from different food groups, low fat, high fiber, enough fluid etc.
Exercise regularly – focusing on flexibility, strength, endurance and speed.
Practice mental discipline – maintaining positive and mature attitude and the mental toughness to not give up.
Get sufficient rest and sleep – this is vital for mental and physical recovery.
I don’t think it’ll be a stretch to say that the above are actually basic principles for all who seek to live healthily, and especially important if you aspire to be a professional sports athlete.
In many ways, SOA is about living a healthy lifestyle.
By now, most people should already know that SOA is not a product, in the same manner that a healthy lifestyle is not a product. Borrowing from the adage “money cannot buy health”, I will state here that “money cannot buy SOA”.
Furthermore, like the professional athlete who practices hard to be #1, the path to service-orientation requires discipline and rigor in adopting architecture best practices in areas such as:
Service design – versioning service interfaces and contracts for compatibility, communicating with an efficient model, executing transactions with the right assumptions etc.
Information management – integrating, aggregating, correlating and presenting business data.
Process-centric command and control – focusing on process portability and reusability, augmenting business values and streamlining operations through service aggregation, and determining, monitoring and acting on key business performance metrics.
Identity and access management – controlling access to services, facilitating trust and identity federation across organizations.
This list is by no means exhaustive.
More importantly, the areas listed above require strategic forethought and execution articulation that cannot be resolved by mere purchase of any kind of technology message bus, ESB or SOA branded products. Don’t get me wrong, I do believe that there are commercial products that can help with attaining the goals of service-orientation. This is like saying, after we have decided to live more healthily, we can in fact buy a treadmill and some dumbbells and use these equipments in our exercise routines.
To further belabor the point that SOA requires active participation, I’ll use the analogy of enrolling in a health program such as the Jenny Craig weight loss program. One cannot only enroll in the program and hope to be automatically slim without restricting one’s diet according to the program’s plan. In the same way, no amount of outside SOA consulting service can make an enterprise more service-oriented if there is no internal effort to re-align the enterprise strategically and methodically.
OK – so how does SaaS fit into the discussion of SOA and healthy lifestyle?
Well, the principles for living healthily, while critical pre-requisites for a successful sports career, is insufficient for turning one into a professional sports athlete. This is because in all competitive sports, there are sports-specific skills that you need to master in order to compete at the elite level. Just as it’s easy for us to be envious of the amount of money Maria Sharapova is getting these days with her sports endorsements, it’s also easy for us to overlook the countless hours she spent on the court perfecting those magnificent tennis strokes.
SOA principles provide a great set of architecture foundation for delivering Software as a Service, but needs to be complemented by additional principles for addressing the multi-tenant issues. The quest for single instance multi-tenancy is liken to the aspiration (in the younger budding Maria) to master that evil top spin. How do you enable different data models, workflows, UI etc. etc. in a multi-tenant environment requires architecture guidance beyond what SOA offers.
Finally, some will say that you don’t need to adhere to SO principles to deliver SaaS. I agree. There are lots of professional athletes who take drugs and party late with special entertainment to go along...