We Are Not Alone

[article]
Summary:
Do you know colleagues who box themselves into the corner regularly? Getting lost is not the problem; coping with having gotten lost is the problem. Markus Gärtner explains how to notice that you are stuck, how to ask for help, and who you should be asking.

A dog leaves a house, runs through the garden, and beams into a starship. The starship traverses space to a far-off planet, where an alien senate watches the ship land. The dog gets out and removes its dog costume, unveiling that it, too, is an alien. The senate then asks the returned alien what it has learned. After a moment of silence, it says, “Whassup?” and the whole alien party joins in. Back on Earth, a scientist hears the alien "Whassup" choir and concludes, "We are not alone!"

Maybe you remember this storyline from a Budweiser ad. What has it to do with software development and testing? We may or may not have alien dogs, but we’re never alone. Whenever we run into a problem, we can reach out to the help that is available. For example, think about the last time you couldn't keep your automation code up to date with changes done to the production code. Or, consider the last time you felt that unit testing the production code was nearly impossible. Or, remember the last time you had to fill out a form for your session report but didn't know what to put in. This article explores these situations and explains what to do about them, where to reach out for help, and how to ask for help and receive it.

When to Seek out Help
Foremost, it is vital to know when to seek help. A programmer may code herself into a dead end with an unfamiliar technology. A tester may become hopelessly lost when trying to pinpoint a particular bug during manual testing. Therefore, knowing when to seek help means knowing when something is wrong. Constraining the time spent on certain activities may help you become aware that you are on the wrong track. Taking a step back and reflecting every thirty or ninety minutes will help you notice dead ends before they waste your time.

Time‑boxing your efforts also works on a larger scale, such as when agile development teams use short iterations. The team focuses on an agreed-upon part of the project and delivers it in one to four weeks. After that, the team reflects over the work. After gaining the relevant insights, the team agrees on actions for the next time‑boxed iteration and continues to improve the process. Time‑boxing smaller efforts and reflecting over a few hours’ work helps us see when we need to reach out for help on a particular difficult task. Just as agile teams reflect and adapt to the situation, we can learn when it might be time to adjust the overall process.

Where to Seek out Help
The developer stuck on a particular bug fix may want to ask an expert in the technology or the underlying code for help. Asking the tester for a broader picture on her code changes may also be worthwhile since testers usually have a holistic overview over the application they are testing, and can expose problems in the solution very quickly—even before you wrote a single line of code.

A tester who gets stuck on a piece of test automation code may want to ask a programmer for help on the design. When stuck on a complicated business rule, the tester may also reach out to the business analyst or consult the customer. In summary, asking the nearest expert for help provides the fastest form of support and feedback. If you are unable to consult a nearby expert, get in touch with a distant helper.

About the author

Markus Gärtner's picture Markus Gärtner

Markus Gärtner works as an agile tester, trainer, coach and consultant with it-agile GmbH, Hamburg, Germany. Markus founded the German Agile Testing and Exploratory Workshop in 2011, is one of the founders of the European chapter of Weekend Testing, is a black-belt instructor in the Miagi-Do school of software testing, contributes to the Agile Alliance FTT-Patterns writing community as well as the software craftsmanship movement. Markus regularly presents at agile and testing conferences all over the globe, as well as dedicating himself to writing about testing, foremost in an agile context.

AgileConnection is one of the growing communities of the TechWell network.

Featuring fresh, insightful stories, TechWell.com is the place to go for what is happening in software development and delivery.  Join the conversation now!

Upcoming Events

Sep 22
Sep 24
Oct 12
Nov 09