Wszystkie artykuły

Workflow TODO dewelopera — zamiana ticketów w realną realizację

P
Piotr Tomczak · Visio Lab / OpenArca
| | 11 min czytania

Większość narzędzi workflow jest zbudowana wokół ticketów. Deweloperzy jednak pracują w zadaniach. Ta luka — między sposobem, w jaki systemy organizują pracę, a sposobem, w jaki ludzie faktycznie ją wykonują — tworzy więcej tarcia, niż większość zespołów zdaje sobie sprawę.


Problem: tickety to nie realizacja

W prawie każdym zespole deweloperskim używającym narzędzia do zarządzania projektami istnieje niemy konflikt. Narzędzie myśli w ticketach. Deweloper myśli w zadaniach.

Ticket to jednostka organizacji. Ma tytuł, opis, status, osobę przypisaną, może etykiety i pole priorytetu. Żyje na tablicy, przemieszcza się przez kolumny i w końcu zostaje zamknięty. Z perspektywy systemu to jest cykl życia pracy.

Ale z perspektywy dewelopera praca wygląda zupełnie inaczej.

Dzień dewelopera to sekwencja konkretnych działań: czytaj wymagania, sprawdź powiązany kod, napisz nieudany test, zaimplementuj poprawkę, obsłuż przypadek brzegowy wymieniony w komentarzu, zaktualizuj dokumentację API, otwórz pull request, odpowiedz na przegląd. Żaden z tych kroków nie istnieje w tickecie. Ticket mówi “Napraw timeout uwierzytelniania na mobile.” Realizacja to wszystko, co dzieje się między podniesieniem a oznaczeniem jako gotowe.

Tworzy to fundamentalne rozłączenie. Narzędzie workflow śledzi co. Deweloper zarządza jak — zazwyczaj w głowie, w osobistym notatniku, w pliku tekstowym lub w jeszcze innej aplikacji.

Efekt jest przewidywalny. Przełączanie kontekstu rośnie, bo deweloper nieustannie przemieszcza się między “oficjalnym” systemem a swoim osobistym zarządzaniem zadaniami. Priorytety stają się niejasne, bo tablica pokazuje, co jest przypisane, ale nie to, nad czym deweloper faktycznie zdecydował się pracować dalej. Śledzenie zadań jest zduplikowane — ta sama praca istnieje jako ticket na tablicy i jako mentalne TODO w głowie dewelopera, i te dwie rzeczy nie zawsze się zgadzają.

Praca istnieje w systemie. Ale realizacja staje się rozproszona między narzędziami, notatkami i pamięcią.


Dlaczego ta luka trwa

To nie jest nowy problem i nie dlatego, że deweloperzy są zdezorganizowani. To dlatego, że większość narzędzi workflow została zaprojektowana z perspektywy menedżera, nie budowniczego.

Gdy projektujesz system, by odpowiadać na pytanie “jaki jest status naszej pracy?”, budujesz tablice, dashboardy i raporty. Optymalizujesz pod kątem widoczności i śledzenia. Jednostką pracy jest ticket, bo tego potrzebujesz do liczenia, kategoryzowania i mierzenia.

Gdy projektujesz system, by odpowiadać na pytanie “co powinienem zrobić dalej?”, budujesz coś zupełnie innego. Optymalizujesz pod kątem jasności, sekwencji i skupienia. Jednostką pracy staje się zadanie — coś wystarczająco konkretnego, by działać na tym teraz.

Większość narzędzi próbuje obsłużyć obie perspektywy tym samym interfejsem. Tablica ma działać zarówno dla lidera zespołu potrzebującego przeglądu, jak i dla dewelopera potrzebującego wiedzieć, na czym skupić się po obiedzie. W praktyce nie służy żadnemu z nich szczególnie dobrze. Lider chce bogatszego filtrowania i raportowania. Deweloper chce prostej, uporządkowanej listy tego, co ma na talerzu.

Niektórzy deweloperzy rozwiązują to, budując osobiste systemy na szczycie narzędzia zespołowego. Utrzymują oddzielną listę TODO odzwierciedlającą przypisane tickety plus cokolwiek podzadań i notatek potrzebują do faktycznej realizacji. To działa, ale wprowadza obciążenie utrzymania i problem synchronizacji. Gdy status ticketu zmienia się na tablicy, osobiste TODO nie aktualizuje się. Gdy deweloper kończy podzadanie w swoich notatkach, tablica tego nie odzwierciedla. Dwa systemy oddalają się od siebie, a utrzymanie ich wyrównania staje się kolejnym zadaniem — takim, które nie produkuje żadnej faktycznej wartości.


Podejście OpenArca: realizacja jako workflow pierwszej klasy

