Trello kontra Jira: porównanie z perspektywy programisty
Opublikowany: 2022-03-11Dzisiejsza produkcja oprogramowania nie jest taka sama jak 20 lat temu. Oprogramowanie staje się coraz bardziej złożone, a zespoły rozproszone dosłownie na całym świecie są zależne od ludzi wyspecjalizowanych tylko w określonej części procesu. Również UI/UX stał się bardzo ważną kwestią jako konkurencja o pozyskiwanie nowych użytkowników i utrzymanie wzrostów obecnych.
W ciągu ostatniego roku pracowałem przy kilkunastu projektach i prawie wszystkie z nich korzystały z narzędzia do zarządzania projektami (PMT). Nie zamierzam dziś przedstawiać prezentacji jednego konkretnego narzędzia, ale raczej przedstawię wgląd z perspektywy programisty, w jaki sposób te narzędzia są używane w prawdziwym życiu, a także przegląd dwóch reprezentatywnych narzędzia. Mamy nadzieję, że ten artykuł pomoże decydentom i programistom dowiedzieć się, co jest najwygodniejsze dla nich, ich zespołu i projektu, nad którym pracują.
Dlaczego warto korzystać z narzędzia do zarządzania projektami?
Kiedy zaczynałem, większość moich projektów nie opierała się na narzędziu do zarządzania projektami, więc możesz zapytać, czy naprawdę go potrzebujesz. Czy programiści nie mogą po prostu tworzyć oprogramowania bez nich? Odpowiedź brzmi, że zależy to od wielu czynników, więc przeanalizujmy niektóre z nich.
Powstanie globalnych zespołów
Przy większości projektów pracuję dla ludzi na całym świecie i chociaż jest to naprawdę niesamowite, wiąże się to również z szeregiem wyzwań, z którymi zespół biurowy nie będzie musiał się zmierzyć. Strefy czasowe stają się prawdziwym problemem, gdy próbujesz nakłonić współpracownika do naprawy lub modyfikacji jakiejś części systemu, w której nie jesteś wystarczająco biegły.
Istnieją również scenariusze, w których możesz nie być w stanie porozmawiać z innym deweloperem więcej niż raz lub dwa razy w tygodniu. Narzędzia do zarządzania projektami ułatwiają takie procesy współpracy, ponieważ stają się one oficjalnym (i, ze względów praktycznych, czasem jedynym) kanałem, w którym członkowie zespołu mogą komunikować swoje potrzeby tam iz powrotem.
Oczywiście nie chodzi tylko o komunikację pomiędzy poszczególnymi członkami rozproszonego zespołu. PMT zapewniają również więcej informacji i widoczność wszystkim członkom zespołu, umożliwiając im śledzenie postępów innych członków zespołu i odpowiednie planowanie ich działań.
Współpraca
Być może myślisz, że możesz osiągnąć te same wyniki, po prostu współpracując za pośrednictwem poczty e-mail lub innych kanałów komunikacji. Mój klient zrobił to przy projekcie, nad którym pracowałem kilka miesięcy temu i to był koszmar. Ludzie używali wielu e-maili do komunikacji, więc trudno było śledzić różne wątki. Ponadto komunikacja dotycząca jednego problemu staje się układanką podzieloną na różne części, żyjąc w różnych rozmowach e-mailowych. Większość rozmów e-mail dotyczyła wielu kwestii, co utrudniało śledzenie tego, co pozostało do zrobienia.
Narzędzia do zarządzania projektami rozwiązują ten problem, prowadząc jeden strumień konwersacji poświęcony każdemu zagadnieniu, ułatwiając Ci życie, ponieważ pozwalają znaleźć wszystko, czego potrzebujesz (projekty, interfejsy API i informacje zwrotne) za pomocą jednego kliknięcia. Z perspektywy współpracy może to mieć ogromne znaczenie, ponieważ narzędzia do zarządzania projektami umożliwiają każdemu dostęp i przeglądanie wszystkich segmentów i etapów projektu, zmniejszając potrzebę ciągłej komunikacji i aktualizacji.
Zarządzaj wymaganiami projektu
Jednym z największych problemów, z jakimi borykają się zespoły, które nie korzystają z narzędzia do zarządzania projektami, jest wewnętrzna natura oprogramowania. Może pracujesz w startupie i wykonałeś zwrot więcej niż kilka razy. Być może Twoje cele i wymagania ewoluują podczas pracy nad projektem.
W tym kontekście powinniśmy myśleć o oprogramowaniu jako o żywej istocie. Niezależnie od tego, jak dobrze sporządzono wstępny plan, zawsze istnieje duża szansa, że będzie musiał się zmienić. Czasami jednak zmiany te nie są komunikowane wszystkim członkom zespołu. Kierownicy mogą porozmawiać o nowej funkcji, która da ci przewagę nad konkurencją, ale jeśli menedżer nie poinformuje o tym reszty zespołu, to się nie zdarzy.
Jeśli nie zostanie spisany, może nawet zostać zapomniany przez menedżera i dyrektora generalnego. Brak miejsca, w którym masz najnowsze i oficjalne wymagania, spowoduje, że stracisz dużo czasu i pieniędzy. PMT oferują jeden punkt prawdy, jedno miejsce, w którym wszystkie wymagania i informacje są przechowywane na czas trwania projektu. Nie chodzi tylko o to, że nie są dodawane funkcje, które można dodać później — opracowałem całe funkcje tylko po to, by odkryć, że nie powiedziano mi, że nie obsługujemy już tej funkcji.
Pamięć i wydajność czasu
Najbladszy atrament jest bardziej niezawodny niż najpotężniejsza pamięć. – Przysłowie
Tylko tyle możemy sobie poradzić w naszej głowie na raz. Kiedy dzwonisz do swoich menedżerów, a oni poruszają w trakcie rozmowy kilkanaście różnych spraw, w pewnym momencie coś zostanie stracone. Mógłbyś spróbować samemu spisać najważniejsze punkty, ale i tak coś może wpaść przez szczeliny.
Spisanie wymagań zamiast rozmawiania o nich podczas rozmowy telefonicznej to dobry sposób na wychwycenie potencjalnych brakujących elementów w przepływie lub wykrycie rzeczy, które mogą w danym momencie uniemożliwić wdrożenie tego problemu. Rozwój oprogramowania nie jest liniowy, więc możesz zacząć pracę nad funkcją już dziś, ale masz coś pilniejszego do zrobienia w produkcie i wrócić kilka tygodni lub miesięcy później tylko po to, by zdać sobie sprawę, że zapomniałeś, co dokładnie było wymagane.
Dlatego spisanie wymagań może zaoszczędzić czas, ponieważ nie musisz pamiętać lub nie musisz ponownie omawiać tej samej funkcji. Efektywność czasu jest bardzo ważna, ponieważ oprogramowanie jest bardziej złożone, więc możesz skorzystać z samego spisania rzeczy, aby skrócić czas spotkania o połowę lub więcej, skupiając się tylko na kwestiach, które musisz wyjaśnić.
Centrum
Jest to związane z poprzednim problemem śledzenia komunikacji związanej z problemem, który jest rozwiązywany, i śledzenia funkcji przyszłych wymagań bez konieczności mówienia o tych rzeczach.
Pomaga to programiście zarówno skupić się na tworzeniu rzeczy, które są obecnie wymagane, jak i dowiedzieć się, co będzie dalej. Nie chodzi tylko o wygodę i łatwy dostęp do informacji. Zwiększony poziom widoczności pozwala każdemu członkowi zespołu zobaczyć szeroki obraz i odpowiednio zaplanować z wyprzedzeniem.
Kluczowe funkcje PMT
Tak więc to, czego szukamy w PMT, to narzędzie, które pomaga zarządzać rozmową poprzez oddzielenie i uporządkowanie dyskusji na różne tematy. Pomaga to w komunikacji między ludźmi w różnych strefach czasowych i różnymi zespołami, a jednocześnie służy jako repozytorium oficjalnej wizji oprogramowania, pomagając zachować koncentrację i oszczędzając czas, zmniejszając tarcia w procesie rozwoju dla programisty, kierownika projektu i wszystkich zaangażowanych we współczesny krajobraz tworzenia oprogramowania.
Jira
Jira to bardzo potężny PMT, który został specjalnie zaprojektowany do tworzenia oprogramowania. Jednak nie wszyscy znają wszystkie funkcje Jira i może to być przytłaczające, jeśli jesteś właścicielem firmy i próbujesz zarządzać swoim pierwszym projektem. Jeśli czytasz to jako osoba decydująca o różnych opcjach, ale nie korzystałeś wcześniej z Jira, polecam najpierw obejrzeć kilka samouczków, abyś mógł naprawdę wykorzystać jego moc.
Sprinty
Są trzy słowa, którymi mogę określić większość moich doświadczeń z Jira, a jednym z nich jest sprint . Sprint to okres, w którym zespół pracuje nad osiągnięciem określonych celów, które mogą być ze sobą ściśle powiązane lub nie. Jest całkowicie elastyczny. Sprinty w Jira zazwyczaj trwają tydzień, co moim zdaniem jest optymalnym czasem trwania.
Z perspektywy programisty daje to elastyczność w zakresie przypisania wielu rzeczy i pracy w kolejności, która jest dla Ciebie najwygodniejsza, czyli może pracować nad trudną, a później łatwą do relaksu, a może pracować nad 2 -3, które są jednocześnie blisko spokrewnione. Dzięki temu programiści mogą podejmować pewne decyzje, jednocześnie koncentrując się na dostarczaniu na czas.
Epiki i problemy Jira
Podczas sprintu zadania grupowe w sferze doczesnej, epicy mogą grupować zadania według tematu. Na przykład możesz podzielić swoje zadania na sprinty na tydzień, ale możesz też grupować zadania jednocześnie w interfejsie i zapleczu. Dzieląc zadania według tematu, możesz przypisać programistę do tematu.
Na przykład możesz mieć epopeję do migracji danych z istniejącej bazy danych, więc możesz ją nazwać migracją bazy danych, a ponieważ wszystkie zadania w tej epopei są ze sobą powiązane, jeden programista może być odpowiedzialny za to przez wszystkie sprinty. Pozwala to uniknąć sytuacji, w której dwóch programistów spędza czas na nauce starej bazy danych, dzięki czemu programowanie jest bardziej wydajne.
Z kolei kwestie to rzeczy do zrobienia, które mogą należeć do epopei i sprintu. Istnieje wiele rodzajów problemów, a są to historia , zadanie i błąd . Historia ma tę szczególną cechę, że zawiera podzadania, które można wykorzystać do podzielenia problemu na mniejsze części, które razem tworzą pełny obraz — pozwala to uniknąć tworzenia dużej liczby zadań, zamiast skupiania się na jednym elemencie do wykonania.
Zadania w Jira to kwestie, które są bardzo specyficzne i nie mają podzadań. Kiedy coś, co trzeba zrobić, jest bardzo proste i nie ma sensu próbować tego rozbijać, jest to zadanie. Błędy to rzeczy, które należy naprawić — zachowanie ich jako specjalnej kategorii pomoże ci zrozumieć, ile naprawiasz, a nie jak postępy w projekcie.
Priorytety
Komunikacja to duża część równania podczas pracy w globalnym zespole, który działa w wielu strefach czasowych. Praca „na całym świecie” nie jest metaforą, ale rzeczywistością, w której żyje wielu programistów. Jedną z rzeczy, które trudno przekazać programistom od menedżerów, jest priorytetowy poziom zadania. Wyobraź sobie następujący scenariusz, używając listy rzeczy do zrobienia:

