Przejdź do treści

Ian Carroll: 17 sposobów na zarządzanie zależnościami

Zależności są wszędzie

Metryk Cycle Time pokazuje jaką ilość czasu zajmuje realizacja zadań od momentu zobowiązania się do pracy do momentu spełnienia Definition of Done. To co chcemy osiągnąć to być bardziej przewidywalni. W metryce zaobserwujemy to w histogramie Cycle Time. Jest wiele czynników które mogą wpływać na brak (niższą) przewidywalność. Można to też określić mianem fat/long tail distribution, czyli długiego lub krótkiego ogona. Taka informacja jest bardzo przydatna w zrozumieniu co dzieje się w naszym projekcie. Ponieważ tych czynników jest zawsze wiele, jednym z nich, którym tutaj się zajmiemy, są zależności w projekcie agile.

3 rodzaje zależności

Rozmawiając o zależnościach zawsze warto się upewnić o którym typie mówimy.

  • zależności wiedzy
  • zależności zadań
  • zależności zasobów

Zespoły nawet jeżeli są samowystarczalne w pewnych obszarach są zależne od innych zespołów. Często mogą być to zależności wielopoziomowe, gdzie poszczególne zespoły stają się dla siebie zespołami down stream i up stream.

2 podejścia do zarządzania zależnościami:

  • usunięcie zależności w projekcie Agile – przeważnie trudne do osiągnięcia
  • zmniejszenie wpływu zależności na przepływ pracy

17 sposobów zarządzania: zależności w projekcie Agile:

  1. planowanie prac przy pomocy wykresów Gantt’a
  2. tablica zależności (popularna w SAFe) – zwróć uwagę, że często są tworzone ale potem nie aktualizowane
  3. wizualizacja blokad i zależności, i ich grupowanie również z użyciem matrycy
  4. ograniczenie WIP na poziomie portfolio
  5. monitorowanie i redukcja czasów oczekiwania
  6. tworzenie możliwości rozwiązywania zadań we własnym zespole
  7. swarming pomiędzy zespołami
  8. pull requests – działanie w trybie bardziej open source niż zamkniętych repozytoriów
  9. używanie mocków, uproszczonych rozwiązań
  10. redukcja kolejek
  11. wizualizacja zależności w backlogu
  12. zarządzanie oboma stronami zależności – wizualizacja pracy na tablicy każdego zespołu
  13. mapa zależności
  14. ustalone zasady działania szczególnie dla zadań pilnych
  15. zmiany architektury aby możliwe było przerwanie zależności
  16. usunięcie współdzielonych środowisk pracy
  17. trunk based development

Podsumowanie tematu zależności w projekcie Agile

Pamiętaj, że w celu lepszego zarządzania zależnościami warto skupić się na takich trzech obszarach:

  • wizualizacja
  • metryki
  • optymalizacja

Teraz Przeczytaj też Troy Magennis: Zrozumieć wpływ ryzyka, blokerów i zależności.

Źródło: https://www.youtube.com/watch?v=w5DRtM34MoQ