Welcome to MSDN Blogs Sign in | Join | Help

Syndication

News

Locations of visitors to this page
Software as a Service

I recently started a new job at Microsoft.  During the interview process I was asked what I thought about “Software as a Service” to which I replied “sounds like a great idea” (but was secretly doing a LiveSearch” in the background). After a couple of “auto pilot” sentences in the interview I realised that “Software as a Service” is familiar territory after all. My previous role (current at the time - architecture of payment infrastructure for banks) was actually quite immersed in the same area but, of course, wasn’t using the same terminology.  In the financial services world, where I have spent the last number of years, banks have been providing software as a service for a long time.  “White labelling” (as it’s called there) allows one bank (or service bureau often owned by a bank or group of banks) to host software on behalf of another in such a way that each individual bank can have its own style and labelling applied as if it was hosted locally. The end customer (for example logging on to do their web banking) doesn’t know the difference. Application Service Providers is also a term that has been used to describe the same thing in the past. 

About the Terminology ....Software as a Service

In my opinion, the terminology used today, which attempts to categorise the shift of how and where software (and business functionality) is physically located being is not particularly helpful.

Clearly there is a shift going on. Software which we have traditionally seen as located in the data-centre or on the desktop is now available outside by connecting to remote sites and it’s fair to call that Software as a Service. Particular attention is being focussed on Customer Relationship Management CRM because of the off-premise availability of products such as Dynamics CRM and Salesforce.com. Given the sensitivity of the data involved, CRM is probably the last arena I would have expected to be SaaS to take off in but there seems to be no doubt that it has and is. There are also off-premise sources of Office Productivity software.  

.... Software + Services

Another term commonly used is Software + Services which recognises the problems with the absoluteness of the “Software as a Services” term. With Software + Services there is a spectrum of deployment models. The extremes of the spectrum are : all the software footprint is On Premise (desktop or customer datacentre)  and all off premise (except the Operating System and browser). Within the range of those extremes are many different offerings which are available today. There are a couple of ways of categorising the Hybrid possibilities along this spectrum

1)      Hybrid offerings such that there is a combination of on–premise software (over and above the OS and browser). Examples include:

a.       Live Gaming - Xbox Live - Xbox on premise 

b.   Windows Live - some client + online service

c.      Security - Anti Virus software + signature downloads

d.      Office Online (MS Office + sharing of content online)

e.      Digital music services  iTunes, Zune Marketplace

2)      Hybrid Offerings such that a mix of online and offline usability options available. For example online service model when there is a good connection available but offline usage when there is a bad connectivity.

 

 

....  Business as an Online Service (BAAOS)

The categorisation of “Software as a Service”, and even the term “Software + Services”, force me to think of existing software businesses and the changes that are happening to them. There is a danger therefore of holding back our imaginations.  A better term in my opinion would be “business as an online service”, which I guess doesn’t have the same ring to it. We think of telecoms as a utility business. Voice telecoms is being redefined by the availability of broadband and software from Skype which provides global “peer to peer” real time voice for a fraction of the cost that local utility providers provide a similar service. But what’s really new ? When it comes to categorising a voice telecom service one could say that software was always used by the utility company and one way or another we were all subscribing to pay for the use of that software as we paid our monthly phone bills. Now Skype provide the same business service and it’s the centralised hosted software which they provide that allows us to connect with our global peers at low cost.  They do allow us use their “software as a service”. It’s not just Skype of course.  From a PABX perspective, Microsoft are providing voice, video, desktop sharing etc support through Office Communicator and Exchange and Windows Live already provides global voice, meeting  support and chat with Messenger as a hosted services, of course.

The important thing about the Skype service (and others) is the business service that’s provided:  a peer to peer voice connection. Less emphasis should be placed on the how it is being done. For phone calls the consumer probably just cares about the quality of service, cost, ease of consumption and reach.

If we blinker our imaginations to just the shift in location of traditionally licensed software to online equivalents then we could miss out on new business models that can emerge based on the new ecosystem provided by the internet – even the ones we already take for granted - online banking, online auctioning, online advertising, on-line peer to peer payments.

 

Building an Online Business Service

I think I’ll just have to get over the terminology thing. In any case, regardless of the terminology used, for those aspects of an offering that are to be made available as a shared and on-line  there are many things that should be considered when building these services.  As this is just my very first blog I don’t plan on getting into each one right now but I will highlight some of the things that come to mind :

1.       Scalability of the platform

2.       Extensibility:  Allowing tenants to have at a minimum a different logo/branding at the front end and possibly different business processes or variations on a template process.

3.       Data Driven process configuration. i.e. All tenants have the same code and different behaviours are encoded in configuration code.

4.       Access to configurability: via standard WEB Services interfaces.

5.       Integration points back to the tenant (callbacks). If access back to client systems is necessary then use of standard interfaces (business content and communications protocol) helps a lot.

6.        Integration points back to other backend service providers on behalf of the tenant. Again use of standard interfaces (business content and communications protocol).Pre-built integration can be a significant advantage of the business service provider.

7.       Security including authentication, encryption, non-repudiation

8.       Separation of data – at worst this can mean separate database instances for each tenant. At best a well defined data model such that each tenant’s data is always keyed separately.

9.       Profiling of Tenants

10.   Profiling of end users

11.   Authorisation around roles combined with authorisation around relationships to tenants. For example, it’s not enough that certain screens or functions be limited to individuals who have the correct role but data must be kept separate (from a visibility point of view) such that employees of one organisation cannot view data belonging to another.

12.   Use of standard interfaces (non-User Interface) for access to the service. Helps with the scalability when trying to onboard new tenants. Minimise the amount of mapping required were possible. Or adjust the price of the service when mappings are required.

Published Wednesday, August 01, 2007 5:35 PM by Cormac Keogh

Comments

# Software Information » Cormac Keogh’s discussion on IT architecture : Software as a Service @ Sunday, January 20, 2008 6:39 PM

PingBack from http://softwareinformation.247blogging.info/cormac-keoghs-discussion-on-it-architecture-software-as-a-service/

Software Information » Cormac Keogh’s discussion on IT architecture : Software as a Service

Anonymous comments are disabled
Page view tracker