View page as slide show

TFS - zarządzanie projektem w metodologii Scrum

  • jedna z najbardziej znanych metodyk zwinnych (Agile) : Manifesto for Agile Software Development
  • metoda przyrostowa : produkt powstaje w kolejnych iteracjach
  • sprawny (ale niekompletny) produkt już po pierwszej iteracji
  • sprawna kontrola nad przebiegiem prac (narzędzia TFS)
  • wczesne wykrywanie problemów
  • zespoły 7+-2
  • kontrola czasu - czynność musi być zakończona w określonym czasie
  • zespół ma charakter samoorganizujący
  • product owner - odpowiada za projekt przed klientem
  • scrum master - odpowiedzialny za proces wytwarzania, organizację pracy, podział ról
  • team members
  • Product Backlog - wykaz prac produktu (np. produkty WBS)
  • Sprint backlog - lista zadań w sprincie
  • Sprint - pojedyncza iteracja (7-30 dni): planowanie, realizacja, podsumowanie
    • planowanie sprintu - wybór zadań, czas realizacji zadań z góry ustalony, lista zadań nie powinna się zmieniać w czasie iteracji
    • codzienny scrum: spotkanie 15 min. na stojąco prowadzone przez scrum master
    • przegląd: podsumowanie na zakończenie sprintu, retrospektywa sprintu
  • Work Item - jednostka pracy, zgłoszenie, zadanie do wykonania w określonym czasie przez członka zespołu
  • Fabrikam Fiber Web Team Home View - projekt demo


, Źródło: http://msdn.microsoft.com/

  • zgłoszenie (zadania lub błedy) nieprzydzielone do iteracji
  • ogólny plan prac, user story (życzenia klienta)
  • zmienia się w czasie prac nad projektem
  • elementy są zazwyczaj rozbijane na bardziej szczegółowe zadania

  • nazwa, opis, właściciel, stan: New → Approved → Commited → Done, priorytet
  • effort (szacowany czas), planning poker

  • Iteracja (sprint), określona w pewnym okresie czasu
  • Lista zadań - zazwyczaj rozbite elementy z lisy Product Backlog
  • Wykresy obrazujące postęp prac
  • Capacity - określenie czasu jaki członkowie mogą poświęcić dziennie na pracę oraz ich specjalizacji

  • Rodzaj: task, bug, impediment(issue), user story, test case, …
  • Assigned to: osoba odpowiedzialna za wykonanie
  • Stan: To do, In progress, Done, Removed
  • połączenia między zadaniami: hierarchiczne lub płaskie
  • każdy typ posiada swój własny cykl życia
  • możliwość definiowania własnych typów (XML)
  • integracja z systemem kontroli wersji, z systemem buildów, testów
  • połączenia zadań z różnymi zasobami: strony www, dokumenty, multimedia,

Typowy cykl życia zgłoszenia:

  • osoba posiadająca uprawnienia do raportowania wprowadza informację o błędzie
  • osoba lub system określa osobę, której dotyczy błąd i generowane jest powiadomienie
    (alerty, email i inne kanały komunikacji),
  • osoba, która otrzymała powiadomienie, akceptuje go do poprawy lub deleguje ten błąd do innej osoby,
  • osoba odpowiedzialna kończy pracę nad błędem na jeden z kilku sposobów – informując, że błąd został poprawiony, odłożony w czasie, nie jest możliwy do poprawy czy, że zgłoszenie błędu było niepoprawne,
  • jeśli błąd usunięto, osoba odpowiednio uprawiona osoba weryfikuje, czy błąd faktycznie został usunięty i zwykle zgłoszenie błędu jest zamykane.
  • po ostatecznym rozwiązaniu problemu (np. po opublikowaniu albo instalacji u klienta wersji pozbawionej błędu) błąd jest zamykany.


Żródło: http://trac.edgewall.org/chrome/common/guide/basic-workflow.png

Inne przykłady

  • effort - wskaźnik postępu ukończenia kolejnych funkcjonalności
  • każde zadanie ma określony (zaplanowany) czas realizacji
  • Burndown Chart


Żródło: wikipedia.org

  • Team Explorer → Work Items - lista zadań projektu
  • Team Explorer → My Work - lista zadań powiązanych z zalogowanym użytkownikiem
  • Queries (raporty i zapytania) Team → New query
  • Dodawanie zgłoszeń Team → Add New Work Item
  • Powiązanie zgłoszenia (Work Item, asociate, resolve) z wysłaniem kodu (Check In) do repozytorium