In work environment, we frequently encounter the words "deployment" and "release" in technical context. I often hear them used interchangeably also. It is mainly related to "Release and Deployment Management".
For example, Information Technology Infrastructure Library (ITIL) defines the aim of Release and Deployment Management as:
ITIL Release and Deployment Management aims to plan, schedule and control the movement of releases to test and live environments. The primary goal of Release Management and Deployment Management is to ensure that the integrity of the live environment is protected and that the correct components are released.
Source: http://wiki.en.it-processmaps.com/index.php/Release_and_Deployment_Management
Additionally, I found the below technical definitions but these are not the only usages:
release:
1. Making a version of software available to the public.
2. A software version which has been made available to the public.
Source: http://www.computeruser.com/dictionarydeploy: To install, test and implement a computer system or application.
Source: http://www.webopedia.com/
Wikipedia's "software deployment" article mentions below but it looks like the below definitions can not be applied to all kind of deployments in an IT environment:
Software deployment is all of the activities that make a software system available for use.
The release activity follows from the completed development process. It includes all the operations to prepare a system for assembly and transfer to the customer site. Therefore, it must determine the resources required to operate at the customer site and collect information for carrying out subsequent activities of deployment process.
Questions:
What is the difference between "deployment" and "release"? (This question asks a general difference in a technical context but to be more specific, it can be related to a "code change".)
Can we use these words interchangeably?
For example, Can we use both sentences below and can they have the same meaning?
I will release the change to production.
I will deploy the change to production.ITIL also defines one of the Role/Sub-Process as Release Deployment.
So, is "release" used as a noun mainly in this context?
Are releases always deployed?
Can we release a release?
Note: I would like to get answers from real life experiences about the usage of these terminologies in work environments and release management processes.
Note2: Great subjective questions invite sharing experiences over opinions. Certainly experiences inform opinions, but the best subjective questions unabashedly and unashamedly prioritize sharing actual experiences over random opinions.
Source: http://blog.stackoverflow.com/2010/09/good-subjective-bad-subjective/