Socrates once said ‘I know that I know nothing’. Well, he didn't mean that he actually didn't know anything or that he was absolutely ignorant, but he inferred the fact that there’s much more to learn if he questioned it and dug in deeper. You would uncover deep-seated truths about constructs from the context and on why they exist and interact as they do. This is fundamentally how everything in this world works.
This phenomenon can be seen at the workplace as well. Especially when the project manager or scrum master enforces his team to do a root cause analysis. In other words, he asks them to retrospect on why certain things happened. Haven’t you experienced the same?
Now, let’s talk a bit about root cause analysis.
Root Cause Analysis is a methodology used for analyzing problems in order to identify the main reason for that problem. It is an approach taken for problem analysis and interrogation. This is exactly what Socrates introduced in his Socratic Method. Each time when Agile teams practices any effective root cause analysis techniques, Socrates must be looking down from heaven smiling away.
Get to know more about agile vs traditional project management.
Root cause analysis can take many forms. Ishikawa or Fishbone diagram, 5 Whys approach to naming he most common.This article is not to talk about root cause analysis as a concept but to discuss how Agile teams can use use the 5 whys to identify the root cause analysis process.
This approach was first introduced by Sakichi Toyoda, the founder of Toyota Motor Corporation. The technique was used in the vehicle manufacturing plants to evaluate why problems occur during the production process. Often when a defect or an issue occurred, the team used to give a temporary solution, patch the problem and move on. However, the same problem used to resurface. Toyoda understood that the root cause was not being addressed in the solution given and only the symptoms were being addressed. Thus he formulated the 5 Whys technique to explore problems at hand.
This is the best explanation for psychology, politics and programming I’ve heard in a long time.— Ted Neward (@tedneward) July 24, 2018
Attempts to boil anything down to a single cause are fruitless and generally a waste of time. Which is why “it depends” is so often at the heart of any answer. Unsatisfying, but true https://t.co/aNzQAQ7MQm
As the name suggests, 5 Why’s is a process of asking Why 5 times to get to the root of a certain problem. However, 5 is not the minimum or maximum number of times you should ask ‘Why’.
An example of why-why analysis for Agile teams would be something as follows:
Because there was a bug in the last release
Because we didn’t test this scenario
Because we only tested the features developed during the last sprint. We didn’t do a regression test on all the features in the application.
Because notifications feature was something built a long time ago and it’s not practical to test all the app features in every release.
The application is now so big that performing regression testing on every feature at the end of each sprint is time-consuming.
As we can see, this process helps you get a better picture of the underlying cause of the problem. We will now be able to go beyond the traditional answer of ‘We missed a bug’ or ‘Our bad, we will test the application thoroughly next time’ type of answer. The is simply because we now know the primary cause that needs to be addressed is to do with regression testing. We simply identified that testing is an issue, but it is not the root cause of the issue.
The 5 Whys approach lets you determine what you should do to rectify the situation. It helps you make a decision on what action to take, whom to consult, what sort of effort is required and so on. In the above scenario it will help us identify the regression processes for the project, what tools to use, and help decide whether to automate regression testing activities.
Ever thought why a 5 or 6 year old child keeps on asking why? Isn’t it sometimes annoying? ‘Why is that car red?’, ‘Why does that dog bite?’. These are some annoying questions a child may ask for which you may sometimes have no answer. Isn’t it more irritating when the child keeps on asking why for each answer you give?
There are many different approaches to find the root cause of problems. You can perform a general problem analysis with one or more professionals and demonstrate the results to those involved to deal with and refine them. For smaller issues, you can follow the 5 Whys technique discussed above.
Finally, my concluding remark is to invite you to call forth your inner child again. Ask Why how stupid or trivial it may be. Remember, we only see the tip of the iceberg. There’s lots more of the problem that we have forgotten to explore or ignored to accept!
5 Things You Need To Know About The Scaled Agile Framework
How is Agile different from conventional approaches?
4 Features That Make Scrum Successful
21 Sep 2022
21 Sep 2022
21 Sep 2022
21 Sep 2022
20 Sep 2022
20 Sep 2022