Hi again, so alongside of looking at great examples of software release/change comms, @sauloperez and @Rachel and I also spoke about how we do the release process and the launch/communication to users needs we have alongside of the technical release process we have.
Here’s what came out of that discussion:
WHO COMMUNICATES
When communicating about changes we use a cascading approach, where the software team communicates to the instance managers (currently via the release notes), who then communicate to their users (via whichever channel, social media or newsletter or whatever).
TYPES OF RELEASES
There are 3 “types” of releases that we have (or would like to have):
- Small releases (small changes, bug fixes and tweaks) - version n.n.n
- Feature releases (beta or full, the launch of a feature e.g. subs beta) - version n.n
- New versions (like Spree 2.0 or a complete overhaul of something) - version n.0
HOW TO MANAGE COMMUNICATION OF THESE RELEASE TYPES
We believe that each of these types require a different level of communication. They all should have release notes (is the theory), however:
-
Small releases only require a notification in Slack (channel TBD) announcing that it has gone live and linking to release notes.
-
Feature releases are worthy of a global blog post, talking about what has been launched, how it works, what the benefit for the user is, and even how we want to evolve it next (if there is additional functionality already slated for delivery in the pipe).
-
New versions require a project management-style approach, where there is a comms plan in place that determines how and when instance managers are involved/communicated to, and how the changes will be communicated to users. Likely this will include blog posts, but in the case were there are staggered rollouts the comms should be designed around this.
IMPLEMENTING THIS APPROACH
Here’s how we think our processes need to change to allow for this release communication:
-
We start doing frequent, small releases. We don’t wait for things, we work like a release train were each week (as a suggestion of time) we will release the changes we’ve made regardless of size. If you miss the train this week you get on the one next week. <-- @sauloperez will look to implement this, and discuss with devs.
-
For any feature release there must be a dev (the release manager) and a comms person assigned to create the blog post about the feature. That way the comms person understands what is being released, how it works, and how it benefits the users through the representative of the team who built it, and the message is crafted in a way that is user-friendly and well written. The comms person role can be shared across the comms/product team so that it’s not always @Jen having to write it. And instance managers can then use their own communication channels to broadcast the blog post (or translate it) to their users.
-
We look at our project management process for large pieces of work like spree, ensuring that things like a comms plan and rollout plan are designed well in advance, that stakeholders are included in these plans and aware of their roles, and that it’s a simple thing to then implement the plan. The key point in here is that we do this at the beginning of the process so that implementation and launch is considered at the same time as we think about design of solution and build process.
OK, so that’s it. We’d like to implement this process, so please reply on here with your thoughts/worries/joy/inputs.
Ping @luisramos0 @maikel @lin_d_hop @Kirsten @Jen @Rachel @MyriamBoure @matt @kristinalim @EmilyRogers @lauriewayne1 @NickWeir @MSFutureFarm for your thoughts.