business management, marketing, technology & entrepreneurship in a 365X24X7 world
Random header image... Refresh for more!

Gang Warfare in Software Project Management !!!

The software development team at Uzanto has evolved a practice, which is proving to be highly effective in isolating bugs in our software. We call it ‘Gang-Up’ testing and it has shown the potential to push to the backstage, the conventional bug -tracking system (Mantis) that we currently use.

‘Gang-Up’ testing simply means ganging up against the bugs. It usually begins with me walking into the small room that houses the team members, asking all developers to ‘drop’ whatever they are currently doing and jump straightaway into thoroughly and rigorously testing out a particular portion or functionality in the software. Everybody tests the same functionality individually (or in small teams)– this way, the odds of at least one of the developers chancing across some shy, infrequent bug are much greater.


During the testing, all the team members constantly deliberate and chatter amongst themselves, exchanging notes about some issue. If someone points out a seeming non-reproducible bug, everyone concurrently ‘gangs-up’ on the software, trying to replicate the same steps– this approach usually ferrets out the most illusive of bugs. Team dynamics also has an important role to play in this, with the team members at times, almost competing with each other to see, who nets the most bugs. This is followed by the team discussing threadbare all the bugs/issues that have surfaced during the testing session, taking out the ones that are duplicated across team members or the ones that are likely to go away with planned future design changes. Finally, all unique bugs are listed on a whiteboard– the concerned developer is asked to quickly attack the listed bugs and cross them out from the whiteboard, as each one gets resolved. The ones, that could not be resolved immediately, are punched into Mantis. In our experience, ‘Gang-Up’ testing, has proved to be an excellent way of isolating, identifying and escalating all kinds of software issues – design improvements, interaction(UI) bugs, backend server-side bugs, graphical refinements et al.

You can think of this approach as being analogous to someone barging into a room full of people and firing indiscriminately with a AK-47 at all and sundry, with the result that none of the targets is likely to survive the fury of the gun. Hence the name, ‘Gang-Up’ testing.

Gang-Up testing cannot (and should not) replace the conventional bug tracking system; however it can be used as a very effective supplement to the bug tracking system. It’s main value lies in offering what conventional bug tracking doesn’t– accentuating the team’s focus on a part of the software and testing the hell out of it. It’s almost like a bug tracking stress test.

So, while gang up testing is a big hit within our small team, scalability of this approach to larger and multilocational teams will have to be tested out.

2 comments

1 Vinit { 10.24.06 at 12:51 pm }

We used a very similar method back in school when everyone in the computer lab would team up and stress test a single person’s code. Then, after a break, we would all do this with someone else’s code.

Like a community based, focus-group doing testing.

2 Amit { 11.01.06 at 11:50 pm }

Vinit

Yes, its simple but in smaller teams its very effective. But as I wrote, you can’t use it everywhere. Its a supplement to conventional bug tracking and can’t replace it.

amit

Leave a Comment