Thursday, February 14, 2013

SaaS Design Principles - Use Data to Add Value

Continuing on from my previous post I’m going to start the first SaaS principle with a statement (according to TOGAF this is the correct way), but then I’ll get a little more informal. First the statement:

Data (or aggregations of the data ) should be made, in a controlled way, available to other users of the service or related services. 

Amongst all the talk from prospective SaaS consumers about how secure is my data, this is actually one of the major ways in which SaaS providers can differentiate themselves.

In the consumer space we are all very familiar with this. The well known “other customers who bought this also bought....” bring both extra value to the provider as well as the consumer. We all accept that to do this, the provider has aggregated data from other consumers and made the results available to others.

How though, could this translate to the enterprise world? Here are a few ideas:

  • A logistics service collects metrics concerning the frequency of deliveries to individual locations. An aggregation of this data can be used to provide help to the transport companies in where they provide transport.
  • A credit rating agency provides an SaaS offering for retailers to check the credit rating of consumers. The aggregated data on the financial transactions can also be used to capture spending trends.
  • Data from business travel services can be aggregated and used to improve the service.

PAC have provided a good example of this in their blog and have linked with this two trends: cloud and big data.

In order for this to really work the SaaS offering needs to be trusted by the consumers and building that trust is one thing a SaaS provider has to take into account. This is a subject in its own right.

 So far we have concentrated on aggregated data, effect having made the assumption that data from different users is isolated from each other, i.e. the hallowed multi-tenant principle. However Stefan Reid from Forrester has suggested that actively sharing data with more that than one tenant can allow enterprise to set up a business network, enabling - as he says:

 “... business partners, exchanging goods and money, to collaborate and share data real-time on a single cloud platform based on trust-relationship-models rather than by mapping and exchanging B2B-data.” 

 This is not so futuristic as it first seems. Many firms today are sharing data for simple processes in the form of Google Docs. For instance, firms in a partnership can use the built in collaborative facilities to prepare a joint proposal. Stefen, however, goes further with the idea and suggests that data that is usually regarded as sensitive can actually be shared to reduce external process costs.

Seeing and exploiting these possibilities has consequences for the SaaS application architecture as shown below:


Firstly the data collected needs to be available to any analytic system being performed on it. This if course has security and trust aspects. Secondly, as large amounts of data may be being collected the storage requirements can increase significantly. Having collaborative tenancy areas also increases the complexity. And not to forget the speed at which the analysis needs to be performed has a large effect on the architecture of the application - the quicker it needs to be, the more parallelisation needs to be built in.

Sharing data is one way of exploiting the cloud. But what about the other side of the coin, the business processes. How can a cloud based solution bring extra value to business processes? This is to subject of our next design principle.

No comments: