On joining Scott Logic in October 2016, one of my first assignments was to help organise a bugathon, an idea which had been under discussion for some time. Scott Logic frequently hosts coding events with university computing societies across the country, and it was agreed a testing-focused event was beyond due. Since then we have been in discussions with Newcastle University and arranged a bug hunt event on 18th March, in collaboration with the Newcastle University Computing and Technology Society.
The aim was to create a fun experience that would be worthwhile for organisers and attendees alike, as well as to raise awareness of software testing as a career and what it entails.
Often used as a means of including the wider software team in testing, a bugathon is typically a time-boxed activity in which all team members use whatever means they can think of to find bugs in developed software. By encouraging the wider team to participate, it means the software under scrutiny is exercised by people with a more diverse range of skills, perspectives and experience. This means bugs are more likely to be uncovered that otherwise may not have been found until the system was released into production.
As we were creating a bespoke bugathon we were able to inject bugs into the system, purposefully making some more challenging to find. Also, given the bug hunt will be relatively short, we wanted something that would be familiar to attendees, that wouldn’t require hours of briefing to set the context.
After some internal discussion, we settled on (we want to keep an element of surprise, so you will find out more about the solution on the day). We selected technologies that presented our developers with valuable experience for future client-focused projects. From my perspective, and also the other developers involved, this has been an interesting piece of work; when you’ve spent most of your career trying to make user friendly applications which provide useful outcomes for the user, purposefully doing the opposite does not come easy.
Expect the unexpected
As well as trying to keep track of the bugs which we wanted to insert, when making the app we found some accidental bugs that we actually wanted to put back in! That was in itself a good learning exercise, which looked easier on paper.
In preparation for the bug hunt event in March, members of Scott Logic’s growing test team have now trawled through the app; we’ll be a bit embarrassed if the hunt throws up too many bugs we weren’t expecting! Come to think of it, that may make a nice prize category on the day, the team that finds the most unexpected bugs.
The developed application will require testers to form teams and collaborate to effectively find bugs. This teamwork element is an important factor in making the event as fun as possible, bearing in mind the free beer and pizza won’t arrive until after the awarding of prizes.
We hope attendees will leave the event and consider a career in software testing, or at the very least, appreciate the effort testers put in to help deliver high quality software, and the challenges of their role.
We’ve identified a series of categories for which prizes will be awarded. Some are already defined and some will be awarded as spot prizes.
Teams will need to decide quickly what their test approach is going to be, how to prioritise and gain test coverage of the features, and whether to spend time looking for a few high impact, difficult to find bugs, or log more of the more straightforward ones. They’ll need to think about how much time and effort to spend describing the bug in a report, bearing in mind that it needs to be easy for someone else to understand, recreate and resolve.
The cynic in me expects the most popular approach will be to find the bugs that help win the prizes. Each team will be able to see how others are faring, which prizes have been won and which are still up for grabs; they may adapt their approach as everyone’s bug logs are analysed over time.
The main event
As mentioned before we’ll be hosting a bugathon alongside Newcastle University Computing & Technology Society (NUCATS) on campus on March 18th.
We’ll be projecting a leaderboard for all to see; teams will be awarded points for finding bugs and the quality of their bug reports, while points will be deducted for logging duplicates! I’m looking forward to seeing how different teams react to the changing state of the board.
I’m also eager to hear from each team about how they approached the task, what information or experiences informed this, and how they adapted their approach as they learned more about the application. Individual inventiveness should never be underestimated, so I’m expecting to see each team come up with something quite different.
If you're interested in starting a career in testing why not take a look at our Graduate Software Tester Programme.