The architect's view
From the architect's perspective, there are a number of issues to overcome in building a workable SaaS environment, of course. One of the key problems is the way databases are organised within the system.
"Nirvana would be running a single database with lots of tenants and all their data in the same tables," he said. "But a multi-tenant database is hard to do."
There are, for example, many management issues to consider, such as Service Level Agreements. "What if one tenant manages to hog the majority of the resources available on the single server?" Nelson asked. "There are also regulatory and governance issues where it might occur that data is shared between different tenants." This can, of course, be approved by the tenants, but without sufficient management resources and expertise, it could just easily be, at best, "inadvertent".
The alternative is to have either a single node and database for each tenant, or a single node running a multi-tenanted environment where each tenant had a separate database. According to Nelson, the practical limit here is around 200 databases per node and, in both of these alternatives, it does mean upgrades need to be made to each database individually.
Configuration issues can normally be restricted to the presentation of the customer's UI and associated branding, setting up the required workflow and rules, and the creation of data model extensions where necessary.
To help architects and developers get an idea of how to manage such tasks, Microsoft has introduced a dummy human resources "service" called LitwareHR. Here they can not only play at configuring the service to fit their requirements, but also examine the processes behind the changes in some detail in order to learn how to build applications that can be readily configured.
One way of getting a feel for providing online and on-demand services is now being offered by Microsoft's chum, BT. According to Joe Black, BT's director of emerging business and technology, the company has already invested around £8m in building the Connected Services Framework in collaboration with Microsoft, and one of the main reasons is that BT's own research estimates that the UK SaaS marketplace will reach £144m during 2009. Black suggested, however, that BT faces some practical problems in dealing with ISVs looking to get a share of that business.
"One of the main problems is identifying real demand when ISVs come to call," he said. "BT needs some form of market reference from ISVs to show that there is a demand for what they are offering, so there is an issue of how they engage with BT."
One solution he proposed is that ISVs use the Application Marketplace that has been established as a community in BT's Tradespace service specifically as a place for ISVs to get a foothold in the online world.
Black also pointed architects at BT's Web21C SDK development toolset. This provides a set of libraries designed to help developers consume web services that are exposed by BT. The idea is to give developers a simple line of code to access each one of the many communications-related services BT now has available.
"If you think an application can exploit a phone or communications service one line of code is all that is needed to integrate it," he said.
BT has also got involved with Microsoft in the development of the latter's Connected Services Sandbox where ISVs and other collaborators can build and try out new developments in a safe environment.
For those ISVs that feel they have a product or service worth exploiting, but don't want to take the step into the SaaS marketplace, BT is also in the market to provide that service.
Black said the company wants to co-market such products and services through a new ISV partner programme. This could lead to BT-branded products appearing. "This would be a revenue share model with the partners, with the share probably being 60:40 in BT's favour," Black said with a smile. ®