Deweloper widzi, że w tym tygodniu mają do wykonania siedem zadań. Niektóre z nich są trudne, a inne łatwe. Jedno krytyczne zadanie dla menedżera jest jednak bardzo złożone, ale dla programisty na liście rzeczy do zrobienia wszystkie zadania są równe — może najpierw zdecydować się na te łatwiejsze, pozostawiając krytyczne na koniec. Jeśli wydarzy się coś nieoczekiwanego i lista nie zostanie ukończona, to najważniejsze zadanie zostanie wycięte lub skończone w pośpiechu (prawdopodobnie poświęcając jakość w tym procesie). Można to bardzo łatwo rozwiązać w Jira dzięki priorytetom , które pozwalają programistom zrozumieć, co jest ważniejsze lub krytyczne do ukończenia.
Treść, Treść, Treść
Jedną z rzeczy, które naprawdę docenisz w Jira, jest ilość treści, które możesz umieścić pod każdym wydaniem; możesz dodawać obrazy lub linki, a także oznaczać tagami innych członków zespołu — chociaż dotyczy to również Trello, interfejs użytkownika naprawdę zachęca do umieszczania większej ilości treści, co pomaga uzyskać więcej danych na temat każdego zadania.
Plusy i minusy Jira
Jira to bardzo ugruntowane narzędzie z wieloma funkcjami, które zostały włączone specjalnie do tworzenia oprogramowania. Oferuje szereg integracji z innymi systemami i pomaga zachować dobrą organizację. Jest to szczególnie dobre dla (bardzo) dużych zespołów.
Jira, będąc zdolnym, bogatym w funkcje PMT, może być nieco zniechęcająca dla początkującego programisty. Doświadczenie może być przytłaczające — sprinty, epopeje i problemy mogą się ze sobą łączyć. Dotyczy to zwłaszcza sytuacji, gdy menedżer jest klientem z niewielkim doświadczeniem w tworzeniu oprogramowania, próbującym zarządzać zespołem programistów. Gorąco polecam Jira dla dużych zespołów i dużych projektów, których rozwój zajmie trochę czasu (więcej niż kilka miesięcy), a także dla doświadczonych menedżerów (klientów) i programistów.
Plusy
- Zaprojektowany specjalnie do tworzenia oprogramowania
- Pozwala, aby każdy numer miał wiele treści, takich jak linki, obrazy, załączniki
- Posiada aplikację mobilną z powiadomieniami, która pomaga cały czas śledzić problemy
- Integruje sprinty z rdzeniem produktu
- Zapewnia bardzo intuicyjne filtrowanie zadań, dzięki czemu możesz skupić się na zadaniach, które są dla Ciebie istotne
Cons
- Ma wiele funkcji, dzięki czemu możesz łatwo korzystać z oprogramowania
- Korzystanie ze wszystkich jego funkcji wymaga pewnego przeszkolenia
- Wymaga (a przynajmniej bardzo pomaga) zrozumienia rozwoju Agile
- Może być przesadą dla małego projektu z małym zespołem
Trello
Trello można podsumować prostą frazą: „tablice z kartami”, czyli Kanban . Na pierwszy rzut oka może to być nawet zbyt proste dla niewprawnego oka; jednak proste rzeczy mogą być niezwykle przydatne.
Prostota to potężna koncepcja. To jeden z powodów, dla których iPhone i Mac stały się tak popularne, ponieważ ich system operacyjny był prosty i przyjemny w użyciu. Podczas gdy Jira ma ochotę mieć wszystko, o czym możesz pomyśleć, Trello czuje, że ma tylko tyle, aby przejść przez to. Bez eposów, bez historii, bez sprintów — po prostu pracujesz nad kartą i przechodzisz przez różne etapy (kolumny).
Mając na uwadze, że wszystkie te elementy istnieją również w Jira, wyjaśnię kilka funkcji, które najbardziej błyszczą w Trello.
Gradacja
Trello bardzo ułatwia definiowanie etapów — po prostu utwórz kolumnę i zacznij z niej korzystać. Najczęstsze z nich to Do zrobienia, Wykonanie, Przejrzenie i Zrobione. Ze względu na swoją prostotę możesz dodać inne kolumny, takie jak Wstrzymane (Jira też to potrafi, ale wydaje się, że zostały utracone, chyba że wyraźnie szukasz tych problemów) lub utworzyć kolumny dla różnych części systemu, takich jak Todo Front-end lub Todo Back-end. Jest to doskonałe rozwiązanie, gdy zespół i projekt są małe, takie jak prosta strona internetowa, widżet lub rozszerzenie, w których nie ma wielu członków lub zadań do jednoczesnego zarządzania.
Członkowie
Możesz przypisać kartę członkom i w ten sposób przypiszesz kartę programiście — to bardzo proste. Możesz również oznaczyć innych członków w komentarzach, co pomoże wszystkim zaangażowanym w problem w dalszym komunikowaniu się o nim.
Za pomocą jednego kliknięcia użytkownicy mogą łatwo filtrować swoje karty lub karty należące do innych członków zespołu, co jest szczególnie przydatne w widoku kalendarza.
Bardzo wizualny
Ze względu na swoją prostotę Trello wyświetla Kanban za każdym razem, gdy otwierasz zawartość karty. To bardzo wizualne podejście, ponieważ nie da się uciec od tego widoku. Ponadto karty mogą mieć obrazki widoczne na planszy.
To jest coś, czego Jira nie ma (a przynajmniej nie widziałem, aby było używane w prawdziwym projekcie). Ponieważ obraz może powiedzieć więcej niż słowa, możesz łatwo zobaczyć, co się dzieje bez otwierania każdego biletu.
Ponadto kolorowe znaczniki Trello mogą służyć do dodawania jeszcze większej ilości informacji bez konieczności rozwijania karty. Przy odrobinie dobrej organizacji te odpowiedniki etykiet Post-It w Kanbanie mogą okazać się bardzo pomocne i oszczędzić wielu niepotrzebnych kliknięć.
Przeciążenie informacyjne
Ze względu na swoją wrodzoną prostotę Trello popycha Cię do prostoty i do rzeczy, unikając poczucia przytłoczenia górą informacji. Wiele razy będziesz pracował nad projektem, w którym jesteś nieustannie bombardowany powiadomieniami o przedmiotach, w które nawet nie jesteś zaangażowany.
Ten dodatkowy hałas wydaje się być nieco zmniejszony w Trello, przynajmniej z mojego doświadczenia. Ponieważ Trello nie jest tak przyjazny dla użytkownika do dodawania informacji, odkryłem, że problemy są zwykle mniejsze, co oznacza, że zadania są podzielone na mniejsze części niż w Jira. Przy pewnym planowaniu te małe zadania nie powinny generować zbyt dużego hałasu.
Grywalizacja
Koncepcja grywalizacji polega po części na wzięciu prostego zadania i przekształceniu go w grę poprzez wykorzystanie nagród. „Trudność nie zniechęca, jeśli jest uzupełniona nagrodami”, jak wskazano w tym artykule na blogu Trello.
Za każdym razem, gdy bilet jest przenoszony z jednego etapu na drugi, następuje zastrzyk adrenaliny (lub dopaminy). Ponieważ nie możesz przenieść karty na inny etap bez przeciągania jej w Trello (podczas gdy w Jira najłatwiej jest po prostu zmienić status problemu), uzyskujesz fizyczne połączenie z postępem, który robisz. W pewnym momencie, nie zdając sobie z tego sprawy, masz ochotę rywalizować ze sobą, aby tego dnia wyeliminować więcej problemów niż poprzedniego dnia (mam nadzieję, że nie jestem tu sam z tym uczuciem) lub po prostu masz ochotę walczyć o to, aby zrobić kolumnę opróżnić tak szybko, jak to możliwe. Wiele produktów oprogramowania wykorzystuje dziś grywalizację, aby stworzyć większe zaangażowanie, takie jak poglądy i upodobania na większości platform społecznościowych – ten mechanizm nagradzania za działanie jest tym, co utrzymuje ludzi zaangażowanych w platformy.
Dobry i zły
Nadal jestem zdumiony tym, jak radosne jest korzystanie z Trello, i z pewnością jego prostota jest kluczowa dla tego doświadczenia. Zadania są zwykle mniejsze — chociaż wykonujesz tę samą pracę, lepiej jest przenieść trzy zadania do kolumny „Do przeglądu” niż zmienić stan pojedynczej historii Jira na Gotowe. (Uważam, że współczynnik konwersji jednej historii w Jira dotyczy trzech kart w Trello.)
Jest to idealne rozwiązanie dla nowych deweloperów lub właścicieli firm próbujących zarządzać projektem, ponieważ bariera wejścia jest bardzo niska. Trello jest łatwo opanowane przez każdego, inżyniera oprogramowania lub w inny sposób. Problem polega na tym, że Trello może być zbyt lekki dla niektórych projektów i dużych zespołów. Chociaż możesz łatwo tworzyć dodatkowe tablice, posiadanie wielu programistów pracujących na jednej tablicy może oznaczać problemy. Jakościowo nie jest to to samo, co współdzielona przestrzeń robocza Jira.
Plusy
- Niska bariera wejścia – nie potrzebujesz żadnego doświadczenia
- Prosty interfejs użytkownika
- Niezwykle wizualny — natychmiast wpadasz na pomysł
- Idealny dla małych projektów i małych zespołów
Cons
- Nieprzyjazny interfejs użytkownika/UX do dodawania wielu szczegółów do problemu
- Nie tłumaczy się tak dobrze na urządzeniach mobilnych, ponieważ fizycznie potrzebujesz więcej miejsca, aby wyświetlić tablicę kanban
- Nie ma sposobu (przynajmniej intuicyjnie) na ustalanie priorytetów zadań
Czy powinienem używać narzędzia do zarządzania projektami?
Tak — myślę, że w dzisiejszej typowej sytuacji, w której menedżer lub właściciel firmy nie jest dostępny, aby odpowiadać na pytania 24/7, naprawdę powinieneś pomyśleć o użyciu narzędzia jako sposobu na posiadanie repozytorium, w którym wszystko, co jest wymagane, jest zapisywane w jasny sposób. Pomoże Ci to uniknąć zamieszania lub pominiętych elementów, ponieważ zostały zapomniane podczas rozmowy Skype lub ukryte pod setkami e-maili. Jeśli Twój projekt jest mniejszy, jak witryna hobbystyczna, PMT może być przesadą.
Którego powinienem użyć?
Odpowiedzią na to jest ta, która najlepiej odpowiada Twoim potrzebom. Jeśli Twój zespół składa się z więcej niż czterech osób, a projekt będzie trwał dłużej niż rok, wybrałbym Jira. Jeśli tak jest w Twoim przypadku, gorąco polecam przeczytanie więcej o tym, jak korzystać z Jira i jak korzystać z metodologii tworzenia oprogramowania.
Jeśli Twój zespół liczy mniej niż cztery osoby, a projekt to prosta strona internetowa, a może dodanie niektórych funkcji do istniejącego projektu, polecam Trello ze względu na jego prostotę. Jak zawsze, dzięki narzędziom, obaj mogą wykonać zadanie, ale to nie znaczy, że najlepszy jest taki sam dla wszystkich.