This phase involves the release management where change management process and software releases are being scheduled. This is to ensure that the deployment later is properly orchestrated which follows all the necessary procedures and obtain approval from the Change Advisory Board (CAB). Refer to the release management workflow in figure below. Tools such as Apache Maven can be utilised in for release management as described as follow:
|Apache Maven||An open source build automation tool that is used to build and manage software projects. Its release plugin can assist in release management.|
Release Management Workflow:
Figure 2-17 Release Management Workflow
2.8.1 Release Management Workflow
Release Management is a process responsible for planning, scheduling, and controlling the build, in addition to testing and deploying releases. Following are the descriptions of the release management workflow:
1) After build has been tested and passed successfully in development, operations team shall make a release plan to identify the changes made, the risks imposed and release schedule.
2) The build shall then be released for user acceptance test to identify its compliance to business requirements.
3) If user acceptance test is deemed successful, the test results shall be used for release preparation. Otherwise, the build shall be reviewed before releasing for acceptance test again.
4) Test report shall be properly compiled with release plan and submitted to Change Advisory Board (CAB) or the operations team for approval to implement the change to production environment. If the plan is rejected, the release plan shall be reviewed to meet the new requirements. Otherwise, the release can be deployed in production.
5) Once approval has been obtained, operations team shall schedule for release deployment. If release has been successfully deployed, operations team shall proceed to operate and monitor. If the release failed, the release shall be reviewed again to fix the issues based on the feedbacks received after the deployment.
2.8.2 Release Phase Deliverables
Release phase deliverables shall include the following:
- Release plan – A document that include the details of changes made, the risks imposed and release schedule
- Change request – A document that specifies the changes that will be implemented in the next deployment cycle. This document requires approval of CAB or operations team.