One sure way to liven up a meeting is to ask attendees for a definition of quality. My experience has been that this is most entertaining particularly if you have both devops and testing in the room. It turns out that many people feel very passionate about Quality. It also turns out that many have different ideas on what quality actually is. Who knew? Diversity of ideas are not bad but it can impact a teams understanding of quality. The consequence is that it could possibly hinder a team's ability to delivery quality product.
To help people understand the challenges around quality and to try clarify what quality might be in their context, I developed the following quality workshop.
Purpose of Quality Workshop
a) to get a working definition of quality that most people are comfortable b) to outline a manifestation of quality in terms of quality attributes c) to identify ways in which we can these quality attributes can be acted on
Who should attend
Depends on what your trying to achieve, but if you're a team delivering product, I would suggest your key stakeholders come along. That may mean product owner, developers, testers, Ops. If you can get your business there too that's a big plus.
Tools for Quality Workshop
- A set of Quality Attributes (I've known these also to be called Quality Characteristics, or CFR's - Cross Functional Requirements) printed out and placed on a wall.
- PostItNotes (of course!)
- some pens.
Process for Quality Workshop
- Ask people to write down on a post-it note their understanding of quality
- Place the definitions on the wall and ask people to read them (or read them out)
- Note the diversity (if it exists, it typically does). Bring up the subjectivity of quality and how difficult it is to agree on and quantify.
- Ask what the implications of this might be throughout the delivery lifecycle (e.g Design, Development, Ops)
- You can dot vote to try and get some sort of agreement on a working definition of quality*.
* My working definition of quality is the Jerry Weinberg one "Quality is value to some person". If no-one puts this definition up on the board, I like to add it as it encourages a discussion on the subjectivity of quality.
If you've got this far without some major outburst or spat, congratulations! Next step is to try and parse what quality might look like.
- Ask people to read the quality attributes on the wall
- Ask them to dot vote 3 what they consider to be the most important quality attributes
- Collect the top 3 quality attributes and put them on a whiteboard
- Ask the group to identify 3 tasks for each particular quality attribute and to write them on a post-it note.*
- Place the post it notes on the whiteboard along side the quality attribute
- Run through the post-it notes. Discuss the viability of these and how to make these tasks happen.
- Visualise and share this information to the broader organisation.
* I avoid using the word 'testing' as I want people to think about other factors that influence quality. Testing is important, but testing helps us evaluate quality. Unless its acted upon, it doesn't help us build quality. Sometimes I like to prime people by providing a couple of non testing examples such as Code Reviews, Monitoring and Security by Design.
I've found these sessions generate a lot of discussion and can become quite heated.
I wouldn't run a quality workshop all the time, but its really useful iron out at perhaps an epic or feature level, what quality might be and how a team can work together to implement that vision.
(Learn more on this topic by attending my Quality Matters Workshop)
Let me know how you get on!
Photo Attribute: Quality by jason Taellious https://www.flickr.com/photos/dreamsjung/