These days many people are talking about Software as a Service (SaaS). Software as a Service (SaaS) is the concept of instead of buying a server, buying server software, configuring said software, and keeping up with maintenance you simply pay a software service provider a monthly fee to deliver the benefit of the software over the Internet.
The advantages of this approach are:
• No large capital outlay (servers, enterprise software)
• No resource management issues (training staff to install and support software)
• No footprint on existing hardware (no software to install on desktops and no storage issues)
• Pay as you go and only as you need (you only pay for the people using the software and there are no internal scaling issues)
Unfortunately, many SaaS offerings have unacceptable underlying hosting problems. They run on servers outside the datacenter, have little in the way of security, and are not setup to scale and perform to company expectations. It was so bad in the beginning that the industry changed its name from Application Service Provider (ASP) to Software as a Service (SaaS) to jump start the market again!
So onto the scene rushes Cloud Computing companies. Cloud Computing allows application writers to host their software on pre-established infrastructures. A Cloud can typically scale, support many applications on a variety of operating systems, and can absorb some of the peak loads.
So this is a great step forward for SaaS customers right? Allow application providers to team up with computing providers to deliver more robust solutions?
Not so fast.
Given the choice between application providers supplying their own servers and a Cloud Computing environment I would take a good Cloud every time it is hardly the panacea everyone is hoping for.
The first problem is who do you call for SaaS support when there is a Cloud when you have multiple service providers in the mix? When companies run into difficulties and problems, who do they call for support? Will the vendor have any pull with the Cloud Computing company? Probably not. Furthermore there is little flexibility in fine tuning a cloud. Many SaaS applications require diligent memory pool management, customized cache requirements, application business rules, and load balancing. In a Cloud environment Dr. Spock said it best “the needs of the many outweigh the needs of the few” and tuning for maximum performance are impossible.
Next is the problem of security. When a vendor hosts their own infrastructure they can impose strict rules over who has access to the computers, login access, rights management, and logging. Vendors hosting their own infrastructure can fine tune the firewall settings, opt for higher encryption, and verify that strict access controls are in place. In the cloud company? Who knows when passwords reset, if they are strong, if the firewalls are properly managed, and from what countries do administrators have access?
Finally, there is the problem of performance. SaaS providers can’t guarantee performance as it is in the hands of the Cloud. Under what conditions does the Cloud company add computing power, more memory, and new companies? Many of these Cloud companies are little different then the application providers in trying to sign up as many people as possible in as little time as possible to survive. Ever sign up for a new Gym membership only to find the line at the treadmill 10 deep? Also, one of the greatest bottlenecks in Internet computing is bandwidth. Many of the clouds share hardware with multiple applications. Bandwidth can be purchased but what happens during peaks on multiple applications? It is a lot easier to scale CPU and Memory but the stress from all these applications can put enormous stress on the whole Cloud that is not so easily understood and alleviated since providers never know who they share resources with nor understand the peeks and needs of these other SaaS offerings.
So what is the answer? When looking at hosted / SaaS models you need to spend a lot of time understanding the security, backup plans, and contingency planning that company has in place. Ask the tough questions to all the scenarios and you will know the players from the posers. In my option the answer is to partner with the best datacenter operations professionals and deploy virtualization with cluster Computing so that SaaS providers have a purpose built architecture, maintain control over the hardware (without managing it), and can ensure optimal security and the throughput to match the application.
Here is our story. We are a 10 year old SaaS/Hosting Project and Portfolio Management (PPM). We are relatively small but we are world class in contingency, backup, and redundancy planning and are still BY FAR the least expensive solution among our competitors.
The key for us was focusing on our core. What we do best is provide SaaS resource and project management solutions. We don't build servers, manage network operating centers, build data centers, etc. We looked at the Cloud and saw more problems then solutions. So we looked for the top partners we could find.
We ended up traveling to a short list of datacenters and I am proud to say we found probably one of the top 3 in the country. We know because right in front of our cage is the cage for PayPal and right to the left of our cage is the cage for Bank Of America. We then enlisted Iron Mountain and off site mirroring to make sure we cover every contingency of man made and natural disasters. It wasn't cheap but now we have 24/7 monitoring of our servers with full sets of spares ready if anything even begins to fail (thank you Dell), back up datacenters, offsite storage, etc etc etc.
If we had tried to build our own datacenter, build our own processes from scratch, etc we would have had a much more expensive, less agile, and less capable backup and recovery model then we have. If we had gone into the Cloud we would have no way to ensure (or even know) the support, security, and performance of our SaaS offering.
Warm Regards,
Nick Matteucci, Co-Founder
www.VCSonline.com
VPMi = Simple + Sensible + Supportable SaaS Project Management
About the Author: Nick Matteucci is a co-founder of
VCSonline.com a web 2.0
project management software company headquartered in St. Louis Missouri. Mr. Matteucci is also an active board member and the Chief Technology Officer for the
PMI ISSIG. When not obsessing over virtual project management best practices Mr. Matteucci enjoys spending time with his wife and three small children. He also enjoys travel, running, and all things automotive.
Bookmark this post:
