Even when product owners and stakeholders are involved in formulating the strategy, they often struggle adhering to this in practice.
It's not always their fault. Product owners have their customers to satisfy. Some customers can be very demanding, or the product owner may just be feeling the pressure for high customer satisfaction. So for the purpose of this post, I'm going to assume that there are rational business reasons for a product owner's need for flexibility in the release practice and this isn't just a product owner behaving badly. If it is, here are my suggestions on handling difficult product owners.
Release Management Anti-Patterns
What are some of the issues that misalign business need with a development team's release management practices?
- There's a problem and I need a hotfix
- Users are complaining and we need an improvement fast
- There's a new marketing event scheduled and the app needs
- We're driving a price increase and need a big feature release
- How can we make a big workflow change easier for users
Let's look at these one by one and consider mitigation strategies
There's a problem and I need a hotfix
- Make sure the product owner understands the tradeoff by reducing the commit in the current sprint to support the hotfix.
- Illustrate and build awareness around the added testing costs
- Measure and benchmark the behavior (# hotfixes / time-period), communicate the impact to the roadmap, and single out product owners that have higher hotfix requests.
Users are complaining. We need an improvement fast
- Make sure to capture and reflect if the needs of a specific user group were missed.
- If this happens infrequently, consider scheduling minor releases before going onto your next major release. See more specifics on major/minor releases.
- If this happens frequently, consider shortening your release cycle.
There's a new marketing event and the app needs
- Make sure the marketing team is engaged when developing roadmaps and release schedules.
- Develop a communication/collaboration process so that you are informed as early as possible when a new marketing opportunity may impact the roadmap.
- Make it easy for product owners to update priorities in the agile backlog.
- Develop a branching strategy that can accommodate these opportunities.
We need a big feature release
- Make sure the team understands whether this a shift in business strategy that should require a review of the roadmap and the release strategy, or if this is a onetime event.
- Consider having shorter and incremental "alpha" releases for internal users and longer "go-to-market" releases that are customer facing.
Can we make a big workflow change easier for users
- If you need to roll out changes to different customers or user communities incrementally, then this capabilities has to be developed within the application. Add it to the backlog and develop a rollout strategy based on the application's authentication groups and roles.
- There are many third party tools to support A/B testing or you could build the capability in house. If A/B testing is needed, just make sure it's developed as a horizontal capability so that it can be leveraged across multiple applications.