Wednesday, September 5, 2007

Software as a Service: the objectification of business processes

Software as a service (SaaS) has clearly become one of those dreaded buzzwords which now gets a fair share of buzz in blogs, groups, forums and even in corporate IT circles (Ack! …and now in my blog!). Everyone is on the bandwagon it seems, whether through action or just rhetorical agreement (hard to tell in some cases). Many would just call it good design – the componentization of software down to smaller, expert, well-tested units, but it’s the new(ish) ease of delivery that has come along with web 2.0 which has made this otherwise old concept something to talk about again (with a new acronym, of course). There is, in my opinion, an overlap of 2 specific concepts in many discussions on SaaS - which I mentioned on a recent Panel and thought I should expand a bit here:

First, is the true delivery of software services – that is, things like Amazon’s S3 and EC2 services, which allow developers of business-aligned software to focus on the business and not on the commodities (like storage or CPU scaling). Online mapping services (like, uh… Google’s!) are examples of another huge class of services which help web-masters enhance the value of their sites or provide mash-up artists a (now almost cliché, but) cool way to visualize location data. When creating web content, there are literally hundreds of software services which you can leverage through the magic of http (in the simplest form). This category is not often referred to as SaaS, but sometimes it is mixed in.

Second, though, is the main category of more commonly discussed Business Services – the delivery of specific business processes as, well, true services. “Service as a Service” is what I called it when someone recently asked me about the trends in SaaS. It seemed they were in that gray (or is it grey?) area between software components as services and actual Business Services…

When discussed in the context of how businesses can easily acquire and implement basic business processes using 3rd party services offered online (payroll, contract management, expense reporting, printing services, ...and... Sales Process Mgmt, etc) it seems that business services are the target (business-Service-as-a-service). When the context is an actual software service itself, or the building of a web-based product or service which leverages other software web-delivered components, then it’s Software-components-as-a-service. In those latter cases, the service itself is the delivery of software. Back to that gray (or is it grey ?!) area inside of which things like e-mail, content management, even blogging tools and others might fall… but so what…. I’m not looking to resolve all things into 2 distinct categories here, just trying to help people talk on the same level when they are not in that grey (whatever) area. ;)

I know the term “Service-as-a-service” sounds like an idiotic reference to nothing, but my point is that business services can finally be delivered in a way which is easily acquirable by customers, as true services, with:
- clear, non-obtrusive contracts (the business kind… you know, ToS you feel no obligation to read ;)
- clear communication contracts (the implementation kind… “you give us A , we give you B”)
- pay as you go – with clear pricing
- strong support (imagine that)

Yes, web software makes that much more viable, but it is different than Software-components-as-a-Service. It’s the “objectification of business” – where all business services become clearly defined objects – with associated data and processes, and for which there are (hopefully) experts to service all of our individual businesses. It really is an extension of object-oriented design concepts (from programming) applied to business processes. Modular, simple to develop, easy to understand and maintain, and (probably the most important part when put in the business services context) pre-existing and proven.

The best example in my mind is Payroll services (avoiding the more obvious example used because of their early vision of online services). Who today is starting their own business or running a successful large business and doing payroll themselves? (except ADP themselves, of course). There was a progression somewhere in the history of business automation from do-it-yourself processing (manual payroll, in this example) to do-it-yourself programming (roll your own payroll software - yuck) to packaged software (buy vs. build) to Software as a Service… Aha! That’s why we call 'business services delivered online', 'Software as a Service'… because we didn’t jump from manual business services to web-delivered automation in one step – we went through a stage of business services being automated with packaged software. One day, will we look back and laugh?

No comments: