Joomla! Maintenance Procedures
Once a major/minor release has reached the Stable phase in the Development Cycle the processes and procedures for development change. The most immediate thing to notice is that the development is no longer driven by the Development team when the Stable phase is reached. As soon as the major/minor release is declared stable all future development on that release is driven by the Bug Squad. It is important to understand the way we think about Maintenance releases because one of the things that our community depends upon is stability. Stability is born of a rigorous testing process and accountability. This document will outline the procedures and processes for maintaining a Joomla! major/minor release.
People will notice that the content of this document look a lot like the former Quality and Testing. That is absolutely true because the main discussion here is that we talk on the Quality processes for Joomla! The main difference is the way the Bug Squad is organised compared to the former Quality and Testing team, but they strive to reach the same goals.
Once a release has been declared stable, all bugs and artifacts are to be tracked in our official tracker on the Joomla! GForge site: []. Having a single place for confirmed issue tracking provides us all with a simple system of accountability. The following flowchart provides a very rough description of how the issue tracking process is defined.
<image goes here>
The process is started in one of two ways: the bug is added to the tracker, or a user reports the bug in the Quality and Testing forum for the given major/minor release.
Issues reported on the forums
If an issue is reported on the forums is the Bug Squad responsibility to verify the issue and add it to the Joomla Tracker. The Bug Squad member who evaluates the issue should modify the thread on the forum according to what action was taken.
- Invalid. If the report was determined to either not be an bug or a known issue this should be reflected in the thread.
- Valid. If the report was verified as a bug and was added to the tracker the forum thread should reflect that as well as have a link added to the tracker artifact.
Issues reported on the tracker
If the issue was reported directly in the tracker then it is the Bug Squad teams's responsibility to verify that the issue is in fact a bug.
- Invalid. At that point if the report is invalid the issue is closed on the tracker (status close).
- Valid. If, however the issue is a bug than the Bug Squad member should assign the bug to a developer and provide any notes about the issue that are relevant in the comments box. Any missing information that is relevant should be filled in as well.
Once the bug has been verified and assigned it is the responsibility of the Development Working Group to resolve the issue.
- Able. If the assigned developer is able to fix the bug, it should be fixed as soon as possible.
- Unable. If the assigned developer is unable to fix the bug for some reason, he/she should inform the Development team lead for the given release that he/she is unable to get to the bug at this time and it should be re-assigned. Also, if the assigned developer is known to be unavailable the development lead should re-assign the bug as well. If the bug must be re-assigned, it is the development lead's job to reassign the bug or deal with it personally.
Report resolved issues
Once the issue has been solved the developer will change the status of the bug to “Pending” and leave any comments/notes about the given issue for the tester. These comments/notes may include other aspects of the code base that might be affected by the fix and should be thoroughly checked for potential issues.