Several months ago, I started an official review my company's, Post.Bid.Ship., Inc., software development processes. We utilize extremely advanced processes to develop technology designed to help automate the $700 billion commercial shipping industry. The reason for the official review was that our development team was not able to explain nor resolve why bugs in our application previously resolved were reappearing just a few weeks later.
The programmers on our team have been on our development project for 3 years and one of the programmers has worked with me for almost 8 years on other large technology projects. Each programmer works directly for an contracting firm where I consider the founder and CEO a friend of mine. So to say I am loyal to the firm would be an understatement; they rock!
Given my loyalty and satisfaction with the firm and their programmers, you can imagine my disappointment when bugs previously put to rest were reappearing. Most of the bugs were small in nature and did not cause our users much grief but bugs re-appearing can be problematic. This problem reminded me of the George Patton quote "I hate to pay for the same real estate twice." Paying programmers to remove the same bug twice increases our budget, extends our development timeline, irritates users and delays new features.
At first, we tried to resolve the problem by changing some minor processes, implementing additional tools to help us better manage source code plus implemented additional education regarding best practices for source code management. Yet, after several weeks of working to resolve the problem and a complete overhaul of our source code management system, bugs were still re-appearing. Argh!
Before a meeting with our developers yet again to discuss the reappearing bugs issue, a situation with my daughter came to mind. The day before, my daughter was standing over one of her toys crying. Upon observation, I saw the toy was broken. When I asked her if she broke it, she instantly said 'no'. Why did she 'instantly' say 'no' when all evidence pointed that she was guilty? The answer: my daughter is biased with regards to punishment - she avoids it. Upon this realization, I shared with her that if she voluntarily tells me or her mother when an accident happens, there will be no punishment. She began to think and after just a few seconds, she confessed to breaking the toy.
So I decided to use this experiment on my development team to see if this honesty and no punishment approach would work. I asked "When we discuss how these bugs keep re-appearing, please know that I am after only the truth and a resolution. My goal is not to punish anyone." The programmers responded that they were really not aware of why the bugs were reappearing. I felt their sincerity plus replacing our entire development team was not a viable option. So Matt Kennedy, one of our top project managers at Post.Bid.Ship., and I proceeded to see if there was something systematic and outside of our development team we should review as a possible resolution to the issue.
To learn what Matt and I discovered, be sure to come back next month where we will post how we resolved the problem. To be among the first to know, sign-up for my newsletter and you'll know instantly when new articles are submitted here at MickyThompson.com. Till then, be sure to share with me what you think the solution to this problem could be. Hint: the title of the article provides a clue. To be continued...
This is part 1 of my article titled 'Got 'Bias' in Your Organization? Outsiders Welcome!' To continue on to Part 2, click here.