Bugiseurantaohjelma

Bugiseurantaohjelma tai virheenseurantaohjelma (puhekielessä toisinaan myös bug-trakkeri) on sovellusohjelma, joka on tarkoitettu laadunhallinnassa ohjelmointivirheiden tai muiden puutteiden raportointiin ja seurantaan ohjelmiston elinkaaren aikana. Virheet voidaan tyypillisesti kohdentaa tietylle ohjelmalle tai sen komponentille tai muuhun liittyvään osa-alueeseen kuten ohjelman dokumentaatioon. Verkkoselainpohjaiset seurantaohjelmat ovat tyypillisiä tiedon jakamiseen sovelluksen kehittäjien ja testaajien sekä projektin hallinnan kesken. Tyypillisesti seurantaohjelmassa on jonkinlainen tietokanta, jonne tiedot talletetaan.

Seurantatyökalu voi olla oma sovelluksensa kuten Bugzilla tai integroituna osaksi suurempaa kokonaisuutta kuten jatkuvan integraation palvelimeen.

Hajautetut seurantamenetelmät ovat yksi kehityshaara, jossa ohjelmointivirheiden tiedot eivät ole keskitetyssä palvelussa vaan seuraavat lähdekoodin mukana versionhallintajärjestelmässä.

Seurantaohjelma ei sisällä toimintoja virheen jäljitykseen ja sitä ei käytetä virheen diagnostiikassa vaan tässä tarkoituksessa on käytössä debuggeri.

 Seurattavat tiedot 
Seurattavia tietoja ovat esimerkiksi:
 ohjelman versio: onko ohjelmointivirhe uusi vai onko se ollut jo aikaisemmin mutta ei ole havaittu
 komponentti: kohdistuuko ohjelmointivirhe käyttöliittymään, toimintalogiikkaan tai muuhun osaan
 miten vika ilmenee: onko kyseessä tiedon virheellisyys vai ohjelman kaatuminen
 miten vian saa toistettua: vian toistaminen testauksessa jotta voidaan tarkistaa että se ei enää toistu
 mikä oli odotettu tulos: mitä olisi pitänyt tapahtua oikeassa toiminnassa
 lisätiedot kuten logitiedostot tai coredump-tiedostot, joilla vikaa voidaan jäljittää

Ohjelmointivirheen kriittisyydellä voi olla useita tiloja kuten:

 blocker: estää ohjelman normaalin käytön
 major: ohjelmaa voidaan käyttää mutta aiheuttaa huomattavia ongelmia
 minor: kauneusvirhe, kuten tekstin rivittyminen

pienoiskuva|oikea|Bugin elinkaari Bugzillassa.
Ohjelmointivirheen voi olla useita tiloja sen elinkaaren aikana:

 raportoitu
 selvityksen alla
 korjauksen alla
 testattavana
 ratkaistu
 epävalidi: jos tiedot eivät ole riittäviä ongelman ratkaisemiseen; ohjelmointivirhettä ei voida toistaa; tai kyseessä on ohjelman normaalia toimintaa

Seurattavat tiedot ja menetelmät riippuvat käytetystä ohjelmasta, alustasta ja projektinkäytännöstä sekä ryhmäkoosta: pienelle ohjelmalle ei välttämättä tarvita samoja tietoja kuin suurelle.

 Lähteet 

 Aiheesta muualla 

 How to Report Bugs Effectively