Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
1. Úvod
Pri tvorbe rozsiahlych projektov je veľmi obtiažne, spravidla nemožné vytvoriť takú
aplikáciu, ktorá by neobsahovala žiadne programové nedostatky alebo chyby (angl. bug).
Tým pádom po vytvorení prvotnej verzie softvéru sa po krátkom čase objavia požiadavky na
ďalšie modifikácie takýchto systémov. Najčastejšími dôvodmi sú buď vyššie uvedené
problémy a „bug -y“, ktoré je potrebné odstrániť, alebo požiadavky na nové funkcionality,
ktoré takýto systém musí obsahovať. Ukázalo sa, že sledovanie a spracovávanie takýchto
chýb a nedostatkov nepredstavuje triviálnu záležitosť a práve z toho dôvodu sa v čoraz väčšej
miere využívajú podporné nástroje zvané bug tracking systems (systémy na sledovanie chýb).
2. Bug tracking systems (BTS)
Systém na sledovanie chýb (angl. bug tracking system) predstavuje takú aplikáciu,
ktorej primárnym účelom je evidencia, sledovanie a manažovanie chýb v softvérových
projektoch. Sú navrhnuté za účelom zlepšenia a zaistenia kvality a pomáha programátorom
udržiavať sled nahlásených softvérových chýb pri ich práci. Takéto systémy taktiež umožňujú
sledovanie životného cyklu chyby od zadania, cez pridelenie, zaplátanie, otestovanie až po
uzavretie chyby, prípadne obsahujú popis vyriešenia, nápady a požiadavky na novú
funkcionalitu. Je to potrebné pre evidenciu a zároveň ako pomôcka, ak sa nám podobný
problém vyskytne znova.
3. Prieskum trhu a analýza testovaných produktov
3.1 Rozdelenie, kategorizácia BTS
Podľa licencie Voľne dostupné (angl.
free)
Voľne dostupné
s otvoreným
zdrojovým kódom
Platené licencie s trial
Podľa možnosti reportovania Umožňuje užívateľom bez
prihlasovania nahlásiť
chybu
Nahlásenie chyby je možné len prihláseným
užívateľom.
Podľa rozhrania Desktopové Webové Kombinované
Podľa postavenia v životnom
cykle SW
Počas vývoja Po dodaní softvéru
Podľa využitia Privátne –Interné (v rámci
SW tímu)
Verejné –Externé
(pre reportovanie od verejnosti)
3.2 Popis a analýza testovaných produktov
3.2.1 Bugzilla
Bugzilla je webová aplikácia pre sledovanie chýb pôvodne vyvinutá a používaná
organizáciou Mozilla Foundation vytvorená v jazyku PERL. Pridávanie a obsluha chýb je
veľmi rýchla a praktická (obr. 1 a obr. 2), chybu môže vložiť hocikto a každá chyba je
priradená konkrétnemu vývojárovi. U každej chyby je možné evidovať rad parametrov (popis,
stav, závažnosť, apod.) a je možné k nej pridávať komentáre, záplaty, ukážky danej chyby
apod. Bugzilla naviac obsahuje nielen systém na zaznamenávanie chýb a problémov ale aj e-
mailové diskusie, pridávanie komentárov, vlastnú wiki dokonca jej architektúra a funkčnosť
nebráni ju používať ako softvér pre sledovanie akýchkoľvek úloh, teda aj úloh v procese
vývoja v softvérovom projekte. V novších verziách je možné pri úlohe zadávať aj počet
odpracovaných hodín a časový odhad na dokončenie. Systém potom vie všetky dáta
vyhodnocovať a vytvárať tabuľky a grafy či už pre celé projekty, jednotlivé úlohy, alebo
vývojárov. Veľkou výhodou oproti väčšine projektov je jej aktuálnosť, podpora a stále
doplňovanie alebo inovácia funkcií. Robustnosť aplikácie Bugzilla spočíva aj v tom, že
umožňuje export úloh do rôznych dátových formátov ako napr. iCalendar alebo CSV a XML.
V dnešnej dobe sa považuje za najpoužívanejší systém na sledovanie chýb, ktorý používa
množstvo užívateľov, vrátane projektov otvoreného softvéru (Apache, Linux, Open Office,
Eclipse) rovnako ako aj súkromné či verejné organizácie (NASA, IBM, NOKIA, AMD, The
New York Times a mnoho iných).
3.2.2 Buggy
Buggy predstavuje jednoduchú desktopovú aplikáciu, ktorá spĺňa základné
požiadavky používateľa, ako sú pridávanie chýb (obr. 3), pripojenie súborov k problému,
prideľovanie užívateľom. Inštalácia systému je veľmi jednoduchá vo forme .exe súboru, ktorý
po nainštalovaní vytvorí databázovú štruktúru a pripraví local user interface. Veľký problém
je nestabilita systému, program niekedy spadne pri pridávaní príspevku. Pri minimalizácia a
následne dlhšom nepoužití (rádovo desiatky minút) program v drvivej väčšine zamrzne a nie
je možne pokračovať v používaní, je nutne ukončiť proces. V databáze sa však pridá prázdny
príspevok a nami zadaný popis, samozrejme, nebol uložený. Ďalším značným nedostatkom
je, že program nie je multiplatformový.
3.2.3 Mantis
Web-orientovaný bug tracking systém, vytvorený v programovacom jazyku PHP,
dostupný pod licenciou GNU GPL. Inštalácia celého systému je jednoduchá, stačí
prekopírovať súbory do adresára dokumentov webservera, a systém po vyžiadaní niekoľkých
informácií sám vytvorí konfiguračný súbor a databázovú štruktúru.
Systém umožňuje prideľovať rozličné prístupové práva pre používateľov, ako administrátor,
reporter, developer, manager, viewer. Avšak definovanie iných typov je nemožné. Typ
reporter môže vytvárať nové záznamy o chybách, developeri môžu vytvárať, i meniť stav
záznamov, manažéri majú naviac možnosť manažovať projekty, administrátori môžu navyše
spravovať aj užívateľov. Typ viewer môže len sledovať záznamy o chybách. Je možné
nastaviť automatické posielanie emailových správ pri výskyte nových, alebo zmien záznamov
o chybách, ktoré je možné navyše preberať aj Rss čítačkou. Jednotliví užívatelia môžu
definovať sledované záznamy, o ktorých im budú znázornené informácie vždy na hlavnej
stránke užívateľa. Systém ponúka možnosť vytvárania noviniek, ktoré môžu prečítať
používatelia. Je to užitočné na distribúciu informácií, ktoré potrebujú vedieť ľudia pracujúci
na projekte. V systéme je možné definovať viac projektov, každý s viacerými možnými -
verziami. Projekty môžu mať aj definované pod-projekty. Je možné vytvárať kategórie chýb
pre každý projekt zvlášť. Umožňuje vytváranie sumárov a logov zmien. Nevýhoda systému
je chudobné grafické spracovanie užívateľského prostredia, ktorý sa tak stáva
neprehľadnou. Ďalšia nevýhoda systému je jeho nestabilita na niektorých webových
serveroch.
4.1 Podrobné porovnanie vybratých produktov BTS
Bugzilla Buggy Mantis
LicenciaMozilla Foundation -
MPL
Platená licencia:
1-4používateľov 59.00$
5-9používateľov 49.00$
unlimited: 599.00$
Free licencia GNU GPL
Rozhranie Webové Desktopové webové
Ukladanie údajov MySQL, PostgreSQLTopspeed, alebo iné cez
ODBC rozhranieMySql, PosgreSQL, MS SQL
Aktuálna verzia Bugzilla 3.2 Buggy 4.1.9 mantis-1.1.2
Dátum poslednej 2008-08-12 2008-03-11 2008-06-20
úpravy (last update)
Export dát iCalendar, CSV XMLMS Excel, HTML
a CSV
Excel 2000 Excel View Word
2000 Word View, CSV
Import dát XML DBase or XML XML
Formáty príloh Ľubovoľný súborPDF, HTML, RTF,
JPEG, BMP, EMFĽubovoľný súbor
Unicode support Áno Áno Áno
Notifikácia používateľa e-mail, RSS e-mail e-mail, RSS
Ukladanie histórie Áno Áno Áno
Integrované testovacie
moduly
Áno - CVS, Subversion,
Perforce, AccuRev Nie Áno – CVS, Subversion
Dynamic
documentation
integration/generation
Vlastné wiki Nie MediaWiki,DokuWiki,XWiki
Diskusné fórum Áno Nie Nie
4. Použitá literatúra
[1] PETER ČIMO, Podporné prostriedky pre riadenie softvérového projektu so zameraním sa na sledovanie úloh, ľudské zdroje, matica zodpovednosti, Slovenská technická univerzita Fakulta informatiky a informačných technológií
[2] http://en.wikipedia.org/wiki/Bugtracker
[3] http://en.wikipedia.org/wiki/Comparison_of_issue_tracking_systems
[4] http://en.wikipedia.org/wiki/Bugzilla
[5] http://sk.wikipedia.org/wiki/Bugzilla
[6] http://www.bugzilla.org/
[7] http://www.novosys.de/Produkte/Buggy/Buggy.html
[8] www.linuxjournal.com/aricle/7747 , Linux Journal 2005. január, 129. Číslo
[9] www.mantisbt.org/manual
Príloha 1 - Obrázky
Obr. 1- obsluha chyby pomocou aplikácie Bugzilla
Obr. 2 ukážka výpisu chýb z programu Bugzilla
Obr. 3- zadávanie chýb pomocou nástroja Buggy