A guide to continuous development and the cloud: Software’s solution for today
Many organisations are taking a DIY approach to their hosting needs and even some of their development needs. It’s worthwhile to note though that hosting software can be a complicated and costly affair, and organisations that attempt to take on the task often find a number of hidden costs buried beneath the surface that are ultimately unexpected or surprising to them.
Before taking on this challenge, it may be a good idea to stop and ponder where those hidden costs are and what that actually means for your organisation. For example, ongoing costs for hosting your own software include applying fixes, patches, upgrades, integration maintenance, hardware maintenance and purchasing and countless other tasks. A little money saved in one area, such as implementation, can lead to a bunch spent elsewhere, for instance on operational costs.
For those looking to avoid some of these costs, the cloud has quickly become a high-quality option for mitigating costs and other obstacles. When compared to the use of on-premise solutions, the cloud almost always offers a better return on investment. Regarding costs, you’ll appear to pay more upfront for cloud solutions, but following the investment there’s likely nothing unhidden beneath the surface. This is not the case of on-premise solutions, where the upfront costs appear lower overall, but are followed with many underwater and hidden costs.
If we lay the two software models side by side and name them icebergs, the differences are often stark. Let’s say that they both have roughly the same amount of area floating above the water, but that those represent vastly different costs and ratios. For example, the portion of the iceberg above the water on the cloud side is 63% of its total cost, money spent on subscription costs. Comparatively, the portion lifted out of the water on the on-premise iceberg represents the implementation costs, or only 9% of the overall cost of the solution.
On-premise solutions costs overall are much more difficult to define. The only fees that you see popping up out of the water are for licenses, usually a very small portion of the overall solution spend. But buried beneath the water lies the operational costs including upgrades, maintenance, rewrites, and patches and fixes. All of these components are much more difficult to predict and leave organisations struggling to nail down costs and operate efficiently because of it.
With on-premise solutions having the license fee as only 9% of the total costs, what are your alternatives? Cloud solutions are gaining more and more momentum worldwide and the driving factor is efficiency. At first glance, the investment in cloud solutions seems higher, but what must be realised is that we get more in return. The total cost of ownership for these solutions is lower, their costs are more predictable and these solutions allow you to focus more on your core business. Given the unpredictable nature of costs of on-premise solutions, this simply is not the case.
Another difference between the two solutions sets is the process of continuous development. Perhaps this is a bit of an obscure element to take into account when comparing the differences between software solutions. On-premise solutions hinder the process of continuous development, while this is the primary differentiator for cloud solutions. There’s simply no reason that a cloud solutions is not constantly up to date, upgraded and regularly enhanced. Cloud solutions are designed, in part, to be updated regularly.
Dating back to the years that software was shipped on CDs, many companies still deliver on-premise updates in a yearly or half-yearly release cycles. This is simply untenable in an ever-increasingly rapidly changing world of always on. Our clients must be able to respond rapidly to our customers and their service needs, and we must be able to respond quickly to customer demands and changes in the market.
Though continuous development is a term that’s likely more important to software designer types than others, it’s really just another way for us to recognise the need for solutions that are continuously up to date and ready for our use to serve our clients, whether they are inside or outside of the organisation. Operating systems mired in the past don’t deliver optimal results for any organisation.
On-premise solutions that must wait for half yearly or yearly releases means organisations must wait for the next ‘shipping moment’ for something that may have been ready for release much earlier. Workarounds become commonplace in scenarios like this. By experiencing more structural release moments, more commonly found in the cloud, users are able to receive new solutions as they are ready.
Additionally, more releases improves the feedback loop between clients and customers. In a static situation, once a product has shipped it’s not uncommon for a half year or more to pass. Thus, by the time customer feedback reaches developers, the likelihood is that the original developers on the project have moved on or are working on other projects. Their having to switch back to solutions that were created “way back” is not very efficient. Faster feedback makes sure that developers are more involved in the customer experience, and are able to respond quickly with improvements.
All in all, continuous deployment elevates the overall user experience - found in the cloud. The most likely future of support and IT services.
- » HPE edging out Cisco in cloud infrastructure space, argues research
- » AWS and Microsoft get FedRAMP approval for sensitive cloud data
- » A guide to planning for application resiliency in cloud environments
- » The future of AWS’ cloud: Infrastructure as an application
- » Why DevOps engineer is the number one hardest tech job to fill