We testers have a delicate job. Sometimes we need to look the proud parents of a newborn software application right in the eye and tell them "You have an ugly baby!" This article tackles the best way testers can tell someone that they have an ugly baby.
While I'm not a huge fan of American Idol, I'm a big fan of Simon Cowell! Do you think if one of the Idol winners ever gets an award, like a Grammy, they will thank Simon? I doubt it. He's lucky. He can be open and say what he feels. Sure people are angry at him. But you know what? He’s usually right. It's just the message delivery that upsets most people. Deep down, they know. Unfortunately, for software testers, that's not a luxury we have.
I think Simon would be a great software tester. A desirable attribute for any good software tester is to tell people what we think–tactfully. Software developers, Project Managers, Product Managers, and anyone else on a software project, spend countless hours designing and developing software applications for customers. They're proud parents. It's their baby. Then they show it to us, and essentially ask: "What do you think?" More often than not we have to tell them they have an ugly baby!
I imagine, if you have an ugly baby, Simon would tell you so!
Nobody wants to tell someone they have an ugly baby, but unfortunately, it's our job. The key is how you tell them. Sadly, you will always run into a proud parent that will be hurt no matter how you tell them. Different parents will respond differently depending on the way the message is delivered or received.
So how do we handle these delicate situations? Having been a test consultant now for a few years, I've had to deal with a number of delicate parents. Here are a few tips on the proper care and feeding of delicate parents:
- Build a Rapport with the Team: Get to know them. Take them to lunch. Buy them bagels or donuts. Let them know that you are there to make them look good. When a virtually flawless application is delivered to a customer, no one says how well tested it was. Development teams will always get the credit. However, if it is delivered with bugs, everyone will wonder who tested it!
- Be Honest and Responsive: One of the best compliments I ever received was: "If Dave and I grew up together, I'd never let him touch my toys. He breaks everything!" Tell them up front, you’re going to do everything in your power to break their application. It's what you do! Although a good magician never reveals their secrets, a good tester should. If I have time, I will usually tell them what my attack plan will be.
- Be Open and Available. Want me to take a look at your requirements? Absolutely! I always let teams know, that if I'm available before formal testing begins, I will give them a free look at their requirements, specifications, code, whatever they have. I won’t create a defect in the bug tracker. I'll just shoot them a quick email, and make a note to look at it later. It ends up saving everyone time in the long run and, once again, makes them look good when formal testing begins. It also helps me develop and refine my tests.
- Let Them Review Your Tests. If you're going to look at and critique their stuff, it's only fair to let them do the same to your stuff.
- Don't Rely on the Bug Tracker. Never send a public ugly baby notice! The last thing you want to do is rely on the bug tracker to deliver bad news. There is nothing worse, or less productive, than flame wars in the bug tracker. Talk to someone! Let them know what