On-premise? SaaS? Mobile? Web? Cloud? Sometimes all the platform choices for new community association management software can induce a kind of decision paralysis. Let's break it down.
In the early 1900s, ice cream was a pretty big deal. If a restaurant or diner served it, about the only question one had to answer was whether or not it should be served on a cone or in a cup. Back then, every flavor was vanilla, and people loved it. But then came chocolate ice cream, strawberry ice cream, Baskin Robbins' 31 flavors, and Ben & Jerry's. These days, getting ice cream has taken on a whole new level of discomfort for the decision challenged:
Super Peppy Ice Cream Server: "Can I help you?"
Me: "Can I have a scoop of chocolate please?"
Super Peppy Ice Cream Server: "Sure! Do you want dark chocolate, milk chocolate, fudge swirl, tripple ripple fudge, fudgey coffee swirl, fat free chocolate, or death by chocolate? And which 6 of these 378 crushed up candy bars do you want mixed in? And do you want that on a cake cone, sugar cone, waffle cone, chocolate dipped waffle cone, sprinkles waffle cone, pancake cone, french toast cone, or a hollowed out yam?" (That last one is a trick to give you the illusion you are eating something healthy.)
And that is just the beginning. Somehow, by the time I walk out of there I have some horrible concoction of fat free dark chocolate tripple ripple fudgey swirl with gummy worms, marshmallows and bacon that I might have enjoyed when I was six, but now it's just way, way too much.
Choosing a deployment method for your software can be just like that, only a whole lot more expensive. This is only compounded by the fact that most software companies don't offer just one of these methods - they have a whole array of flavors for you to choose from. For such an important decision for your business, it helps to have a strong understanding of what each of the options are - what's good about them, what's bad about them, and the bottom line on costs for each.
Before We Begin
When evaluating software, you need to identify what your specific organizational needs are before choosing a platform. This is why we talk about conducting a needs analysis first and foremost prior to even beginning to look at software. The needs analysis can help you identify where people are spending the largest amount of their time, and what the roadblocks are in your current technology. For example, if your needs analysis identifies that your team spends a lot of time outside of the office without access to your technology solution, then a cloud based solution would make the most sense.
What is it? An on-premise solution is a compiled software application that is installed on premises at your organization. The software runs on your own internal network, often deployed on a server. To access the program, the application is installed directly on the individual users’ workstations, which then communicate with the server to access the shared data.
The Good: With software that is installed and maintained in-house, you assert full control of all of your data and systems. Also, if you lose Internet access, an on-premise application will continue to run just fine. Cost wise, an on-premise solution can be more expensive, but that cost is primarily a one-time output – once it is paid off, you own the software for as long as you choose to use it.
If your organization has already built out a solid IT infrastructure, with dedicated IT staff and solid server technology, adding a new on-premise software to your existing infrastructure can be an incremental investment, making it easy and reasonably cost effective (compared to purchasing new technology) to deploy.
The Bad: Because you are running the software in-house, access to your data will be restricted to your physical location (with some possible exceptions if additional deployment options are available, such as uploads via websites or mobile apps that can communicate with the on-premise databases).
You are responsible for purchasing and maintaining the technology on which your on-premise solution is running. This means that you will need to purchase the systems and retain IT staff, or train someone in-house to maintain the technology yourself. You will also be responsible for performing updates and upgrades to the software, server operating systems, and hardware, as well as performing reglular data backups. This is vital, as failure to maintain systems may open the way for security breaches and lost or stolen data.
The Bottom Line: Computer hardware is a depreciating asset. This means that from the moment you purchase your infrastructure, you will immediately begin losing money on it. Be sure to weigh the hidden costs such as IT staff salaries and the costs of hardware and software when deciding whether to go with an On-Premise solution.
Cloud-Based Solutions (SaaS)
Cloud-based deployment indicates any software that is primarily accessed via the Internet (called Software as a Service or SaaS in the IT industry). These can be broken up into two deployment methods: Hosted and Web-Based. While technically both methods are on the Internet, there are fundamental differences between the two:
What is it? A hosted solution provides many of the benefits of an installed solution in an online (cloud) environment with centralized administration. Here's how it works: The vendor provides servers in which the software is installed and then made accessible over the Internet via remote access technologies. To access the program, the customer connects remotely to the server (using any machine as long as it is connected to the Internet) and runs the software from there.
The Good: Customers can access the program from anywhere, not strictly inside the networked environment of the office. By eliminating the need to maintain servers or IT staff, you can significantly reduce your IT costs. And with no capital expenditures on infrastructure and no depreciating assets, your initial investment stands to be significantly lower.
Programs are automatically updated as updates are released by the developer, so no action is required on your part to maintain the program in prime running condition. Often, SaaS solutions are also bundled with additional services such as support or integration with other products.
The Bad: Access to key systems is dependent on access to the Internet. Access to the program is also dependent on the stability of the hosting company. Be sure you investigate your potential host to ensure they will be around for the lifecycle of your product.
The Bottom Line: While your initial financial output will be reduced in the short term, those costs will be converted into operating expenditures. Be sure to compare the initial up-front costs (don’t forget to include future cost estimates such as purchase of updates or additional services) against the monthly subscription costs for the product’s lifecycle.
What is it? A web-based solution is specifically optimized to run online. For the users, this represents an easy to understand user experience based on established web standards. Technology wise, a web-based solution can often be more easily integrated with due to the usage of standard Internet technologies.
The Good: As with a hosted solution, a web-based solution can be run by any user with an Internet connection, whether they are within the management office, or out in the field. Furthermore, a web-based solution is typically device independent, meaning it can be run on any operating system or device, including mobile devices. Like a hosted solution, this option eliminates the need for server maintenance and reduces IT costs.
Updates to the program are deployed universally for all clients on the product at the same time. Due to the fact that everyone on the program shares a single configuration (all customers share the same installation environment) identifying, testing and deploying fixes for program errors can be significantly faster in a web-based environment.
The Bad: Obviously, losing access to the Internet can result in an inability to run the program. Furthermore, you run the risk of the servers going down either due to acts of nature, or malicious acts, such as a denial of service attack. Relying on an Internet connection means that data is transferred at Internet speeds, rather than the potentially higher speeds of your internal network.
At the end of the day, because your web-based software is a web page running in a browser, you are subject to all of the limitations of the browser itself. Often, providers will recommend a specific browser for best results. You'll also run into some standard Internet type problems, like the Back button being finnicky and your session dropping after a certain amount of inactivity. (hint - typing in a letter in a text box is considered inactivity. If you go web-based, you should definitely get in the habit of copying your long text before hitting the submit button!)
The Bottom Line: As with the hosted option, your web-based software implementation will involve a lower initial output, balanced by a monthly subscription fee. While your initial financial output will be reduced in the short term, those costs will be converted into operating expenditures. Be sure to compare the initial up-front costs (don’t forget to include future cost estimates such as purchase of updates or additional services) against the monthly subscription costs for the product’s lifecycle.
What is it? A mobile solution (or Mobile App) is developed solely for a mobile platform such as Android or iOS. Typically, a mobile app is used in conjunction with one or more of the deployment options listed above. Without a way to communicate with other deployments, your app is locked to your device. For this reason, we consider a Mobile App to be a dependent technology. It needs to communicate with another system, otherwise it is just another yellow legal pad.
The Good: Because it is run on your specific mobile platform, a Mobile App usually takes advantage of the specific features of your device (such as being able to automatically take a photo or make a phone call from within the program).
The Bad: Due to the limited screen real estate and available program memory, most mobile apps offer a more limited feature set than a desktop or web-based solution. Furthermore, you are locked in to the specific device that your app is designed for, so your successful implementation is based on the success of the mobile platform.
The Bottom Line: As a dependent technology, a mobile solution needs to be deployed in conjunction with another system. This translates to higher costs as you add up the cost of each device, the cost of the Mobile App, AND the costs of your primary deployment. The ability to install the app on the existing devices of your staff can help reduce that initial output. You will need to determine if the convenience of a mobile app outweigh the costs of deploying a combined solution.
Remember that your choice should be based most importantly on the results of your needs analysis – for example, if you identified that conducting inspections in the field is slowing your process down, then a mobile solution that specifically addresses speed of inspections may be the deployment choice for you. Conversely, if the accounting process in the back-office is bogging you down, and your team doesn't really need access to data outside of the office, then you may find that an on-premise solution is the best for your business. If your needs analysis identified a need for a little bit of both, consider a SaaS deployment.
Now I'm off to get some ice cream!