Praćenje grešaka je metodologija koju koriste programeri softvera za prikupljanje izvješća o greškama ili “bugovima” u softverskim programima. To omogućuje programerima da dodatno usavrše svoj softverski dizajn stalnim promjenama ili nadogradnjom proizvoda kako bi bolje služili korisničkoj bazi. Programeri koji su autori softvera često pozivaju javnost da pomogne identificirati probleme. Ako program ima nominalno sljedbenike, pronalaženje bugova može se postići jednostavnim zamolivanjem korisnika da prijave sve poteškoće putem e-pošte. Izvješća o praćenju grešaka obično uključuju objašnjenje točne prirode problema, verziju softvera u pitanju i operativni sustav.
Dok programeri programa sa skromnom popularnošću mogu postići “ručno” praćenje bugova putem e-pošte, bila bi logistička noćna mora za programere popularnijeg ili sveprisutnijeg softvera da pokušaju s ovim pristupom. Ovdje programeri mogu imati najviše koristi od korištenja posebnog softvera za izvješćivanje. Kako bi se olakšalo izvješćivanje, neki vrlo popularni softverski programi i operativni sustavi uključuju ugrađeno izvješćivanje o greškama. Ako se program sruši, pokušat će se povezati s internetom kako bi prenio zapisnik o greškama automatiziranom sustavu za praćenje bugova. Budući da se ova značajka može smatrati kršenjem privatnosti, obično se može onemogućiti ako korisnici to odluče.
Mozilla, tvrtka koja stoji iza vrlo popularnog web preglednika Firefox, dizajnirala je besplatni softver za praćenje bugova, poznat kao Bugzilla. Mozilla koristi Bugzilla za Firefox i druge proizvode, ali je također dostupna tvrtkama, IT administratorima ili drugim zainteresiranim stranama koji upravljaju razvojem softvera. Kako bi koristio sofisticirani sustav praćenja poput ovog, korisnik prijavljuje bug ispunjavanjem jednostavnog online obrasca. Ovaj obrazac može biti dostupan na Internetu ili unutar privatne mreže.
Iako se svaki sustav za praćenje bugova razlikuje po svojim značajkama, prijavljenim bugovima se obično dodjeljuju jedinstveni brojevi za praćenje. Sustav daje prioritet bugovima prema različitim čimbenicima i svaki kategorizira kao normalan, visok ili kritičan. Pojedinosti se ukratko prikazuju unutar tablice za praćenje koja je dostupna programskom timu, a opcionalno i javnosti. Stavke “Poboljšanja” ili “popisa želja” također se mogu uključiti. Korištenjem sučelja za praćenje bugova, korisnik može kliknuti na broj izvješća kako bi pročitao više pojedinosti o određenoj grešci, dodao informacije izvješću ili izvršio druge radnje kao što je reklasificiranje buga ili prijava popravka.
Sustav za praćenje bugova omogućuje programerima i menadžerima da na prvi pogled vide gdje softver zataji bazu korisnika i kako razvojni tim rješava te probleme. Pruža organiziran način za olakšavanje postupaka poboljšanja softvera i otvara ispravan, reguliran kanal krajnjim korisnicima. To olakšava praćenje bugova uz minimalne ljudske resurse uložene u organizacijske zahtjeve procesa.
Učinkoviti sustavi za praćenje bugova mogu poboljšati zadovoljstvo kupaca, povećati produktivnost i smanjiti vrijeme zastoja. Oni također mogu pratiti promjene kodiranja, osigurati sučelje za programere za zajednički rad i omogućiti jednostavno upravljanje osiguranjem kvalitete. Na internetu je dostupno nekoliko softverskih paketa. Ozbiljni programeri softvera i bezbrojni krajnji korisnici svaki dan imaju koristi od ovih sustava.