The fundamental goal of release management is strategising, scheduling, and managing the development, testing, and release deployment. Efficient release management ensures delivering the new feature or functionality demanded/required by users/customers without compromising the existing integrity of the services/product.
To improve security and maintain integrity DevSecOps approach is embraced by leading organisations for a smooth, fast and safe deployment of applications.
In this article, we’ll discuss various releases and the release management approach outlined in ITIL.
Types Of Application Release
Application release can be categorised into three major types. A correct mix of these releases ensures efficient product performance and enhanced security.
The funnction of the enterprise release manager is to ensure all three types of releases are executed for every application as per the requirement.
Major Software Release
Major release constitutes the biggest and most significant type of software release. In such releases generally, the existing version of the entire software is updated to a newer version.
The latest version generally overrules the older version. In simple words, the application undergoes a re-vamp.
A major release features considerable product/service changes and rolls out key improvements in functionality. Examples of major releases are:
- User interface renovation with updated aesthetics and functions for a fresh look and feel
- Game-changing new feature releases
- New integrations plug-ins for better hardware and software compatibility.
This is the least required release.
Minor Software Release
Minor releases are the regular updates that are installed in addition to major releases. In simple words, rather than replacing the current version, some elements are edited to improve the existing functions.
Examples of the minor releases include:
- Limited new features release and updates in existing functionality
- Minor bug resolution through ongoing security patches
Minor releases typically run regularly. (frequently in the background).
Emergency Software Release (Hotfixes)
Hotfixes and DevSecOps go hand-in-hand. CI/CD pipelines help you maintain continuous tracking so that any vulnerabilities or bugs can be immediately identified.
Emergency releases or in technical jargon known as “hotfixes” are performed when a sudden or pressing concern requires a quick fix. These include:
- Critical bugs completely stop the functionality of the app or a particular feature.
- Any recently discovered critical security vulnerability
6 Approaches Defined By ITIL For Release Management
ITIL v3 has elaborated six approaches that can be utilised for release and deployment management. Most organisations include a mix of these approaches as a part of their enterprise release management best practices.
Big Bang Approach: New application or updated feature is released to all users at a specific time.
Phased Approach: Feature updates and new products are initially deployed to a fraction of the user base. If no bugs are reported, and the application runs smoothly, the deployment is released to the entire pool of users.
Push Approach: the application components from a diverse location are first released into a central repository. Then, the entire product or feature update is pushed out to the target audience/locations at a specified time.
Automated Approach: Automated workflows and distribution mechanisms are leveraged to release updated and new features into the production environment.
Manual Approach: Leverages manual workflows and activities for distributing a release.
Release management is an integral part of software development. And therefore doing it the right way with professional assistance can help you achieve desired business outcomes.