Release management



Release management is the process of managing, planning, scheduling and controlling a software build through different stages and environments; it includes testing and deploying software releases.

Relationship with processes
Organizations that have adopted agile software development are seeing much higher quantities of releases. With the increasing popularity of agile development a new approach to software releases known as continuous delivery is starting to influence how software transitions from development to a release. One goal of continuous delivery and DevOps is to release more reliable applications faster and more frequently. The movement of the application from a "build" through different environments to production as a "release" is part of the continuous delivery pipeline. Release managers are beginning to utilize tools such as application release automation and continuous integration tools to help advance the process of continuous delivery and incorporate a culture of DevOps by automating a task so that it can be done more quickly, reliably, and is repeatable. More software releases have led to increased reliance on release management and automation tools to execute these complex application release processes.

Relationship with ITIL/ITSM
In organizations that manage IT operations using the IT service management paradigm, specifically the ITIL framework, release management will be guided by ITIL concepts and principles. There are several formal ITIL processes that are related to release management, primarily the release and deployment management process, which "aims to plan, schedule and control the movement of releases to test and live environments", and the change management process In ITIL organizations, releases tend to be less frequent than in an agile development environment. Release processes are managed by IT operations teams using IT service management ticketing systems, with less focus on automation of release processes.