You have to pay a lot of attention to software design as well, because what works inside the enterprise will crash and burn if it isn’t redesigned for online deployment, the company says.

To provide ISVs a better idea of how to adopt the SaaS model, Microsoft has designed a reference application to show how it can be done.

The sample application, LitwareHR, is a fictional human resources app that shows how to incorporate and configure Microsoft offerings such as the .NET Framework 3.0 and SQL Server 2005 for a multi-tenant model. In essence, it shows what Microsoft has been previously talking about in white papers posted on the MSDN developer site.

The sample app emphasizes what Microsoft solutions architecture group director Gianpaolo Carraro terms the three-headed monster of SaaS: the need for greater scalability, a different model for customization, and the efficiency of a multi-tenant architecture.

According to Carraro, scaling means thinking beyond enterprise scale, where you might design an app for a few hundred or a few thousand concurrent users, to at least a magnitude beyond that.

That fact probably isn’t a surprise to ISVs considering the move to SaaS, but getting there is another story.

He points to techniques such as effective caching, incorporating statelessness into at least parts of the application, and stricter application partitioning as the key to scaling for Internet deployment.

The interfaces between the different tiers need to be much more clearly defined, he said.

Customization also must be handled differently. While traditional client-installed software often is customized at the source code level, Carrero said that for SaaS deployment, customization should consist of configurations that are specified in the metadata. That’s the place where the customer can specify changes to data models, or additions of new or modified processes. He terms it the polymorphic runtime.

He added that software vendors planning hosted offerings need to pay more attention visual design tools so customization can be accomplished through a self-service online mode, rather than the usual route where a systems integrator or consultant from the software provider comes in to manually customize the application.

The final piece of the equation is mastering the multi-tenancy model for which Salesforce.com has made famous. According to Carraro, multi-tenancy means added attention to security and logical partitioning so you can run more customers out of the same instance.

The sample app, LitwareHR, was written in C#, takes advantage of the .NET 3.0 framework, uses the Windows Workflow Foundation (WWF) of Vista as a customization engine, Active Directory for identity management, Internet Information Server (IIS) as the web end, and SQL Server 2005 as the place for storing client data and metadata.

As Microsoft’s MSDN site says, it’s not what LitwareHR does, it’s how it does it. The sample application is available for download now to members of MSDN.