Eight Reasons for Continuous Deployment
The SaaS revolution has been a liberation for companies: anyone can have access to software without the need for local database admins. And with it comes the option for rapid and safe Continuous Deployment – a step we’re committing to even more with the latest version of TOPdesk. Here are the reasons to be excited about what will happen next.
It’s freeing up the evolution of technology, and how it adapts to the market
Developers will be able to adapt more quickly to what’s happening in the market. Previously, a development project might have lasted a year or two. By the end of that time the world’s changed, so what you’re delivering might not be the best fit in the market you’re trying to reach. For example, you could start developing Twitter integration today, but in two years’ time it might be the case that another social media format is more appropriate, and you might have to adapt by starting up a new project.
Solutions come more quickly
On-premises versions can lag, and customers struggle with issues that have already been resolved elsewhere. And consider how fast technology changes! A version of Windows might be released with a new browser, or major security vulnerabilities are uncovered; Continuous Deployment brings you the advantages of always being up-to-date. This comes with side benefits such as more responsive bug-fixing or faster updating of supporting documentation.
No extensive overhauls
If you looked back at Facebook or Amazon from two years ago, you’d probably notice several differences from the way they work now. They’re being gradually optimised, but you never really notice on a daily basis. Biannual updates can mean large changes, particularly for those upgrading from old on-premises versions; with constant low-level improvements however, significantly large elements aren’t all being changed at the same time. This means updates are much easier for the customer to get to grips with: more standard, and simpler.
The customer can be more like a partner
Before Continuous Deployment, customers wouldn’t see any of whatever you’re working on – sometimes for years. This isn’t just time wasted, but also a missed opportunity for sending feedback to the development teams. We’re likely to see more projects done in collaboration with customers: you might be able to deploy updates universally, while only activating these for a select number such as only those with a particular request. These customers will then be invited to provide feedback, before the feature is rolled out to everyone. Development teams get faster and better feedback; and customers, who often enjoy the intimacy with the teams, benefit from an outcome that matches far more closely what they wished for. At TOPdesk, we have our product roadmap published, so you can see what is going on, give feedback and – hopefully – start looking forward to updates like a kid to Christmas.
Steering a project mid-journey
The development team getting more feedback has other advantages: for example, they can adjust your course during a project. As soon as you get real feedback, you can act on it. Without this check, you might be developing an entire project on an imprecise assumption about customers’ needs. Shortening the feedback loop ultimately makes it much easier for you to develop products that are better matched to actual environments.
Support teams have more insight
When internal support departments have to be intimately familiar with the workings of several different versions, it can be a difficult job. In an ideal Continuous Deployment scenario, every single customer is on the most recent version you’ve created (or more typically, staged releases of the most recent version). And while the customer has all the benefits of the latest version, the support team get better insight into how the software is used.
Getting bugs every now and again is an inevitability. But staged roll-outs can act as an effective countermeasure to reduce the severity of the worst bugs. By minimizing exposure to the unexpected, you reduce the number of people affected, as well as the length of time that a bug is out in the wild. Furthermore, the frequency of testing implies a certain degree of automation for development, tests and deployment. These extra opportunities for automation help to reduce natural human errors.
Thinking beyond your department
Finally, it’s important to say that the most effective route to success is to involve people from several departments and have them work together – not by email, but in person. Creating one strong deployment line gets everyone thinking beyond their usual horizons. A surprising number of opportunities come up that you wouldn’t normally see. Not only have you got the buy-in of different stakeholders, but their unique perspectives make sure you have the right solution for each problem at the right levels. As far as the future goes for Continuous Deployment, we think the real innovation will grow from meet-ups such as these.