OpenArca podchodzi do tego problemu inaczej. Zamiast traktować realizację jako coś, co dzieje się poza systemem — w głowach deweloperów, w osobistych narzędziach, w rozmowach na boku — traktuje realizację dewelopera jako element workflow pierwszej klasy.

Sercem tego podejścia jest przepływ Developer TODO: osobista przestrzeń realizacji dla każdego dewelopera, która pozostaje zsynchronizowana ze stanem ticketów systemu.

Oto co to oznacza w praktyce.

Zadania powiązane z prawdziwymi ticketami

Każdy element w TODO dewelopera jest połączony z rzeczywistym ticketem w systemie. To nie kopia, nie lustro, nie oddzielna encja wymagająca ręcznej synchronizacji. To ta sama praca, oglądana przez pryzmat zoptymalizowany pod realizację, a nie śledzenie.

Gdy deweloper patrzy na swoje TODO, widzi zadania, za które jest odpowiedzialny — z pełnym kontekstem z ticketu powiązanym. Oryginalne żądanie klienta, dyskusja zespołu, podjęte decyzje, aktualny status — wszystko jest tam bez przełączania się na inny widok lub otwierania oddzielnego narzędzia.

Jasne rozróżnienie aktywna vs. ukończona praca

Jednym z najbardziej pomijanych aspektów osobistej produktywności jest satysfakcja i jasność płynąca z widzenia tego, co się zrobiło, nie tylko tego, co zostało. Przepływ TODO OpenArca utrzymuje jasne rozdzielenie między aktywną pracą a ukończoną pracą. Widzisz swoje aktualne skupienie bez hałasu ukończonych zadań, ale ukończona praca pozostaje widoczna, gdy jej potrzebujesz — na daily, dla kontekstu lub po prostu dla pozytywnego impulsu widząc postęp.

Przeciąganie i zmiana kolejności priorytetyzacji

Priorytet w narzędziu workflow to zazwyczaj pole na tickecie — P1, P2, P3 — ustawione przez kogoś, kto może nie być osobą wykonującą pracę. Ale rzeczywisty priorytet realizacji jest osobisty i kontekstowy. Deweloper może wybrać najpierw rozwiązanie technicznie prostszego zadania, bo odblokuje to kolegę, nawet jeśli “wyżej priorytetowy” ticket mógłby poczekać jeszcze godzinę.

Przepływ TODO OpenArca pozwala deweloperom przeciągać i zmieniać kolejność zadań, by odzwierciedlała ich faktyczną zamierzoną sekwencję realizacji. Nie chodzi o nadpisywanie priorytetów zespołu — chodzi o danie deweloperom sprawczości nad sekwencjonowaniem własnej pracy w granicach, które zespół ustalił.

Lekka przestrzeń realizacji

TODO to nie kolejny w pełni funkcjonalny widok zarządzania projektami. Jest celowo minimalny — skupiona przestrzeń, gdzie jedyne pytanie brzmi “co robię i co jest dalej?” Nie ma wykresów, wskaźników prędkości ani krzywych wypalenia. Te rzeczy mają swoje miejsce, ale nie w przestrzeni, gdzie deweloper próbuje się skoncentrować na dostarczaniu.

Filozofia projektowania jest prosta: deweloperzy skupiają się na robieniu, nie na zarządzaniu.


Dlaczego synchronizacja zmienia wszystko

Prawdziwa siła tego podejścia tkwi nie w żadnej pojedynczej funkcji — lecz w synchronizacji między przestrzenią realizacji dewelopera a stanem workflow zespołu.

W tradycyjnym ustawieniu tickety i osobiste TODO to oddzielne systemy. Gdy coś zmienia się na tablicy — ticket jest repriorytetowany, nowe zgłoszenie jest przypisane, blokada zostaje usunięta — deweloper musi ręcznie zauważyć i zaktualizować swój plan. Tworzy to opóźnienie, pominięte aktualizacje i ciągły niski poziom niepokoju “czy pracuję nad właściwą rzeczą?”

W OpenArca, gdy zmienia się ticket, TODO dewelopera to odzwierciedla. Nowo przypisany ticket pojawia się w jego przestrzeni realizacji. Zmiana statusu na tablicy aktualizuje kontekst zadania. Zmiana priorytetu jest natychmiast widoczna tam, gdzie deweloper faktycznie ją zobaczy — w swoim osobistym workflow, nie ukryta w powiadomieniu tablicy.

To działa też w odwrotnym kierunku. Gdy deweloper oznacza zadanie jako gotowe w swoim TODO, status ticketu aktualizuje się odpowiednio. Widok pracy zespołu pozostaje dokładny bez konieczności przełączania kontekstu przez dewelopera na tablicę, znalezienia ticketu i ręcznego przeniesienia go do następnej kolumny.

