System śledzenia błędów - Bug tracking system
System śledzenia błędów lub system śledzenia defektów to aplikacja, która śledzi zgłoszone błędy oprogramowania w projektach tworzenia oprogramowania. Można to traktować jako rodzaj systemu śledzenia problemów .
Wiele systemów śledzenia błędów, takich jak te używane w większości projektów oprogramowania typu open source , umożliwia użytkownikom końcowym bezpośrednie wprowadzanie raportów o błędach. Inne systemy są używane tylko wewnętrznie w firmie lub organizacji zajmującej się tworzeniem oprogramowania . Zazwyczaj systemy śledzenia błędów są zintegrowane z innym oprogramowaniem do zarządzania projektami .
System śledzenia błędów jest zwykle niezbędnym składnikiem profesjonalnej infrastruktury programistycznej, a konsekwentne korzystanie z systemu śledzenia błędów lub problemów jest uważane za jedną z „cech charakterystycznych dobrego zespołu programistycznego”.
Zrobienie
Głównym elementem systemu śledzenia błędów jest baza danych, która rejestruje fakty o znanych błędach. Fakty mogą obejmować czas zgłoszenia błędu, jego wagę, błędne zachowanie programu i szczegóły dotyczące sposobu odtworzenia błędu; a także tożsamość osoby, która go zgłosiła, oraz programistów, którzy mogą pracować nad jego naprawieniem.
Typowe systemy śledzenia błędów obsługują koncepcję cyklu życia błędu, który jest śledzony na podstawie statusu przypisanego do błędu. System śledzenia błędów powinien umożliwiać administratorom konfigurowanie uprawnień na podstawie statusu, przenoszenie błędu do innego statusu lub usuwanie błędu. System powinien również umożliwiać administratorom konfigurowanie statusów błędów i zakresu, w jakim można przenieść błąd w określonym stanie. Niektóre systemy wysyłają e-maile do zainteresowanych stron, takich jak nadawca i przypisani programiści, w przypadku dodania nowych rekordów lub zmiany statusu.
Możliwe jest wykonanie automatycznej diagnozy na podstawie treści zgłoszenia błędu. Na przykład, można wykonać automatyczne wykrywanie duplikatów błędów lub automatyczne naprawianie błędów .
Stosowanie
Główną zaletą systemu śledzenia błędów jest zapewnienie przejrzystego scentralizowanego przeglądu żądań programistycznych (w tym zarówno błędów, jak i ulepszeń, granice są często rozmyte) oraz ich stanu. Lista pozycji oczekujących z priorytetami (często nazywana zaległościami) dostarcza cennych danych wejściowych podczas definiowania mapy drogowej produktu lub może po prostu „następnej wersji”.
W środowisku korporacyjnym system śledzenia błędów może służyć do generowania raportów dotyczących produktywności programistów przy naprawianiu błędów. Jednak czasami może to dawać niedokładne wyniki, ponieważ różne błędy mogą mieć różne poziomy ważności i złożoności. Waga błędu może nie być bezpośrednio związana ze złożonością jego naprawy. Wśród menedżerów i architektów mogą być różne opinie.
Lokalny bug tracker (LBT) jest zazwyczaj program komputerowy używany przez zespół specjalistów wsparcia aplikacji (często help desk ) do śledzenia zagadnień przekazywanych do programistów. Korzystanie z LBT umożliwia specjalistom pomocy technicznej śledzenie błędów w ich „własnym języku”, a nie w „języku programistów”. Ponadto LBT umożliwia zespołowi specjalistów pomocy technicznej śledzenie określonych informacji o użytkownikach, którzy zadzwonili, aby złożyć skargę - informacje te nie zawsze mogą być potrzebne w rzeczywistej kolejce programistycznej. Tak więc istnieją dwa systemy śledzenia, gdy LBT jest na miejscu.
Część zintegrowanych systemów zarządzania projektami
Systemy śledzenia błędów i problemów są często wdrażane jako część zintegrowanych systemów zarządzania projektami . Takie podejście umożliwia m.in. śledzenie i naprawianie błędów w ogólnym procesie rozwoju produktu, naprawianie błędów w kilku wersjach produktu, automatyczne generowanie bazy wiedzy o produktach i informacji o wydaniu.
Rozproszone śledzenie błędów
Niektóre narzędzia do śledzenia błędów są przeznaczone do użytku z rozproszonym oprogramowaniem do kontroli wersji . Te rozproszone narzędzia do śledzenia błędów umożliwiają wygodne odczytywanie raportów o błędach, dodawanie ich do bazy danych lub aktualizowanie, gdy programista jest offline. Fossil i Veracity zawierają rozproszone narzędzia do śledzenia błędów.
Ostatnio komercyjne systemy śledzenia błędów również zaczęły się integrować z rozproszoną kontrolą wersji . Na przykład FogBugz włącza tę funkcjonalność za pomocą narzędzia do kontroli źródła, Kiln.
Chociaż wiki i systemy śledzenia błędów są tradycyjnie postrzegane jako odrębne typy oprogramowania, ikiwiki może być również używany jako rozproszone narzędzie do śledzenia błędów. Może również zarządzać dokumentami i kodem w sposób zintegrowany i rozproszony. Jednak jego funkcjonalność zapytań nie jest tak zaawansowana ani tak przyjazna dla użytkownika, jak niektóre inne nierozprowadzane narzędzia do śledzenia błędów, takie jak Bugzilla . Podobne stwierdzenia można powiedzieć o trybie org , chociaż nie jest to oprogramowanie wiki jako takie.
Śledzenie błędów i zarządzanie testami
Podczas gdy tradycyjne narzędzia do zarządzania testami, takie jak HP Quality Center i IBM Rational Quality Manager, są dostarczane z własnymi systemami śledzenia błędów, inne narzędzia integrują się z popularnymi systemami śledzenia błędów.
Zobacz też
- Zarządzanie cyklem życia aplikacji
- Porównanie systemów śledzenia problemów - w tym systemów śledzenia błędów
- Porównanie oprogramowania do zarządzania projektami - w tym systemy śledzenia błędów