Bug tracking system - a necessary evil
"Software with zero bugs is a myth".Throughout the life of a software new bugs are uncovered and if not tracked properly, things can go out of hands even before you realize it. Bug tracking systems, as evident from the name is a system used for reporting, tracking and monitoring such reports. Few examples of such systems are - Bugzilla, Debbugs, GNATS, Trac, BugTracker.NET, JIRA and so on.
Every bug has a certain life cycle starting from the moment the bug is opened till the point it is marked Closed after verification. At each and every state transition certain facts / parameters about the bug gets modified. A bug tracking system allows us to keep a track of all such transitions and also trigger necessary notifications to the involved engineers. In a sense, it maintains the whole life cycle of a bug in the form of updates and a visual interface to see that too.
Let us consider an example to understand how a bug tracking system can simplify life of an engineer - Once a test engineer opens a bug and assigns it to a developer, there is no need for him to intimate the developer personally. The system will trigger the necessary notification via email. Now the developer tests it out and finds that it is working fine with the latest code. He can then update the state of the bug directly in the bug tracking system with the proper root cause and the build version with which it is working fine. Again as soon as the state is updated by developer in the system, all the relevant engineers will get notified automatically. The test engineer can simply close the bug after updating the proper information without even having to personally talk to the developer even once. This should give you an idea how productive a bug tracking system could be.
Another important aspect of bug tracking is report generation. The reports can be created based on several parameters like - bugs assigned per engineer, bugs assigned during a time period, new bugs found V/s bugs fixed etc. Such reports can be used to assess the progress of any project by management. In fact no project status meeting is ever complete without the discussion of current and pending bugs.
It would not be an exaggeration to say that at times your appraisal will also depend on how many bugs you fixed last year, so be aware of such tools and utilize them fully. To know more about such programming practices followed in industry, do grab a copy of my book - "Hello World: Student to Software Professional” published by Partridge (A Penguin Random House Company). Now available worldwide on all the MAJOR ONLINE Stores - Amazon, Google Play, Flipkart, Barnes & Noble and many others.