You've heard about the Deployment Management practice part of ITIL4 (Information Technology Infrastructure Library version 4) and you would like to learn more about it?
Previous ITIL versions have placed focus on the processes. In contrast, ITIL 4 emphasizes practices while giving the organization the flexibility to implement specific processes. In this blog post, let's deep dive into the ITIL4 Deployment Management practice and understand what best practices can apply to your own context.
What's Deployment Management?
Deployment Management aims to deliver changes to environments in "the BETTER, FASTER, and CHEAPER" way. ITIL 4 Foundation describes the purpose of the Deployment Management practice and its importance between Change and Release Management. 3 practices are linked and necessary to deliver services both fit for use and purpose:
Change Control
Change Control (sometimes also called "Change Enablement") helps coordinate technical changes to maintain throughput and stability.
Release Management
Release Management focuses on when and how to make new or updated components available to users.
Deployment Management
Deployment Management is the technical vehicle that looks at moving new or changed service components from one environment to another.
Deployment Techniques
Zooming on the Deployment Management practice, there are several deployment techniques available and each company has its own preferences. Depending on their specific services and requirements, some use a combination of these approaches:
Phased Delivery
Phased delivery focuses on deploying changes gradually across multiple targets.
Continuous Delivery
Continuous delivery leverages DevOps principles, such as rollout in small batch sizes to support Continuous Integration for automated deployments.
Big Bang Deployment
Big bang deployment supports the release of features to all targets simultaneously. It's sometimes necessary to mitigate risks by using blue-green deployments that keep two live targets running (old and new) and facilitate traffic to one or the other, making for easier rollback.
Pull Deployment
Pull deployment allows targets to pull changes "on demand," such as polling a central system for new changes and self-updating as required. This permits the users to control the timing of updates and enables them to request software updates only when needed.
All the above-mentioned deployment techniques can be combined together depending on your needs and can be used for both on-premise and cloud deployments. Also, refer to our article helping you choose between 8 deployment strategies.
Deployment Management Best Practices
Modern application development creates competitive differentiation by enabling rapid innovation. There are some essential guidelines to achieve success when building and deploying:
Focus on decomposing and decoupling apps into micro-services to ease deployment and scale accordingly.
- Pack applications and infrastructure in the same bundle using infrastructure as code.
- Rollout with CI/CD techniques - the more automated the better
Focus on increasing the checks and feedback through
continuous monitoring, also for your non-productive Environments
Make sure you use a proper deployment tool that supports audit and change management
If your infrastructure or software development is provided as a service, make sure you have access to all information regarding past and future deployments
Ensure security across the whole deployment cycle. You should maintain software components from a central secured repository to avoid changes before deployment.
How to choose your Deployment tool?
There are plenty of tools available for managing your deployments. To name a few: Jenkins, Octopus Deploy, TeamCity, Bamboo, AWS CodeDeploy, XL Release, Azure DevOps, GitLab CI, etc.
Which key elements should you consider when choosing a deployment tool?
Team Knowledge
Deployment tools can require very different technical expertise. Make sure to take into consideration your team's expertise and experience when you select a new deployment tool. You want your team to like it so that it can be quickly adopted.
Automation Capabilities
As modern software development projects often use Agile methodologies, there is a strong need to deliver new features frequently.
That's why Continuous Integration (CI) and Continuous Delivery (CD) are key. In order to cut down the time spent on repetitive tasks, you need automation. Look for tools with great automation capabilities.
Compatibility
If you are part of a large organization, you will probably need to support multiple platforms. Make sure your deployment tool is compatible with the main operating systems: Windows, Unix, Linux, Mac OS, Android, and iOS.
Your deployment process should support popular languages like Java, JavaScript, PHP, Python, etc. and it should integrate seamlessly with tools like GitHub.
Integration & Extensions
Because what you need today can be quite different from what you will need in a year, choose a deployment tool that is actively maintained and that can adapt.
It should have a well-documented Rest API and the ability to trigger Webhooks. Integration capabilities leveraging Zapier or similar automation tools will help as well. Many modern tools like Jenkins also offer the possibility to build and install third-party plugins / shared libs.
Financial Considerations
There is a huge range of deployment management tools available today. While the best ones usually cost money, many are free. And there are lots of free software development tools that have been used to build many great apps!
There are many good reasons for an organization to use multiple deployment tools. And with many tools, it may be complex to get an overview of all cross-application deployments. That's why we have built the Golive plugin for Jira.
It improves communication by connecting to your deployment tools and aggregating useful deployment information in Jira, a tool often used by the whole organization. It displays your cross-platform deployment history, and also helps you schedule your next deployments!

Transform your Test Environment Management with Apwide Golive:
- Never hunt for environment info again,
it's all in Jira where your team already is! - Say goodbye to environment booking conflicts,
and hello to seamless test campaigns and demos - Keep your inbox organized,
by choosing the environment notifications you need via email, MS Teams or Slack - Streamline your environment planning,
with easy drag-and-drop on an intuitive timeline
Leading companies have already Golive as part of their DevOps toolchain:
Free trial / Free forever up to 10 Jira Cloud users!