LF

The Hats of Release Management

23
MAY, 2018

by Niall Crawford

I was in a workshop recently and I asked the client to “describe their Enterprise Release Management Process”.

A simple enough question, however,  their answer was somewhat misaligned to my expectation.

Client: “Well first the Test Manager raises a CR for a new Release and then this guy here runs Jenkins to create a package and  then we do [this and that blah blah blah]”

 

 

Enov8: “Mmm! Ok you kind of described a Change Request followed by a Deployment. However, I was thinking somewhat broader. I was wanting to understand how your organization would manage a Portfolio or Quarterly Release. And I’d assume the process you described is not that?”

There was some “Umms & uhhs” and then I realised that they had organised a meeting with engineers responsible for deployment. The kind of guys that might use a uDeploy, Bamboo, Octopus, or Electric Cloud. Essential roles, yet not the ones I had necessarily expected in this meeting.

Mmm … my bad! … time to change the purpose of this workshop.

To be fair, it didn’t impact me or the client too much, as our solution crosses the whole release spectrum, of which “Enterprise Release Management” is just one facet. However, perhaps next time I am a little clearer on my audience and expectations.

So, with that in mind, what are the roles & responsibilities of Release Management?

If I was to look at the Release Management Spectrum I can clearly spot 2, potentially 3 roles.

  1. The Enterprise Release Manager
  2. The Deployment Manager

Two complementary, yet different function (or set of ‘hats’).

So, what are the responsibilities of these “fashionable” fellows:

The role of the Enterprise Release Manager

An overarching role typically focussed on moving enterprise changes into production. Or the person responsible for the Agile Release Train.

Day to Day Responsibilities:

  • Enterprise Release (Portfolio) Scoping
  • Pre-Release Communication – Advertising the broader purpose of the release & ensuring leaders are aware.
  • Release Registration i.e. Project Onboarding
    –  Define phases / stages
    –  Define activities to be completed in each phase
    –  Define milestones & stage gates
  • Demand & Contention Management
    Note: Typically, in conjunction with Test Environment Management
  • Enterprise Release Calendars (big picture communication)
  • Enterprise Release Tracking / Performance Measurement
  • Enterprise Release Risk Management
  • Status Accounting & Reporting
  • Post Implementation Reviews for Lessons Learnt & Continuous Improvement

Strategic Responsibilities

  • Enterprise Release Governance Strategy
  • Promotion of Deployment Standards
    –  Implementation Planning
    –  Roll Back Planning

Key Skills

  • Stakeholder Management – Stakeholders across the IT community and include Dev, Ops, Test & Project Managers.
  • Ability to manage up & manage down – Enterprise change impacts the business and the key executives.
  • Solid ITSM experience – Release & Change are core to ITSM best practice.
  • Solid Project Management experience – At the heart of ERM is master scheduling & tracking.

The role of the Deployment Manager

In my opinion the heart of effective DevOps & CICD (Continuous Integration / Continuous Deployment). A relatively hands-on and technical role and potentially a very technical role as you endeavour to automate everything across your system stack.

Day to Day Responsibilities:

  • Source Version Control, Branching & Labelling – Although may fall under the Software Configuration Manager.
  • Build Management, Unit Test & Packaging – Ideally fully automated.
  • Definitive Software Library / Release Repository – Establishment of ‘source of truth’ (SSOT) to promote both promotions & rollbacks.
  • Deployment / Implementation Planning – Ensuring that tasks are communicated, coordinated & ideally standardised.
  • Deployment Automation – Promoting streamlining and reduction in manual error.
  • Shakedown
    –  Ensuring target solutions are still operational & healthy.
    –  Ideally using End to End Test Automation (aka Test Synthetics).
    Note: Often passed to the Test Environments and/or Test Automation team.

Note: The above uses relatively “application-centric” language, but fundamentally the above tasks can be applied to sister operations like infrastructure operations (e.g. build, provision, configure & decommission) and data operations (fabricate, extract, profile, transform, validate, gold-copy & load).

Strategic Responsibilities

  • Promotion of Build Standards & Automation
  • Promotion of Deployment Standards & Automation
  • CICD Strategy

Key Skills

  • Broad Technical Skills -Enjoys getting hands dirty and not scared of the Environment Stack (Apps, Data & Infra).
  • A Team Player – Working closely with different delivery teams e.g. Engineers, Developers & testers.
  • Solid Software Engineering experience

Enov8 Tip! Don’t put your worst developer in this role, as it will fail.

Summary

The above was just a glimpse at the two types of “release management”, however every organisation has its nuances and expect to see different titles, responsibilities and some overlaps.

If I was to explain it as simply as possible, however, I’d offer this:

  • Enterprise Release Managers are focussed on delivering organizational change at scale.
  • Deployment Managers are focused on tribe/team activities and rapid system change.

And, both are essential, especially as we try to marry the world of Agile and DevOps.

Niall Crawford

Niall is the Co-Founder and CIO of Enov8. He has 25 years of experience working across the IT industry from Software Engineering, Architecture, IT & Test Environment Management and Executive Leadership. Niall has worked with, and advised, many global organisations covering verticals like Banking, Defence, Telecom and Information Technology Services.

Relevant Articles

Why Cloud “Server” Tagging Strategies Are Important

15 OCTOBER, 2018 by Christian Meléndez Preamble A key part of Enterprise IT Intelligence is understanding you Cloud Resources. And where better to start than using the "elegant" concept of Tagging. A concept used across the various cloud and infrastructure management...

World Quality Report 2018-19

26 SEPTEMBER, 2018 by Niall Crawford World Quality Report 2018-19 The results from the 10th anniversary edition of the World Quality Report are conclusive: 99% of respondents are now using DevOps practices in their organizations. It appears the focus is no longer on...

Measuring Your DevOps Maturity

14 September, 2018 by Sylvia Fronczak Incorporating DevOps into your organization is not a zero-sum game. It is a journey. And like most journeys, it can be measured. When measuring your DevOps journey, you need to show progress as well as setbacks. Additionally, it's...

THE SEVEN HABITS OF EFFECTIVE DEVOPS AT SCALE (Infographic)

03 SEPTEMBER, 2018 by Niall Crawford Preamble All too often we see companies embracing agile by breaking up their teams up into tribes and letting them go for it. An approach which has the “early benefits” of appearing like your teams are doing the right-thing...

Here There Be Dragons! Mapping IT Environments

25 August, 2018 by Niall Crawford A short article by our CIO on why Environment Mapping (or call it "good" Configuration Management if you wish) is so essential to controlling an organizations IT delivery capability and cost optimization.   Why Map your IT...

Beyond Cloud – Embracing the Playbook

26 JULY, 2018 by Niall Crawford Deploying an instance in AWS, Azure or Google is typically a straightforward process. However, architecting, managing and optimizing your end-to-end platforms that consist of application tiers, data tiers, integration points and...