July 2008
2008-07 Joomla! Community Magazine
Joomla! Community Magazine - Project
Working Group Spotlight: Joomla! Bug Squad
The Bug Squad is a great way to get involved with Joomla!


The Bug Squad was started in December 2007 by Wilco Jansen in an attempt to help solidify and stabilize the 1.5 branch of Joomla!. We started with about 8 people (of which only 2 were members of the development work group). The team quickly proved its worth in the drive to 1.5.0 stable. By the time Joomla! 1.5 went stable, the team had grown to about 20 people of varying involvement.
Creating the Bug Squad involved a fundamental shift in development and maintenance. One of the key principles that the Bug Squad relies upon is that no change enters the code base without a series of tests. This test based development practice has really increased the quality and stability of the 1.5 branch.
This test based maintenance involves a series of stages. When a bug is reported, the first stage it enters is “open”. Open items need testing to either confirm that it is actually a problem, or determine if fixing the problem is in the scope of 1.5. Once an open item is confirmed to actually be a defect, the status is changed to “confirmed”.
Confirmed items are artifacts that are known defects, that need developer attention to fix. Developers who wish to fix items only need to look up the current confirmed items, and pick one to fix. Once they have fixed the problem in the code, the developers create a patch, and attach it to the artifact. The developer also changes the status to “pending”.
Pending items contain proposed fixes to issues. In this stage, members apply the proposed fix, and test that it not only fixes the intended problem, but also doesn't cause other problems. This stage can vary in length depending on the severity of the bug/impact of the fix. For very simple items, normally only 1 other person (aside from the developer who created the patch) needs to test it. However, for large or complicated items, the number of testers can easily reach 20 testers. Once a patch is tested adequately, the status is changed to “ready to commit” where a developer actually commits the code.
The real benefit of this “status” based system, is that people only need to give the time that they want. If someone wants to help out for 5 minutes per day, all they need to do is login, pick an item, and work on it for those 5 minutes. Because all necessary conversation is done on the tracker (Joomlacode.org), the need for large time commitments, or complex work flows is gone.
2008-07-04 02:35:48