Wynik jest taki, że realizacja i śledzenie pozostają wyrównane automatycznie. Brak dodatkowych spotkań koordynacyjnych. Brak “czy wszyscy mogą zaktualizować tickety przed stand-upem?” Brak narzutu synchronizacji w ogóle.


Realizacja ponad zarządzanie

Za tym podejściem stoi filozofia warta wyraźnego sformułowania.

Większość narzędzi workflow działa na domniemanym założeniu: im więcej śledzisz, tym lepiej realizujesz. Dodaj więcej pól. Utwórz więcej widoków. Generuj więcej raportów. Jeśli realizacja nie idzie dobrze, rozwiązaniem jest więcej zarządzania.

OpenArca działa na odwrotnym założeniu: realizacja poprawia się, gdy usuwasz tarcie, nie gdy dodajesz śledzenie.

Celem nie jest dawanie menedżerom więcej danych o tym, co robią deweloperzy. Celem jest dawanie deweloperom jaśniejszej drogi od “to jest mi przypisane” do “to jest gotowe.” Każda funkcja w workflow TODO istnieje, by skrócić tę drogę — nie po to, by produkować efekt uboczny użyteczny do raportowania.

Ta różnica ma największe znaczenie dla małych zespołów. W pięcioosobowym zespole każda minuta spędzona na narzucie procesowym to minuta niespędzona na budowaniu. Nie ma biura zarządzania projektami, by absorbować koszt utrzymania rozbudowanych systemów śledzenia. Deweloperzy są procesem, a proces powinien im służyć — nie odwrotnie.

Gdy narzędzie workflow przekształca swój stan w wykonalną realizację dla każdego dewelopera — zamiast prosić każdego dewelopera o przekształcenie stanu workflow w jego własny plan działania — narzut drastycznie spada. Wyrównanie następuje jako efekt uboczny pracy, nie jako oddzielna aktywność konkurująca z pracą.


Jak to wygląda w codziennej praktyce

Żeby to uczynić konkretnym, oto jak może wyglądać typowy dzień dewelopera używającego workflow TODO OpenArca.

Rano otwierasz swoje TODO. Widzisz trzy aktywne zadania, ułożone tak, jak je zostawiłeś wczoraj. Pierwsze to naprawa buga z ticketu wsparcia — widzisz oryginalny raport klienta i wczorajszą dyskusję z kolegą o prawdopodobnej przyczynie. Zaczynasz pracować.

W połowie poranka zostaje Ci przypisany nowy ticket — pilna poprawka właśnie potriażowana przez lidera zespołu. Pojawia się w Twoim TODO automatycznie. Przeciągasz go powyżej aktualnej pracy, by zająć się nim dalej, kończysz to, co robisz, i przechodzisz do nowego zadania z pełnym kontekstem już widocznym.

Po obiedzie kończysz dwa zadania. Oznaczasz je jako gotowe w swoim TODO. Tablica aktualizuje się. Twój lider widzi postęp bez pytania. Nigdy nie otworzyłeś widoku tablicy, nie przesunąłeś karty, nie zaktualizowałeś ręcznie pola statusu.

Pod koniec dnia Twoje TODO pokazuje, co zostało na jutro. Tablica zespołu dokładnie odzwierciedla aktualny stan całej pracy. Oba nastąpiły przez normalną pracę — bez żadnej ceremonii synchronizacji.


Podsumowanie

Luka między ticketami a realizacją to jedno z najczęstszych — i najbardziej po cichu tolerowanych — źródeł tarcia w zespołach deweloperskich. Większość narzędzi traktuje to jako problem dewelopera do rozwiązania: oto Twoje tickety, teraz wymyśl, jak je faktycznie wykonać.

Workflow Developer TODO OpenArca przyjmuje inne podejście. Traktując realizację jako element systemu pierwszej klasy — z zadaniami powiązanymi z ticketami, osobistą priorytetyzacją i automatyczną synchronizacją między indywidualną pracą a stanem zespołu — zamienia narzędzie workflow z czegoś, czym deweloperzy muszą zarządzać, w coś, co aktywnie wspiera ich sposób pracy.

Dla małych zespołów, gdzie skupienie każdego dewelopera ma znaczenie, to przejście od zarządzania pracą do jej wykonywania to nie drobna wygoda. To znaczące obniżenie narzutu, które kumuluje się przez każde zadanie, każdy dzień, każdy sprint.


Celem nigdy nie było więcej śledzenia. Zawsze chodziło o lepszą realizację.

Wypróbuj OpenArca — darmowy i self-hosted

Open source na licencji AGPL-3.0. Wdrożenie z Docker w minuty.

Zobacz na GitHub