[tweetmeme source=”sureshsambandam” only_single=false]15-20 years ago, enterprise application development, as we know today, wasn’t all that clear. All I can deduce, in a retrospective analysis – digging the internet, is that people knew the different puzzle pieces which are needed, in building an enterprise application. For example,
- Need for abstracting business rules for modifying rules separately from rest of the application lead to the creation of the the BRE category with companies like iLog (now with IBM), Selectica (my ex-employer which is no longer in the BRE space – sad!), Talarian – now with TIBCO (I used Talarian’s RTIE when I was at HP to build Fraud Detection System for Vodafone and interesting to see Tom Laffey of Talarian still at Tibco as EVP of Products & Technology) and the opensource DRools and Jess
- Need for abstrating Workflow, when Workflow logic became a dominant portion of the application, lead to a whole new category called Workflow, which later modified itself to BPM, resulting in companies like Savvion and jBPM
- Similarly, Presentation Layer has seen tremendous innovation that lead to AJAX that is being predominately used across the board today.
- When people realized using vanilla – ODBC / JBDC is making their life complicated (there are friends like Sriram – who will argue the other way) lead to another whole new category leading to companies like TopLink later acquired by Oracle. And, in the opensource world fully dominated by Hibernate . As I write this post, there is another big war on SQL vs NoSQL potentially leading to another innovation in this space.
Now, all of this is great, great, great. Let me make that clear, first. However, over time all these individual puzzle pieces that are required for building enterprise software have become isolated infrastructure stove pipes. While there has been tremendous amount of talk on eliminating application stove pipes very little has been done in the infrastructure space.
Enterprise Software industry has been successful in solving the individual puzzle pieces on a stand alone basis. However, a unified platform that blends (I am purposefully saying blending instead of integrated – e.g. coffee making is a fine art of blending with chicory – not mixing) all of these puzzle pieces is/was elusive. Today, what industry does is a mega-gluing exercise when building an enterprise application. There is still a great deal of unfinished business in this space. And, Cloud brings in the market momentum for finishing that business.
Just to elaborate with one example, unification is not calling an API from your application to the Workflow / BPM Engine to perform a state transition. That approach would mean passing as much context information as required, to the WF engine to perform the state transition. The application is a stranger to the WF / BPM engine is concerned. I see many BPM projects fail miserably just because of this. Unfair to target BPM alone – this applies to other softwares that are part of the puzzle (like BRE, etc).
Some would argue that not all enterprise applications need all these pieces. Yes, I agree. But a vast majority that falls into ‘enterprise business applications’ need all of these pieces preferably in a ready to consume fashion – with no need to build or glue any infrastructure or plumbing code.
Among other capabilities OrangeScape, has solved this piece in a very unique manner (blend???) which I will elaborate in an another post (this post has become big already)!
P.S: This post is dedicated to Robin @ MF (not appropriate to fully quality him, at least as of now) who triggered me to blog this and and helped me prioritize my plunge into the blogging world.
[tweetmeme source=”sureshsambandam” only_single=false]