Is “cloud computing” right for your business?
Before this can be answered, it’s a good idea to define what we’re talking about. Or, As Larry Ellison, the CEO of Oracle, famously said, “What the hell is cloud computing?” Click here to listen to his rant. He’s mellowed on it since 2009, particularly since Oracle started selling and marketing cloud based products, but a lot of what he says still rings true.
Cloud computing really is a revolutionary development, but to most people it's still not clear what it is--to many people it’s just moving away from a Capital Expenditure model (you buy the hardware and software) to an expense model (you lease the hardware and pay monthly for computer room services); and moving to a hosted “somewhere else” model for your applications. In that sense this website you’re on right now is "hosted in the cloud", which is true, but in reality all that’s happened is I’ve outsourced the computer room functions to GoDaddy, a concept that’s been around a long time and is known as the ASP (application service providers) model. Sometimes that’s a fine idea, like if you don’t have a computer room or network, but it’s also not true cloud computing as it’s thought of today, referred to generally as the SaaS (software as a service) computing model.
The SaaS model takes the ASP model (outsourcing computer room functions) and extends it to features such as scalability, keeping your software on the latest versions, etc. However, you can’t just put any software in the cloud and call it SaaS (although some vendors do).
Software like Salesforce, Netsuite, Facebook, and office 365 are all SaaS applications, as is almost all new software development, meaning these programs are developed specifically to run in the cloud. That means they have three main features in common:
1. They are multi-tenant, which means one installation (instance) of the software is used by many completely independent companies. For example, one instance of SalesForce.com might handle 30,000 different companies at any given time. In the ASP model, it's just like in your computer room but someone else is hosting it and you are paying them rent to do so--one instance of the software handles one company, or a few companies under one corporate umbrella.
2. The software is typically written with Service Oriented Architecture (SOA), which keeps the functions of the complete software package separate and highly configurable. And there’s a lot more to SaaS development than just this—typically there may be a customized database, layers of metadata, with the top layer specific to the particular ‘tenant’ (user company), etc. A good description of the complexity of cloud development using Force.com, a cloud development platform, can be found in this article written by a Salesforce.com engineer.
3. The software runs in a browser, or sometimes from an app. No 'clients' are loaded on your PC or Mac. The processing takes place in the cloud, on a server or servers somewhere.
From a straight business perspective, what this means is that when you purchase software, and if you want to move to the cloud, clarify if it is truly SaaS, meaning that it is multi-tenant. Otherwise you are just paying someone else to host your software, which again might be fine, but it’s not SaaS. This movement to the cloud also means that if you are developing commercial software make sure it’s a SaaS product. The big ERP companies, like Microsoft and Sage, already have or currently are rewriting their software to be multi-tenant and cloud based.
Most advantages of this model are obvious and are why “hosting in the cloud” is growing so fast--estimates are 30% a year and higher, depending on the applications. Here's a starter list of advantages and disadvantages:
First, let’s face it: In-house IT is a hassle. There’s generally more payroll than you’d like and whenever something goes wrong, it’s a major deal. You don’t hear a peep about how nicely everything hummed along for the past six months, but then when email goes down for the morning it’s a major tragedy that will no doubt impact the entire years earnings, profits and bonuses. Who wouldn’t want to unload that luggage into the cloud?
Second, you don’t have to buy the hardware. Even though hardware costs are dropping rapidly, keeping your computer room at least semi up-to-date requires constant capital expenditures, sometimes in the $100,000+ range. The breakeven point on cloud services vs. buying is usually around three years, which at the rate hardware is going obsolete is about when you’ll need new hardware anyway, so why not avoid the upfront charges?
Third, you don’t have to worry personally about security, DR, and backups for cloud applications. That’s a major concern, and a big reason why people go to the cloud. There’s nothing more aggravating than an email outage, unless it gets a lot worse because it turns out that Exchange wasn’t being backed up properly. Your cloud service provider should take care of that for you (make sure it’s in the contract).
Fourth, and the most important result of moving to the cloud is that your software is always running the latest version, and it can be accessed virtually anywhere on any device. Thinking about this website again, although it's hosted at GoDaddy, they don't upgrade my Joomla! software for me. I have to do it myself. Multi-tenant software will always be the latest version, but if you are simply hosting software at the vendor's site, even if the vendor upgrades the software for you, you're paying for it.
So, in most cases “going to the cloud” looks like the smart choice, and often it is, but there are some other considerations you should think about. In particular, is your business a suitable candidate for cloud computing, and if it is, how do you get there?
To summarize the advantages of moving applications to the cloud:
1. A virtual computer room where everything can be scaled automatically
2. Automatic backups and a virtual disaster recovery site
3. Applications that are available anywhere there is Internet access, on most devices
4. Less work for the in-house IT group upgrading software, managing virtual servers, etc.
Financially, a ‘cloud’ software solution should be viewed as bundled (infrastructure, platform and software). A popular CRM (Customer Relationship Management) system is Salesforce, which runs in the cloud. Costs might be broken out a variety of ways for presentation, but what counts is the bottom line—what’s it cost in total, keeping in mind that cloud costs are usually volume based?
Then, you have to compare that to the marginal cost of a system that does not run in the cloud. For instance, if you need to buy new hardware to run some other CRM system, then that is a marginal cost associated with the alternative. On the other hand, if you already have a computer room with virtual servers, SANs, and plenty of computing power to spare, then your marginal cost for hardware is $0. The cost benefit analysis should go out at least three years, and take many factors into account, including personnel, hardware obsolescence, tax implications, Internet access, and more.
In terms of a field sales force accessing a CRM system, the cost is usually the same—they still have to have a PC or mobile device with Internet access, regardless of where the application is hosted. Keep in mind however that cloud systems tend to require more standardization—if your ‘clients’ (people accessing the cloud applications) have outdated or oddball equipment, then although it’s unlikely, updating that equipment could be a hidden cost. It's unlikely that Salesforce works on a BlackBerry.
This applies to personnel as well. Realistically, moving one application to the cloud isn’t going to save you much, if any, headcount. About 1% of the issues with a CRM system, for instance, are related to the server or database hosting the application. The other 99% involve sales reps having problems with their iPads or personal computers (the “I forgot my password” type issues), and forgetting how to do things (“how do I enter a lead, again?”). There may be long term savings, but I believe that cutting headcount by 1 or 2 in a cost benefit analysis, just because one application is going to the cloud, is similar to how the government budgets—unrealistically optimistic.
Here’s the essential quandary—the better your current IT department is running, in terms of efficient use of personnel and up-to-date equipment, the less you’ll save by going to the cloud. In fact, it will probably cost you money. On the other hand, if your infrastructure is so messed up it will cost a fortune to fix, or if you are just starting out, then the cloud is a much more viable option, although always look at the other alternative—fixing up your internal IT department. Let’s say email is a constant problem for you. Going to the cloud will probably fix it, but so will just having Exchange installed and working properly (and the network). Exchange typically runs “lights out”, and your local IT vendor can handle anything complicated. If you’ve already purchased Exchange and have plenty of computing power on site, maybe just fixing what you have is the better alternative.
Potential Pitfalls (a more complete list is at the end of this article):
The above dealt mostly with hardware and infrastructure, which is where IT people tend to focus. However, the main concept to keep in mind when deciding whether a cloud application is right for your business is to realize that cloud computing works by standardization. Hardware just enables the applications that run your business, but the software runs your business. The software must be what is best for your business. You need to look at CRM packages for their functionality first, and where they’ll be hosted as a second tier concern.
The more your business is standardized in the way it operates, the more likely a cloud solution is a cost efficient solution, because everyone in the cloud is running off the same basic software. It’s not any different than buying a solution like Dynamics GP or MAS500 for your ERP system….if it doesn’t work just like you want ‘out of the box’, you’ll have to pay someone to modify it. Modifying things and integrating systems in the cloud, as a general rule, tends to cost more if it’s even possible.
This is why cloud software tends to be highly configurable. The vendors aren’t going to make specific changes to their core software to satisfy one client. For instance, I recently looked at Netsuite for a very complex, engineer-to-order manufacturer of robotic assembly lines. The day before our demo, the sales rep called me apologizing. When she’d gone to the technical people to arrange the demo, they’d told her Netsuite couldn’t handle ‘engineer-to-order’, which of course dropped it off our list of software to consider.
So if you don’t do things just like everyone else does, customizations and allowances for outliers become expensive or impossible. Again, this is why going to the cloud works best for business that are just starting, or that are willing to change how they do things to be like everyone else. It’s also a big reason for the success of Salesforce.com—CRM systems are classic candidates for cloud computing—they are straightforward and generally all do the same thing, so there isn’t that much to customize. Most cloud systems have many, many settings to personalize the software, but those are different from modifications. Integrations tend to be particularly problematic.
A word of warning here—with the rise of digital marketing, and in particular email marketing, be careful about integrating all responses directly into a CRM system. Email marketing is essentially free to send, so companies tend to send out a lot. If all responses flow automatically into your CRM system, you’ll soon end up with a whole lot of data in the cloud, and charges for cloud based services tend to be based on volume. You don’t necessarily want to be paying for gigabytes of data related to unopened spam email.
So, there is a lot of upfront work to be done before you jump in with both feet--check it out carefully. Are you going to run a standalone CRM system, or is it going to interface with your ERP system. If SFDC says standard ERP system interfaces are already built, has your ERP system been modified? Talk to other customers who have used the prebuilt integrations. Do you want your sales reps to enter orders directly into the CRM system? Can they convert leads to orders that flow into the ERP system? Do you control your pipeline closely enough that the lead can directly change into a quote, which can change into an actual order, or is the process more informal? These are all the types of questions you have to ask before making a decision.
Keep in mind this general principle—Standardization yields economies of scale, and will save you time and hassle. Deviation from the standard will be more expensive as you lose some of the economies of scale, although again, good cloud products are highly configurable. There is no substitute for analyzing what you need, seeing what existing business processes can be changed, and realistically assessing if your organization can adapt, and if that adaptation is worth it. If you run a multinational business or nonprofit that does a lot of business in Africa, for instance, is the Internet there reliable enough to run all mission critical applications from the cloud, or is it better to run locally and synch up behind the scenes? What if your sales force uses old phones or equipment that aren’t supported by the cloud version of software like Exchange. There isn’t as much flexibility with Exchange when it’s in the Cloud, and your local IT resource company can’t help you much when something goes wrong.
That’s the central issue—standardization saves money, but every business is unique. It doesn’t always pay to standardize, because you might lose your competitive advantage. If you look at “orders written” instead of “orders invoiced” due to lead times, to assess trends, that might be an issue for an ERP system running in the cloud. Check it out ahead of time to get a true picture of future costs.
So I’ll leave you with this last thought: the popular opinion these days is to ‘go to the cloud’, and for many businesses and applications it’s the correct decision. Certainly the backup and DR reasons are big factors. However, it’s not a ‘slam dunk’ decision. There’s no substitute for a thorough financial cost benefit analysis AND a realistic analysis of whether your business can fit into the standard model BEFORE you ‘go to the cloud’.
Would I suggest going to the cloud? It depends upon your business, but generally YES-- it’s a good idea, particularly in the long run. Just keep in mind that it doesn’t always work and isn’t always easy. I know of a company that moved their flagship digital product to the cloud, and it didn’t work once it got there for about 6 weeks. They had furious customers calling from across the country, and at one point were looking at refunds totaling millions of dollars. That flunks the cost benefit financial analysis test. Other companies have moved to the cloud and moved back, not happy with the response time and toned down features available. Move to the Cloud a bit at a time if you are an established business, and see how it works. You don’t have to do everything at once.
Make sure your Internet access is great, and your network works smoothly. Going to the cloud typically won't fix your network issues, but might make them a lot worse.
Below is a list of commonly noted disadvantages or pitfalls to watch out for when you make this decision:
1. At your Service Provider:
a. Read the contract to be sure you retain all rights to your data. You don’t want it mined or shared. See what the repercussions are if they don’t meet their service level agreements (SLAs)
b. Where is the data to be stored? This can have forensic ramifications among other things, if it’s outside US jurisdiction, for instance.
c. Research them thoroughly. The cheapest provider isn’t necessarily your best bet. Most important is security and minimal downtime. Just because a company exists and bills itself as a “service is in the cloud” doesn’t mean they’ll have great security, backups, and never go down.
d. Tax treatment of leasing vs. buying and depreciating. There have been some major ‘special offers’ from the federal government lately for purchasing hardware.
e. What’s known as “Vendor Lock-in”……it’s often really hard to change your service provider at a later time simply because it’s in the cloud and the data is all over the place. This is a serious concern so choose you provider wisely. The worse they are, the harder it will be to move.
2. On site:
a. Immediate control and access to your IT environment: You can’t just walk back to the IT department and tell Bob to fix something. Remember that often when you’re calling the cloud, customer support is often in the same place as your data—all around the world.
b. Managing the situation with your existing IT staff……a self evident problem.
c. A really big issue—Internet speed: You’ll want blazingly fast Internet access for whatever is in the cloud, but particularly if you are running an ERP or financial system that is heavily used at your location.
d. Another big one—functionality of your software in the cloud vs. what you are used to: Remember that you are sharing software with many other users, so standardization is the key to success on both sides.
e. The cost of modifications or integrations to other systems, which may or may not be in the cloud.
f. The cost of hiring people skilled in dealing with Cloud applications and vendors. You’ll have to have someone on staff who deals with cloud applications, although it could be an existing IT person.
g. Forensics—this is a dual edged sword. On the one hand it’s really hard to get rid of anything incriminating in the cloud…..when something is on the Internet it’s there forever. On the other hand, finding that data and using it in court is more complicated….where the data resides, proving it is valid, etc. This is a complex issue, so click here for more in-depth information.
A few definitions of commonly tossed around terminology:
• “IaaS” stands for “Infrastructure as a service”, and it’s the basis for what is commonly run in the cloud, SaaS (Software as a service) and PaaS (Platform as a service). The simplest way to think of IaaS is as virtual servers that are managed by someone else, for instance Amazon’s EC2 or Rackspace.
• Next in the hierarchy comes PaaS, which provides a platform that runs on these virtual servers. The platform includes the database, the operating system, the web server, and the ‘execution environment’ for the programming language. Examples of this are Windows Azure, Google App Engine, and AWS Elastic Beanstalk…..you’ll notice that the names express different ways of looking at this……Azure sounds like a name designed by Microsoft’s marketing department under Balmer, Elastic Beanstalk is someone at Amazon Web Services (AWS) having a whimsical good time, and App Engine is Google getting “right to the point while making a point”.
• Finally comes SaaS, which is the reason most businesses consider going to the cloud. IaaS and PaaS are replacing at least a bit of your computer room, but SaaS is the software your business needs. There are sub-‘aaS’ terms used here, like DaaS (desktop as a service) but they are all part of SaaS. SaaS examples are Windows Office 365 and Salesforce.com.
• There’s also NaaS, which is networking as a service, but I’m not going to deal with that here.
Technology is changing so fast it makes your head spin, but in many ways Cloud Computing is just a continuation of trends we've been seeing for years......virtualization, remote hosting, and SAN storage devices. What's changed, and kicked it to the next level is the advent of mobile devices, and the necessity of IT departments accommodating all the choices out there--gone are the days that IT could just decree what devices people were allowed to use. Now we're in the BYOD (bring your own device) world, and that is a whole lot easier to manage from the Cloud. UPDATE: Companies are starting to crack down on the BYOD approach due to security concerns.