There’s a big difference between front and back office computing that becomes clearer to me every year. Back office processes deal with what is known or knowable. How much money did we make? How many units did we ship? What raw materials should we buy? And questions like them are largely quantifiable and even when we don’t know a precise answer we can make an assumption and proceed from there.
Front office processes are much different. The front office has a side exposed to the customer and to unpredictable reality that the back office may easily appreciate but it’s simply not the same.
A philosopher (forget who) once showed that some infinities are greater than others. For example, although the set of whole numbers is infinite and the set of fractions is also infinite, nevertheless the set of fractions is a larger infinity. In the same way the number of business processes in the back office is great but it is not as great as the potential set of processes of the front office. Extending the analogy, Cloud Computing will mean more for CRM over time than it will for ERP because there’s more software to be built for the front office.
With no small amount of difficulty, companies manage to support their back-end business processes using the software products of one or a small number of providers. The object is to minimize the interfaces that need to be built and maintained to better control the integrity of the limited number of processes under management.
The front office on the other hand has so many specialized business processes that companies routinely bring in multiple vendors to manage it all. Often even that isn’t enough. Individual applications can be expensive or they can be a nightmare to integrate and many users rely on spreadsheets and desktop application development tools to support their processes. You know the drill — it can be a mess.
So, along comes Cloud Computing with the promise of at least remediating all this. Cloud Computing has at least these advantages:
- Application delivery on-demand
- Built-in hosting
- Development tools integrated with the above
We’ve known about all of this for a while now, but the cloud vendors have not always done a good job of selling the big picture. So we get situations where a company like Salesforce.com introduces a development environment at one moment and talks about long tail applications and Cloud Computing on other occasions. But too often we’re left to figure out what it all means. Amazon and others offer computing resources on-demand and Google offers an office automation suite. And social networking sites offer tantalizing visions of the future of communication, but it’s all Legos without a blueprint.
Maybe that’s the way it must be since any attempt to prescribe a solution would inevitably leave something out. Certainly, this is one instance when the solution really is greater than the sum of its parts and I think it’s time for cloud vendors to make more of a statement for a couple of reasons including branding and marketing.
Now anyone is free to put the SaaS badge on a product and take advantage of the largely favorable attitude in the market. But this approach invites dilution. Is a single tenant application provider the same as a multi-tenant provider? Purists would say no and for good reason. Currently, though, not much defines SaaS or Cloud Computing other than what a vendor says it is. We need to be a bit more rigorous in this.
I suggest an independent body that sets the standards and the definition — for good reasons. We’re at a point that the late Thomas Kuhn first described as a paradigm shift in his 1960’s classic, “The Structure of Scientific Revolutions.” (It might be short, but this is not the kind of book you read for fun at the beach.) Subsequent authors have done a better job by bringing the idea of disruptive innovation into common use. But that’s where we are, paradigm shift cum disruptive innovation, the software industry is moving from a premise based licensing model to a cloud and subscription-based model of highly integrated solutions working on standards that make the integration possible.
In a transition period it is common to see attempts to mix and match the old and the new. In science it’s less possible because scientific theory is more Boolean — either Newton explains the universe or Einstein does but they both can’t at the same time. Fish or cut bait.
I think we’re seeing the mix and match approach right now in enterprise software because the number and variety of SaaS architectures is proliferating. What I thought was a settled discussion is now a fertile area with competing ideas about single-tenant, many-tenant and multi-tenant architectures and their proponents and all are being called SaaS by loyalists. Technically, they all are SaaS.
But it takes more than a browser front end and Internet transport to make a SaaS application. The importance of SaaS is the standardization it promises. A single code set and sophisticated metadata to manage customer data provide the standards that enable us to back away from conflicts about operating systems, databases and versions. These standards are what make it possible for many application vendors’ products to work together in common business processes.
Back office applications are the children of the license model and front office applications have successfully used the model for a long time. But the paradigm shift is being felt most significantly in the front office. Perhaps one of the challenges we face is not simply SaaS standards but the acceptance that front and back office processes have diverged enough that they now require two different — but bridgeable — computing paradigms.
This matter needs to be settled because there is already another paradigm on the horizon, actually it’s breathing down our necks. Social media heavily leverage the SaaS model and integrate people the way SaaS integrates companies and applications. There’s no telling if SaaS or even Cloud Computing will be a sufficient paradigm for this new world. But what’s on the horizon should give us all the incentive we need to consolidate our standards and move forward in an orderly way.