Tag Archives: workbox

Book review: A practical guide to Testing in DevOps (Katrina Clokie) – get it, read it!

Headline: get this book! read this book! Link: https://leanpub.com/testingindevops

Katrina Clokie’s book “A practical guide to Testing in DevOps” is a “must read”, and not just if you are a tester encountering DevOps. As Katrina says in the preface: “This book is for testers who want to understand DevOps and what it means for their role. It’s also for people in other roles who want to know more about how testing fits into a DevOps model.” It is engaging, informative, full of useful examples, case studies and evidence, and gives pragmatic, thoughtful guidance that encourages us – the readers – to use the information provided to craft our own approach based on our own circumstances.

I’m particularly pleased with three of Katrina’s themes:

  • this is about people as well as technology – how people engage, communicate, cooperate, solve problems, achieve goals – together;
  • separating the activity of testing from the role “tester” – the activity is needed, the role may change;
  • the purpose of testing is to contributing to our shared understanding of, and delivery of, what our stakeholders, customers, users, colleagues require from IT: a subtle and changing mix of speed, predictability, quality and a great user experience.

I kept finding points in the book that are applicable for any project, any organisation. There are useful ideas in this book if you are working in a DevOps environment, of course, but I believe you will also find it a source of useful ideas and techniques what ever your project methodology. Katrina provides chances for all of us to review our current position, and just shake it up a little, to see if we can improve. For each of us, for each organisation, team, what we need to do is different. Katrina is rightly emphatic that there is not one right answer, instead she provides aides to thinking, communicating, problem solving.

I really like the way Katrina references and quotes so many colleagues across the industry – this really helps build the feeling of a community working together, sharing ideas, not always agreeing, but debating openly and constructively.

She encourages us to try ideas and propose changes on a small, experimental scale if we or our colleagues are nervous “…spend an hour to give something new a try…”

After an introduction to the concept of DevOps, the book is divided into six main sections:

  • Testing in a DevOps Culture;
  • Testing in Development;
  • Testing in Production;
  • Testing in DevOps Environments;
  • Industry Examples;
  • Test Strategy in DevOps.

I was pulled into the book straight away. Highlights for me in the first section are:

  • visualising the test strategy – what we think we are doing, what we are actually doing… and what we should be doing. Newsflash: get the people without “tester” in their job title to do the discussions, and as the “tester” listen, facilitate… and allow the others to challenge your assumptions!
  • blazing a trail – really good ideas, hints and tips for building meaningful multi-way conversations where we listen as well as speaking… Forging the pathways between groups, teams and individuals, and reinforcing those pathways by rich rather than fast communication.

I have made so many notes and comments, just on that first section – it sparked many useful ideas, reinforced some thoughts, and provided me with new tricks, tips and tools that I shall try out.

In the second, third and fourth sections, Katrina provides examples and evidence for how testing – the activity – takes place successfully outside Testing – the team or Testing – the life cycle phase. This is such a refreshing read; my own experience since I started in IT is that good, productive, thoughtful testing can be done by people other than testers, and during activities not called testing. Developers, Ops folk, Support teams, Sales, Marketing – many people in an organisation can do good testing, often with a focus that the “Tester” may miss.  She discusses the advantages and risks of testing in development, production and DevOps environments, showing options for how risks can be mitigated, whether by use of tools, experimentation, exploration, group activities, process changes, shifting left and/or shifting right.. I’m not going to share too much here, just encourage you to buy and read the book!

The fifth section, the industry examples, is useful because it provides a wide range of approaches. Not all of us will find the same approach appropriate; something essential to success in one organisation may be damaging in another. There is a good mix of methods, tools, approaches, and types of testing covered, in this section and in the others, so you should find something to use as a starting point for making your own model.

By the time I reached the last section of the book, I had a mass of ideas, notes, and things to follow up, and I would be surprised if you did not feel the same way.

In the final section, Katrina brings everything together to help you define your own strategy for testing DevOps. Your’s will be different. It will be the strategy that is right for your team, your organisation. In this section she helps us to think about our organisation’s appetite for risk: I also have found this to be extremely useful point to consider and discuss. Are my stakeholders risk averse, or risk takers? Am I aligned with them? At this point, should I challenge or support their stance? Katrina provides useful examples of the type of question to ask in order to understand appetite for risk, identify which risks are of importance, and from that decide what activities will mitigate the risk. Those activities might include testing – the activity – but there will very likely be other activities that will mitigate the risks just as well.  From this we can draw up a strategy for testing, acknowledging that it is part of but not all of the activity required to provide our stakeholders with the quality, speed, predictability, risk mitigation and so on that is right for their circumstances.

Whether you are working waterfall, V-model, W-model, Iterative, agile or DevOps – you’ll find some useful ideas in this book.

A good ending to an excellent book, which I have no hesitation in recommending. Thank you Katrina!

 

Advertisements

Book recommendation: “Creating great teams” by Mamoli and Mole

Here is a new, interesting, informative and easy to read book on forming teams. “Creating Great Teams: how self selection lets people excel” by Sandy Mamoli and David Mole takes the reader step by step through the process of building teams by enabling them to self-select.

This book is based on the “belief that people are at their happiest and most productive if they can choose what they work on and who they work with” – an appealing theory, but does it work in practice? The authors do not just present a theoretical construct, they describe a case study of an organisation where they were successful in implementing the self-selected teams method, and they discuss their fears, problems and blockers honestly, showing how they overcame obstacles. The refer to other organisations that have used the method, and provide qualitative and quantitative evidence in terms of anecdotes, results of staff surveys and company results.

The book is divided into short chapters, starting with an explanation of the ideas, then step by step through planning and preparing for self selection, the self-selection workshop, and importantly, the followup required to implement, launch and support the new teams. Each chapter provides checklists, guidelines, hints and tips, and practical experiences.

So – what is self-selection? When teams self select, instead of managers assigning people to teams, the teams choose themselves. Given the projects that are required, the people within the organisation choose which project they want to work on.

I was lucky enough to meet Sandy at Agile India 2017, and when she described the method to me I was excited by the concept, but at first sceptical. I could see problems: what if there were project no-one wanted to do? What if everyone wanted to work on the same project? What if there were people no-one wanted in their team – wouldn’t it all be a bit like sports lessons at school (where I was always chosen last…)? Sandy & David show in this book that they faced the same doubts, and they show how to overcome them. Happily, rational, intelligent adults react well to responsibility and choice.

In this review, I will not go into detail about the methods they use and the checklists they provide. I urge you to buy the book! It is really good value and will make you think anew about how you build teams.

ISBN 978 1 68050 128 5

https://pragprog.com/book/mmteams/creating-great-teams

Get it, read it, think about it, notice the effectiveness of the working method.

Quilting and hacking

Two blogs to which I subscribe had new posts this week, and they just fitted together:

Now I know sometimes I can be a little obsessive about the analogy between sewing and IT; the need for a workbox, the need for new ways of using old methods, the way the projects are similar… but I urge you to read them both and compare.

A project works when you understand the materials you are working with, how they fit together, and how you can modify them. Repurposing happens with fabric and with code. Hacking can be a good thing – with code and with fabric. But you need to understand the pillars for success. The Googletesting blog suggests to me:

  • refactoring old code so you can reuse it
  • consistent formatting giving patterns that you can follow and
  • use of structure and architecture to hold everything together

Knitnkwilt suggests to me

  • working with what you have got by reusing/repurposing old things
  • using a consistent pattern framework to hold the design together and
  • enhancing the old with new structure/fabric.