Building a customer-friendly software development lifecycle
Peter Björkman, CTO at Snow discusses how the company is altering its product release strategy to better meet the needs and working practices of enterprise IT environments
If we look at a traditional software release plan, on average every 18 to 24 months you issue a major release, and in between these there might be a couple of minor enhancements.
Taking Snow as an example, basically we historically targeted releases to happen at six month intervals. For many years, this approached served us and our customers very well.
However, it also has its drawbacks. For example, one potential issue is that if we were to issue a minor release and then a week later we come up with a new innovation that we wanted to include in the product, it could take another six or even 12 months to reach the market, because of the limitations of this release plan.
Another downside to this approach is that bigger and longer projects tend to be higher risk. The last major release of Snow License Manager had 125 new features and needless to say, 125 new-developed features have their risks – quality assurance risks, time to market risks, knowledge transfer risks etc. – which always creates something of a compromise when it comes to the decision to release the product.
Last but not least, every major and minor release requires a physical upgrade, either by customers themselves or a service delivery consultant.
This not only carries an administrative overhead, it can also involve a fair amount of red tape in terms of change management processes. As we are able to take advantage of new agile ways of developing software, we can re-think the traditional software development lifecycle. We call this new approach a ‘feature release cycle’. We will still plan for major releases every 18 to 24 months, but now, during the period between them we will have feature releases on average every other month.
What are the advantages of this approach?
First and foremost a feature release is much smaller in size, only incorporating one to four new features at a time. All features are developed in a short time span – one month for development, and a second month of testing. The good thing about this is if we have the same scenario as described above (that just after a release we come up with a new innovation or there is an important change in the SAM environment), we now have at the most four months for it to reach the market – in fact it could take as little as two months.
This means that we are now as agile as the market – every quarter we see new license models, new subscription models etc. and we need to respond to these with equal agility to develop and support these models quickly. Another advantage is that we can be more dynamic in what we deliver in a feature release.
We can change things, we can remove things, and we can postpone things to be added at a later date. Because we still have a short time frame between releases it’s only a matter of a few months to when the new feature can be included. In the past, with the traditional release cycle, moving it from one major to the next or to a minor in between the two, would mean a period of six (but most probably 12) months before that feature would see the light of day.
This new approach is much more dynamic and agile. A huge benefit for our customers is that these releases are now part of the Snow Update Service and the software is automatically distributed and installed (still optional for the customer though). Every customer with a valid maintenance agreement is eligible to receive these updates. We’ve adopted this approach as it enables us to respond to customer requests much more quickly while also reducing the risks associated with big development projects.
The feature release cycle will also play an important part in the speed of development when integrating our two new acquisitions into the Snow solution portfolio. We are now able to quickly and dynamically integrate the enterprise mobility and SAM automation capabilities with our existing portfolio under the Snow brand and have the same look and feel and quality of our products in a short time.
With the traditional plan of majors and minors, we would have already set in stone our plans for at least the next 18 months. Now with the feature releases plan we can be quick and dynamic in adding such new functionality.
The first of the feature releases was made available in early April, and the second one was just released – both delivered through our Snow Update Service.