Software bugs are familiar to both the developers and users of software. Matthew A. Telles offers the following definition for a bug: “Bugs are behaviours of the system that the development team (developers, testers and project managers) and customers have agreed are undesirable.” Due to human errors and bad specifications, bugs will continue to be a part of software development projects.
Tracking bugs is important for several reasons. Business wise bugs are considered expensive since they damage the company’s reputation and delay projects: “In 1994, Capers Jones conducted a survey of approximately 4,000 software projects. The survey asked the participants for reasons for schedule overruns. One of the most common reasons reported was poor quality.”
In addition, the survey also showed that many projects are simply cancelled due to an overwhelming amount of problems. From the human point of view, the people involved in projects with numerous problems get frustrated, demoralized and lose interest.
While web application development is a relatively new branch of software engineering, many of the traditional software engineering practices apply to it: “Following proper software engineering techniques (or modifying them for web development) can have a substantial impact on overall system usability primarily because it enables developers to achieve higher quality.”
One way to improve quality is introducing common, battle tested software components like Symfony in Drupal