Role w zespole
projektowym
Przygotował:
Bartłomiej Pióro
Michał Kruk
Role w zespole na
przykładzie metodyk
MSF
Extreme Programming
MSF
Microsoft Solutionns
Frameworks
Role
Cele i role
Cel
Rola
Satysfakcja klienta
Product managment
Utrzymanie w ryzach Program management
Dostarczenie
dokumentacji zgodnej
ze specyfikacją
Development
Odkrycie problemów
Testing
Pomoc dla
użytkowników i
edukacja
User education
Wdrożenie
Logistic managment
Product Management Role
-zapewnienie satysfakcji
klienta
-zapewnienie spełnienia
wymagań klienta
-zapewnienie komunikacji
między klientem, a zespołem
Program Manager Role
Zarządza:
-wymaganiami funkcjonalnymi (co
ma być wykonane)
-głównym planem projektu (w jaki
sposób projekt będzie
wykonywany)
Program Manager Role cd.
Odpowiada za:
-Zarządzanie finansami
-Zarządzanie ludźmi
-Zarządzanie czasem
-Zarządzanie sprzętem
-Zarządzanie oprogramowaniem
-Zarządzaniem informacją
Development Role
-Jest odpowiedzialny aby kod był
zgodny ze specyfikacją.
-Służy jako konsultant technologiczny
-Konstruuje prototypy
-Jako budowniczy zarządza
produktem na niskim poziomie
Testing Role
-Tworzy strategie testów, planów,
terminarzy, skryptów
-Ma za zadanie wykrycie
niedogodności
User Education Role
Zadania:
- szkolenie klientów
- uczestnictwo w procesie
planowania dystrybucji produktu
- tworzenie i testowanie materiałów
szkoleniowych
Logistick Managment Role
Jest odpowiedzialny za:
-logistyczne wsparcie produktu
-help desk
-inne struktury organizacyjne w zakresie
bezbolesnego wprowadzenia i zarządzania
-zrozumienie struktury produktu, oraz jego
wymagań aby móc zapewnić w miejscach
instalacji wdrożenie produktu zgodnie z
jego wymaganiami
Współdzielenie ról
Extreme programming
XP jest to metodyka przeznaczona
dla niewielkich i średnich
zespołów, która sprawdza się przy
słabo sprecyzowanych lub szybko
zmieniających się wymaganiach.
Role
-Tracker
-Customer
-Programmer
-Tester
-Doomsayer
-Manager
Tracker
Chodzi sobie raz lub dwa razy w tygodniu
i pyta każdego programistę jak im idzie
praca i słucha ich odpowiedzi,
podejmuje działanie jeśli widzi, że
sprawy idą niewłaściwym torem. W
tych akcjach zawierają się: sugestie na
sesjach CRC, ustawień spotkań z
klientem, prośba trenera lub innego
programistę o pomoc
Customer
Zapisuje historyjki i specyfikuje testy
funkcjonalne. Ustawia priorytety,
wyjaśnia historyjki, przegląda sesje
CRC. Może, ale nie musi być końcowym
użytkownikiem. Ma władzę w
podejmowaniu decyzji w odpowiedzi na
historyjki. Może mieć tytuły: Planner,
Analyst, Project lead, Product lead, lub
Designer
Programmer
Oszacowuje historyjki, definiuje zadania
inżynierskie z historyjek, szacuje jak
długie historyjki i jakie zadania może
wziąć. Implementuje historyjki i testy
modułów
.
Tester
Implementuje i uruchamia testy
funkcjonalne. Wizualizuje wyniki,
zapewnia aby ludzie wiedzieli kiedy
wyniki są negatywne
Doomsayer
Wskazuje kiedy niebo się wali i pokazuje
kiedy jesteś w poważnych tarapatach
Manager
Planuje spotkania, pilnuje procesu spotkań,
notuje wyniki spotkań dla przyszłych
raportów (robi notatki), przekazuje do
Trackera, zazwyczaj odpowiedzialny przed
sponsorem. Chodzi na spotkania, przynosi
użyteczne informacje, płaci za pizze,
chroni przed deszczem. Nie mówi ludziom
co mają robić (CUSTOMER), kiedy mają to
robić anie nie sprawdza jak im idzie.
Współdzielenie ról
Niektóre role można łączyć. Na przykład
ta sama osoba może być MANAGER I
Tracker. Jednak niektóre role nie
powinny być łączone: Programer –
Tester, Programer – Tracker, Customer
– Programmer, Coach-tracker. Manager
najprawdopodobnie nie powinien być
łączony z żadną rolą oprócz Tracker’a.
Organizacja zespołu
programistycznego
- struktura sieciowa
- struktura gwiaździsta
Struktura sieciowa
• Zalety:
• Dzięki ścisłej współpracy członkowie zespołu
wzajemnie kontrolują swoją pracę. Szybko osiągane są
standardy jakości.
• Umożliwia realizacje idei wspólnego programowania.
• Ponieważ praca członków jest znana dla innych
członków łatwo oni mogą przejąć obowiązki
pracownika, który opuścił zespół.
• Struktura sieciowa nie może liczyć więcej niż 8 osób.
Struktura gwiaździsta
• Jest przydatna wtedy, gdy w skład zespołu
wchodzi wielu niedoświadczonych pracowników.
Szef kontroluje i koordynuje pracę.
• Wielkość zespołu może być znacznie większa niż
w strukturze sieciowej.
• Duże problemy w momencie odejścia szefa
zespołu.