# Bug Advocacy

## Bug Advocacy: Effective Bug Investigation and Reporting

### Overview

Bug reports are not just neutral technical reports. They are persuasive documents. The key goal of the bug report author is to provide high-quality information, well written, to help stakeholders make wise decisions about which bugs to fix. Key aspects of the content of this course include:

* Defining key concepts (such as software error, quality, and the bug processing workflow)
* The scope of bug reporting (what to report as bugs, and what information to include)
* Bug reporting as persuasive writing
* Bug investigation to discover harsher failures and simpler replication conditions
* Excuses and reasons for not fixing bugs
* Making bugs reproducible
* Lessons from the psychology of decision-making: bug-handling as a multiple-decision process dominated by heuristics - and biases
* Style and structure of well-written bug reports
* More info on the Learning Objectives for Bug Advocacy: Effective Bug Investigation and Reporting are available on the BBST.info website.

## Slides

* [Bug Advocacy Slides - Latest](https://github.com/associationforsoftwaretesting/ast-bbst-materials/blob/master/Bug%20Advocacy/slidesBugAdvocacy2019.pdf)
* [Bug Advocacy Slides - Original](https://github.com/associationforsoftwaretesting/ast-bbst-materials/blob/master/Bug%20Advocacy/slidesBugAdvocacy2008.pdf)

## Videos

### Lecture 1: Basic Concepts Explore the diversity of opinions about "quality" and "bugs."

The lecture presents the multi-dimensional view of quality used throughout the BBST courses.

* [Lecture 1](https://youtu.be/qf6xLGlsaoM) (35 mins)

### Lecture 2: Effective Advocacy: Making People Want to Fix the Bug

How to develop reports that clearly communicate bugs in their harshest honest light so that decision-makers can operate with insight into the consequences of each bug.

* [Lecture 2](https://youtu.be/Qbq-ZzRWojo) (27 mins)

### Lecture 3: Anticipating and Dealing with Objections: Irreproducible Bugs

Strategies for exploring non-reproducible bugs to make them reproducible or at least to provide information to help troubleshooting efforts.

* [Lecture 3](https://youtu.be/7o1cZUczn0w) (17 mins)

### Lecture 4: Anticipating and Dealing with Objections: The Content, Clarity, and Credibility of the Report

How testers can make their reports useful and more credible for better decision-making by others working in the development effort.

* [Lecture 4](https://youtu.be/YrVLpHahPoY) (12 mins)

### Lecture 5: Credibility and Influence

In addition to the quality of bug reports, a tester's actions can influence how much credibility and influence they have on a project. This lecture draws on research on bias and signal detection theory to explore some of the things that enhance or diminish a tester's credibility.

* [Lecture 5](https://youtu.be/W_VmSZFRXwo) (21 mins)

### Lecture 6: Writing Clear Bug Reports

The final lecture introduces the RIMGEN acronym to guide testers in writing better bug reports.

* [Lecture 6](https://youtu.be/vSyKE7upPxE) (29 mins)

## Assignments

* [Signal Detection Lab](https://github.com/associationforsoftwaretesting/ast-bbst-materials/blob/master/Bug%20Advocacy/Assignments/FIT_BBST_fall2011SignalDetectionLab.pdf)
* [Bug Evaluation Assignment](https://github.com/associationforsoftwaretesting/ast-bbst-materials/blob/master/Bug%20Advocacy/Assignments/AssignmentBugEvaluationv11.3.pdf)
* [Sign up for the Open Office project and register in the test team](https://github.com/associationforsoftwaretesting/ast-bbst-materials/blob/master/Bug%20Advocacy/Assignments/JoiningTheOpenOfficeProject.pdf)

## Study Guide

* [BA Study Guide](https://github.com/associationforsoftwaretesting/ast-bbst-materials/blob/master/Bug%20Advocacy/BAstudyGuideJanuary2010.pdf)
