It's a Bug!

Testing Lessons from Labor Triage
Better Software Magazine
Volume-Issue: 
2008-04
Summary:

Bug triage, like labor and delivery triage, is about deciding a course of action on the spot, often with minimal information guiding decision making. Discover what other lessons Robert has learned from Anne's experience in nursing that have practical applications in his hunt for bugs.

Bug triage is about making deci­sions about the fate of software bugs: Should we keep a bug? Should we fix it now? Can we fix it later? Can we live with it? What other choices do we have? What should we do next?

I have implemented bug triage in every software project I’ve run since 1992. My inspiration in organizing bug triage comes directly from the world of labor and delivery nursing, which I learned about from my wife, Anne, a nurse at the birthing center of the Royal Victoria Hospital in Montreal. Anne has triaged hundreds of expectant mothers arriving at the hospital in anticipation of the childbirth experience.

Labor and delivery triage is about deciding the course of treatment of pa­tients arriving at the hospital. Anne must decide the course of action on the spot, often with minimal information guiding life-critical decision making.

I apply the four basic steps of labor and delivery triage directly to bug triage:

  • Preliminary Assessment
  • Interview
  • Exploration and Observation
  • Taking Action

Preliminary Assessment—Looking the Bug Right in the Eye!
The labor triage assessment begins as soon as the triage nurse sees the patient. The triage nurse observes the patient: Can she talk? Is she agitated? Is she about to faint? Is she excited, anxious, or in any sort of trauma? Her first judg­ment is related to the urgency of the situ­ation. Sometimes the patient needs im­mediate medical care, even before Anne knows the patient’s name—the baby will not wait. The triage nurse must be pre­pared for anything and remain calm de­spite the adrenaline rush. In some cases the triage nurse delivers the baby on the spot. It’s a job that has all the excitement of a TV drama. The triage nurse knows what to look for and is trained to recog­nize and act in response to critical situ­ations.

The bug triage assessment begins as soon as I see the bug. I take a good look at the bug: Will critical user tasks be blocked? Is the bug infectious? Will it break other things? Does it violate laws, regulations, or contractual obligations? Did we lose client data? Does this bug block us from doing other work? My first judgment is related to the urgency of the situation.

In the preliminary assessment of bugs I look for those bugs that demand imme­diate action and then I initiate whatever course of action is required. In some projects I call this bug filtering. I cut out any paperwork or bureaucracy involved and get right to resolving the bug. When a bug demands action, I take action.

To hone my preliminary assessment skills I have to study a lot of bugs. I want to avoid crying wolf and getting developers to start fixing a problem that is not really urgent. Knowledge gleaned from studying bug taxonomies is a great source of information. I always study real bugs experienced in similar projects. In order to get a good sense of the ur­gency of a problem, I try to understand the impact on the end-user of not fixing the problem immediately.

The preliminary assessment helps trigger immediate action before going to bug review meetings or doing any further testing. Being prepared for a pre­liminary assessment includes a blend of knowing what to look for and knowing how to get things done. I make sure project managers, development leads, and all team stakeholders know that I do preliminary assessments and that I can sidestep bureaucracy in some urgent cases.

Interview—Understanding Context
In labor triage context is everything. The same conditions ob­served with a different context can lead to dramatically different results.

File: 
AttachmentSize
XDD13670filelistfilename1_0.pdf773.48 KB

About the author

Robert Sabourin's picture
Robert Sabourin

Rob Sabourin has more than twenty-five years of management experience, leading teams of software development professionals. A well-respected member of the software engineering community, Robert has managed, trained, mentored, and coached hundreds of top professionals in the field. He frequently speaks at conferences and writes on software engineering, SQA, testing, management, and internationalization. The author of I am a Bug!, the popular software testing children’s book, Robert is an adjunct professor of Software Engineering at McGill University.

About the author

Anne Sabourin's picture
Anne Sabourin

Anne Sabourin, BScN, RN, has been caring for newborn parents at the Royal Victoria Hospital for more than twenty years. A tenured delivery room and surgical baccalaureate nurse, Anne has been involved in some of the most important pre-term and multiple birth deliveries in the history of McGill Teaching Hospitals, including the successful birth of twins born thirty-nine days apart and children born at twenty-four weeks gestation. Anne pioneered telephone support for expectant parents in Quebec when she hosted Info Grossess, which was the two-year pilot project that led to the current Info Santé system in Quebec. Contact Anne at anne@theheart2heart.com.

Anne and her husband, Robert, have developed Heart2Heart, a popular prenatal course for expectant couples.

About the author

Robert Sabourin's picture
Robert Sabourin

Rob Sabourin has more than twenty-five years of management experience, leading teams of software development professionals. A well-respected member of the software engineering community, Robert has managed, trained, mentored, and coached hundreds of top professionals in the field. He frequently speaks at conferences and writes on software engineering, SQA, testing, management, and internationalization. The author of I am a Bug!, the popular software testing children’s book, Robert is an adjunct professor of Software Engineering at McGill University.

Upcoming Events