What is ITIL release management?
The purpose of ITIL release management practice is to ensure the new and changed services are available for use.
In ITIL the definition of a release is a version of a service or other configuration item, or a collection of configuration items, that is made available for use.
A release will include many different infrastructure and application components that collaborate to update and deliver a new change of functionality. This could be training and documentation/release notes for users and IT staff with updated processes, features or tools and anything else subsequential to a release that is required.
Components of a release may be developed by the service provider and third-party involvement where integration is required. There can be various sizes of a release that range from very small where a minor change or feature will be required or a very large release which will involve a collaboration of different components that will deliver a completely new service.
As part of a release, a plan and schedule with all the documented components will be made available prior, so that all customers and stakeholders are in an agreement and aware of the up and coming change release.
A release post-implementation review (PIR)
There are occasions where a release could fail or suffer issues when implemented. It's important that a post-implementation review (PIR) is carried out afterwards to ensure preventative measures are put in place and lessons are learnt to ensure the success of any future releases.
In regards to an Agile and DevOps environment, there needs to be important attention applied to release management activity after deployment is carried out. There will be stages when infrastructure changes will be deployed in small steps and release management can then enable the new functionality at a later planned date.
Feature Flags
Feature flags enable specific features to be released to individual users or groups in a coordinated and controlled way. The new functionality can be deployed to a live/production environment and then released to individual users or a particular group of users when needed.
DevOps will create the releases in their environment with release management involved with the continuous integration and continuous delivery toolchain.
The development team will be initially involved with the decisions about the release but one dedicated individual may be involved with the tools of the release.
A release should be detailed by a release record on an ITMS tool. Release records are linked to configuration items and change records need to be associated to provide the information around the release.
Release Management need to ensure they work across organizational boundaries to ensure components are compatible and ensure the user experience is flawless. Third-party components need to be accounted for by release management and planned for when these are released.
Plan
A release management system has to be created and set up for the planning stage to ensure the organization has defined the structure the release will take. It's imperative a roadmap is created and the team can follow it as they move through the different stages to push through the release to deployment. This can be as simple as a checklist with detailed criteria of actions and tasks to complete in a sequence that various teams are responsible to carry out. Some releases are specifically deployed to provide improvements and these should be planned and managed in the same way as any other release.
Improve
New or changed releases may be required to deliver improvements, and these should be planned and managed in the same way as any other release.
Engage
The content and cadence of releases must be designed to match the needs and expectations of customers and users.
Design and transition
Release management needs to ensure that new or changed services are made available to customers in a controlled way by informing customers and scheduling the release update as agreed.
Obtain/build Changes
Components are normally included in a release and delivered in a controlled way.
Deliver and support
Releases may impact on delivery and support. Training, documentation, release notes, known errors, user guides, support scripts, etc. are provided by this practice to facilitate service restoration.