We changed our name from IT Central Station: Here's why

What tips do you have for improving software release management processes?

Hi peers,

We know that there are many release automation tools available on the market to support software release processes. However, there are usually best practices when it comes to using software to automate processes. 

Can you share some tips on how to get the most out of release automation software to improve software release management processes?

ITCS user
33 Answers

author avatar
Real User

For proper release automation, I would suggest the following good practices:

1) Validate the quality of the code as soon as possible. For this, you can use linting, or tools like Sonar.
2) Build and deploy in development or continuous integration environment at least once a day, like in a nightly deployment. Whatever the developers have pushed in the repo, is checked before they come back in the morning this way.
3) Freeze the code that will be released as early as possible. Better to skip a release version if it produces errors while testing than integrating last minute changes.
4) Store your artefacts in something like Nexus and automate the whole cycle from the moment the developer is sure "that it works on his/her machine".
5) Don't ever do something manual in the release process. Script it. Schedule it.

author avatar
Top 5Real User

Tips to better release management depends upon the current maturity.

For an organisation that has no automation, please bring in the automation, gradually. For an enterprise system on Azure PaaS, the release process, despite lots of ARM based automations used to take couple of hours because it needed lots of checks and approvals initially. Build the trust on the automation as you grow and the time consuming manual checks will decrease over time. But never cut down on the quality and security aspects. Validate and get approve all deviations.

For an organisation that is already doing all these, see, how to increase frequency of releases, how to decrease the change footprint? it may need restructuring the app or the system over time to bring in the agility.

On the very basics, manage your traceability for each and every change. Avoid manual changes, write scripts, test and release. Create a robust approval system.

author avatar
Real User

I propose GitLab Enterprise Ultimate and SonarQube 7.2. You can use GitLab for versioning your release and integration and deploy with CI/CD with developing yml for scanning with sast template + SonarQube .

Find out what your peers are saying about Microsoft, Red Hat, GitLab and others in Release Automation. Updated: January 2022.
564,599 professionals have used our research since 2012.