Do-it-yourself software services?

What would it take to develop applications in-house for partners to consume as services?

If you’re a regular reader of my column, you know that I’ve been looking closely at the pluses and minuses of the SaaS (software as a service) model recently. SaaS solutions let you easily deploy standard functionality across a wide spectrum of users cheaply, as opposed to best-of-breed, on-premises applications, which cost more but offer product and competitive differentiation.

But what if there was a hybrid solution? What if you could design your own industry-specific, best-of-breed application -- for your partners and suppliers, say -- and then deploy it in an SaaS model?

Imagine that Wal-Mart, for example, wants to get its suppliers on board with its SCM application. To sweeten the pot, it might offer a fully functioning SaaS version of the app to use internally.

Is it possible? That depends on whom you talk to. Steve Beda, executive vice president of Accuship, a spend-management service provider to the transportation industry that uses the SaaS model, sees no major obstacles to building it yourself if you keep a few things in mind.

If you are sharing a service among partners and clients, Beda says, be sure that all parties fully agree on uptime performance, disaster recovery, monitoring, and intrusion protection. Security is critical. It plays into your partners’ site policies and possibly their Sarbanes-Oxley control objectives.

“You need a common set of objectives so it doesn’t become an issue in the relationship,” Beda says.

On the application side, you’ll need a common set of XML APIs that you can tightly integrate with your partners. Among other things, this will allow companies to share those site policies across the enterprise. When it comes to hardware, Beda suggests that you stick with “solid technology partners” like Cisco, EMC, and IBM.

I heard a very different story, however, when I spoke with Adam Gross, director of product marketing at Gross says a company cannot build a true SaaS application unless it is willing to invest a huge amount of money in creating a multi-tenant database capable of supporting multiple customers on a single instance of the hardware, software, and network stack. Gross likens DIY SaaS to building a private phone network instead of using the phone company: It would require a huge investment.

For, with more than 18,000 customers and 351,000 subscribers, I’m sure it has been an enormous investment. In fact, just spent $50 million building a new datacenter. But what if your goals are narrower and your ecosystem more limited? Let’s say it’s a supply-chain app for a limited number of suppliers. Is it doable?

Beda says you could build a key structure in the database that allows you to vertically partition the data across multiple distinct partners, so that one never sees the others’ data. Of course, this wouldn’t be easy to retrofit into an existing database. You’d need to be starting from scratch.

Gross rightly points out that although you might be able to create a partner portal and an extranet without much pain, to create a system that will support sophisticated business applications like ERP or CRM on the scale of a would be a daunting task.

Although there are barriers and there will always be nay-sayers, there are also doers. DIY SaaS would allow you to customize, scale, and deploy your own custom applications faster. It is certainly worth a second look.