Parkinson’s law in software testing
Coffee was brewing for the third time. It was dead silent in the dorms. Only a dim screen lit the room and steady tap of the keyboard took flight. It was 3am and the deadline was approaching fast.
That was the story of my life. When I studied back at the University I got myself into trouble on a regular basis. I procrastinated on starting with my project reports and essays for days. My small apartment was super tidy, I had taken care of calling both grand moms twice during the week and even dragged my ass to the gym every day.
Have you experienced similar situations? Basically everything except the important paper was taken care of. My ways of postponing the inevitable were clever and creative. But the last evening before the deadline always came. Usually around 5pm I brewed my first coffee and got to work.
I did the same drill every semester with every report paper and every project. And never failed once. The work got magically done, no matter how big it was. In the morning I stormed in to the course assistants room and delivered my results. It’s uncanny how naturally everything worked out when the deadline came. It’s always the final hours before the deadline that are the most productive hours for me.
Last year I started a new project, because I wanted to write a book about software testing. Once again I found myself filling the days up with pointless meetings, email and social media combined with tidying up my home and workspace. I found myself mostly reacting to the demands of colleagues, clients and the environment. The only problem was that this time I had no deadline. My excuses and distractions came on a steady pace until I almost forgot about the project.
I unearthed the nearly buried piece of work by inviting an acquaintance over. As a native English speaker, Ian was the perfect partner in crime. I set myself up for some accountability and promised Ian deadlines. More over I set the stakes high enough by paying him for editing even if I didn’t deliver anything. And oh boy that worked some serious magic!
Finally, one night in August, I stood up from my computer. The house smelled like coffee once more and the clock on the wall had just hit 3am. I had just punched in the final words for my work. The book was written, I got the manuscript out of my hands for proofreading, cover designing and editing. It’s uncanny how naturally everything worked out when the deadline came.
I woke up late the next morning, fascinated by what had just happened. By designing a deadline and agreeing on accountability, I basically set up a perimeter wire for the work that I do. For each chapter I set up a series of strict blocks of time with clear outcomes like “Publish a blog post on this topic by Tuesday 2pm” and when the deadline came I shipped regardless of the quality.
It turned out that the amount of time I designed for the activities made little difference to the outcome. With a lot of time in my hands, I had a magical ability to invent irrelevant activities. I majored in minor thing. Then, when the deadline approached, I squeezed all the important results together in no time at all.
It was as if work always filled the time I allowed it.
To me, the insight was so profound that I had to go researching it. I wasn’t alone with the idea.
In 1955 Cyril Northcote Parkinson, a naval historian and an author of over 60 books articulated an adage around what I had just experienced the night before. Parkinson’s law states that:
“Work expands so as to fill the time available for its completion”
In software testing I suggest looking closely at your process. When time comes to you in an avalance of abundance, is it easier or harder to keep focused on the things that matter? Is it easier or harder to explain to the people around what you’ve accomplished during the time?
Now consider choosing tight windows of time for your testing. For each box of time you set yourself up with a detailed mission to guide your attention. ”For 45 minutes, hunt for bugs in the login update.” Now what can you report about testing to your clients, colleagues and bosses? Now how does that feel regarding the focus?
Duh! Thats obvious writer-boy! But why would you spend so much time in writing about time?
To the point! Time is the most essential asset of every project. When was the last time when you had too much time budgeted for testing? Or even adequate time for that matter?
I’ve met with only two people who had such a luxury. One worked in aviation and the other worked in developing ICU devices for hospitals. For the rest of testing professionals around the world, that’s hardly the case.
Usually we get to test too little and get to start too late.
That’s just the way the world is for most people. The way to mastery is not to complain in an attempt to change the world. Accept the world, and change yourself instead. Do what works with what you’ve got!
First, come clean with how much time you can get. It’s not about estimating the workload, It’s about how much you can negotiate within the project budget and deadlines?
Second, make the best out of what you just got. Just as Parkinson puts it. Work will always fill up the time you allow it. That is why chunking the time is the best method to get most bang for the buck. At the same shot, it leaves little room for time-waste, and helps you demonstrate exactly the frame of what you will and won’t deliver.
Lookin’ at my calendar, it seems like yet another deadline is approaching. Maybe it’s time to brew that third coffee of the day and get to it!
Chunk your time snug and then decide on your outcomes for each box to deliver.