Redmine to elastyczna aplikacja internetowa wspierająca zarządzanie projektami programistycznymi. Agreguje ona w sobie wiele związanych z prowadzeniem projektów funkcjonalności, w szczególności zawiera system śledzenia defektów ze zdefiniowanym cyklem życia defektów.
Scrum Master projektu
otrzymuje
uprawnienia administratora. Uprawnienia te powinny
zostać wykorzystane do skonfigurowania systemu Redmine. Konfiguracja w
szczególności obejmuje utworzenia kont wszystkim osobom pracującym nad
projektem.
W systemie Redmine należy
odnotowywać wszystkie znalezione w rozwijanym systemie defekty.
Zagadnienia odpowiadające defektom należy oznaczać jako 'Błąd'.
Błędy można zgłaszać każdej z grup projektowych biorących
udział w realizacji projektu, nie tylko swojej. Każdy zgłoszony
błąd powinien zostać naprawiony zgodnie z cyklem życia defektów. Za
rozwiązywanie błędów przyznawane są wpływające na ocenę końcową punkty.
W systemie Redmine
zgłaszane są również zadania. Cykl życia zadania jest identyczny jak
błędu i podobnie jak w przypadku błędów przyznawane są wpływające na
ocenę końcową punkty.
Dla każdego przypadku
użycia, nad którym rozpocznie
się prace powinno być w Redmine utworzone zagadnienie typu 'Przypadek
użycia'.
Aktualne
wersje dokumentów wytworzonych na potrzeby danego przypadku użycia
powinny być do takiego zagadnienia dołączone w postaci załączników.
Konieczne dołączone powinny zostać scenariusz przypadku użycia oraz
specyfikacja testów automatycznych. Tym sposobem każda z grup
projektowych będzie miała łatwy dostęp
do aktualnej wersji dokumentacji.
Za zrealizowanie przypadku
użycia przyznawane są wpływające na ocenę końcową punkty. Za każdy
przypadek użycia można zdobyć 1, 2, 3, 5 lub 8 punktów. Liczba punktów jest
ustalana przed rozpoczęciem prac nad przypadkiem użycia i powinna
odzwierciedlać stopień skomplikowania danego przypadku użycia.
Kierownik zespołu powinien
rozpocząć prace nad przypadkiem użycia przez dokonanie podziału na
zadania (Subtasks). Każde z zadań powinien przydzielić jednemu z
członków zespołu, w tym również samemu sobie.
W Redmine można znaleźć większość zaplanowanych do realizacji przypadków użycia (w
trakcie prac nad projektem będą pojawiać się kolejne, niemniej te
najważniejsze powinny być znane już na początku prac). Wyrażone one są
w postaci znanych ze zwinnych metodyk wytwarzania oprogramowania
historii użytkownika (ang. User Story). Są one zapisane w postaci
zaproponowanej przez Deana Leffingwella w książce Agile Software
Requirements, mianowicie:
Jako <rola/aktor> <fraza czasownikowa - wykonywana czynność> [dzięki czemu <wartość biznesowa>].
Część znajdująca się w nawiasach kwadratowych jest opcjonalna.
Fragmenty znajdujące się w nawiasach trójkątnych powinny być wypełnione
treściami specyficznymi dla danego przypadku użycia. Przykład:
Jako administrator mogę dodawać nowe konta użytkowników.
Zadaniem studenta będzie przygotowanie na podstawie w taki sposób określonego wymagania szczegółowej specyfikacji (scenariusza przypadku użycia, diagramu aktywności) i testów akceptacyjnych, a następnie wynikającego z powyższych modelu (diagramy klas i sekwencji).
Redmine zawiera pewne dodatkowe funkcjonalności, które nie są bezpośrednio związane z cyklem życia wspomnianych powyżej zagadnień. Spośród tych funkcjonalności obligatoryjne jest stosowanie wiki, które powinno usprawniać komunikację pomiędzy grupami projektowymi. W wiki należy umieszczać dokumenty, które są istotne dla wielu grup projektowych np. definicje interfejsów komponentów, model danych, opis koncepcji systemu.
http://www.redmine.org – strona domowa systemu Redmine
http://snow.iiar.pwr.wroc.pl/redmine/ - instancja systemu Redmine wykorzystywana na zajęciach projektowych