It’s a beautiful thing when you can devise an elegant solution to a stubbornly persistent problem. In many ways, that’s what DevOps tooling is all about.
In the space of this article, I’d like to discuss the stubbornly persistent problems that keep Release Managers up at night and explore solutions that can help avoid and overcomes such challenges.
Like their peers in Change/Configuration Management, Release Managers hear many different opinions about formal processes and database governance. One popular belief is that a formal release management plan – detailed and well-enforced – is required for visibility, accountability, and productivity. Without it, upgrades and updates will be significantly delayed.
For Release Managers who oversee internal technology environments, these delays could translate to the disruption of vital services. For those responsible for solutions to be delivered to customers, the result could be a reduction in satisfaction and loyalty as well as the potential loss of business revenue.
Still, many find the requirements of a highly formalized and duly enforced release protocol unnecessarily onerous. Advocates of this view claim that rigid release management procedures hinder the flexibility needed to swiftly respond to problems and/or address the needs of end users. They argue that the introduction of strict guidelines forces too much hoop jumping from staff and that it will not only affect the fluidity of release tasks but also degrade morale.
These points are of course fair, but they’re not comprehensive and they assume a somewhat narrow perspective. Effective release management is helped by smart release management software that delivers:
- A collaborative environment, punctuated by team-wide process buy-in.
- Highly synchronized – and ideally automated – orchestration of many interacting parts, all moving at their own speeds.
With so many participants, complex technologies, and tasks involved, monumental issues are bound to arise – primarily, changes being made in a disorganized and uncoordinated fashion – when tight control over the RM function is lost.
Others relate to the question of release management challenges with a gamblers mentality and are drawn to risk-inclined propositions. Those belonging to this disposition will wonder why any policies are needed in the first place. Deadlines are being met and solution quality is being effectively maintained, so why bother with all the formality?
Failure to implement and enforce such procedures would inevitably create problems where they currently don’t exist. (Obviously, that’s something that smart release management software can help with.)
Database release and automation solutions can help address these issues. By enabling the creation, implementation, enforcement, and tracking of disciplined release management policies, a sufficiently robust solution promotes best practices by enabling smooth, seamless, well-governed coordination and execution of release management activities to the database tier.
For example, deployment script(s) can be generated with only the approved changes, roles and responsibilities can be clearly defined and separated, and access rights can be set so developers can perform certain tasks in development environments, but not in production environments.
Once policies have been effectively put into place, Release Managers often complain of yet another problem. Many feel that the value of their work is overlooked by others in the organization, especially when there are no high-profile issues to contend with.
But here’s the thing: that’s a really good problem to have. Successful release management isn’t about “putting out fires”, it’s about preventing them and if you’re doing that well, your contributions – while enormously important – are mostly un-felt.
It’s difficult to quantify and demonstrate the extensive effort that goes into effectively managing all the changes and fixes that go into a software or database release (while avoiding all the potential pitfalls and problems), unless a smart and comprehensive solution is being utilized.
Good release management software will be able to automate and accelerate important tasks, at the same time as it minimizes errors and risks. In so doing, it will shorten release cycles and save money.
The fact is that for a digital enterprise – and today, every enterprise is a digital enterprise – consistently tackling release management challenges before they fully materialize is the quickest way to push the organization forward.
And if the knowledge of your monumental contribution to that accomplishment isn’t enough to motivate and satisfy you as a Release Manager, rest assure that delivering such highly coveted business-side benefits as reducing downtime, improving time-to-market and accelerating release updates will definitely not go unnoticed by senior management.