Making Software work for hosted solutions

I’ve spent much of the past 5 years doing hosted solutions in one form or another - both for my employer and some of it’s large customers (mostly telecommunications). The answer to how to use software in a hosted solution is driven by the solution, the target customer, and the software.

Let’s start with the big topic right up front - “Multi-Tenancy”. (I’ll call it MT from here on out just to save some typing.) MT means having more than one customer use the hosted solution. Obviously, MT is how you scale your customer base without scaling your cost.

There is a continuum for MT, each being more efficient than the previous.

  • each customer has their own separate hardware, software, customizations, and data
  • customers share hardware but have their own software, customizations, and data
  • customers share hardware and software but have their own instance, customizations, and data
  • customers share hardware, software, and instance but have their own, customizations, and data
  • customers share hardware, software, instance, customizations, and data is isolated only by security

The progression goes from most costly to most efficient. What drives a specific solution along this line is a combination of the software used in the solution, customer customizations (unique requirements), and security requirements (user and data isolation).

For solutions targeted at individuals - accessing features, access to other users, and access to data - is on a per-user basis. An example of this is Gmail. However, there is another type of solution targeting individuals, which by featureset, does not separate users. An example of this is AOL Instant Messaging.

For solutions targeted at groups of users, then you need to consider how the directory or ‘address book’ allows users to perform actions with others of their group but not be aware of or have access to other groups or individuals in those groups. This is the key attribute of MT solutions.

The directory tends to drive the implementation of most hosted services. Some software can handle multiple directories or multiple groups within a directory; *but* a lot of software does not. In this latter case, you need to start shifting from the left on our continuum.

The ‘feature-set’ is another consideration. Some solutions provide each group may have a different set of features or a different look-n-feel. If the software does not support this, then again, you shift further from the left on our continuum.

Security is a big consideration for some potential customer groups. Some customers require secure data, data isolation, and data encryption ‘at rest’ (such as FIPS 140-2 . If the software does not support this, then again, you shift further from the left on our continuum.

So, “directory”, “customization”, and “security” are matched up the software to be used, resulting in a point on the continuum.

Next, I’ll look at and example using WebSphere Portal.

Stay tuned !

Comments are closed.