Skip to content

Witaj w Świecie Jutra!

  • Technologie jutra
  • Sprzęt jutra
  • Aplikacje jutra
  • Programowanie
  • Księga Drogi
  • Renowacja
  • Różności
  • Archiwum
  • Autor
  • Home
  • Wszystko
  • Czym jest Jira (i Confluence)?
  • Programowanie
  • Wszystko

Czym jest Jira (i Confluence)?

Jakub Raczkowski 29 maja 2024

Poznawszy tajniki metodologii pracy możemy śmiało wkroczyć w świat zarządzania projektem i ekipą. Wiedza z dzisiejszego odcinka – czyli znajomość pakietu Atlassian, nie jest obowiązkowa dla programistów, ale pomaga w spojrzeniu na swoją pracę z szerszej perspektywy.

Uwaga! W tej serii zajmuję się opisowym przedstawieniem tematu, a celem jest zapoznanie z zagadnieniem w sposób luźny i zrozumiały dla nowicjusza. W związku z tym wiele elementów siłą rzeczy musi zostać pominiętych. Tych z was, którzy chcieliby się dowiedzieć więcej, zapraszam do źródeł na końcu artykułu.

Ucząc się programowania i tworząc co raz to obszerniejsze programy, w pewnym momencie zauważycie, że sami zaczynacie się gubić w natłoku rzeczy do zrobienia.

Już przy moim pierwszym samodzielnym projekcie: minigierce CleanThemAll (która składa się z zaledwie dwudziestu-kilku klas obejmujących front i backend) wielokrotnie zastanawiałem się:

Czym to ja mam tu się dzisiaj zająć?

Potem przychodzi jeszcze ten etap, kiedy nie dość, że projekt sam w sobie jest potężny to jeszcze dostajecie kompana albo kilku do „pomocy”. Chcecie po prostu coś porobić, dodać coś od siebie do wspólnego kodu, ale zamiast produkować tracicie bezowocnie czas myśląc:

  • co jest najpilniejsze?
  • czy przypadkiem ktoś już tego nie robi?
  • które zadanie najbardziej odpowiada moim kompetencjom?

Każdy kto kiedykolwiek grał w popularnych „Herosów” wie jak ważne jest dowodzenie. I nie chodzi tu tylko o popularny skill „Leadership” dający boost do morale co zwiększa szansę na podwójny atak w danej rundzie.

Odpowiednie dobieranie jednostek do danego zadania to klucz do sukcesu. Wprawny taktyk zwycięży przeważające siły wroga wykorzystując największe atuty swojego zespołu. Krasnoludy są słabe i powolne, ale jeśli otoczymy nimi naszych elfich snajperów to ci zdążą przetrzebić legiony nieprzyjaciela zanim ten się przebije przez zastęp brodatych kurdupli.

Nie inaczej jest w zarządzaniu projektem. Musimy uświadomić sobie jakie są mocne i słabe strony naszego zespołu aby wprawnie delegować posiadane jednostki.

Kontynuując tę swobodną metaforę realiów biurowych na to co znamy z gier możemy powiedzieć, że programiści odwalają główną robotę jako damage dealerzy, ale nie poradzą sobie bez tanków biorących bugi i nieobsłużone wyjątki na klatę – czyli testerów QA. Skryci w cieniu łotrzykowie z DevOpsa otwierają zamki i rozbrajają pułapki, a support HR dba aby drużyna była zbuffowana i wypoczęta.

No i w końcu mamy też mistrzów gry – Product Ownera, Scrum Mastera i Team Leadera – to oni rzucają kośćmi, rozdają questy oraz dbają o to aby fabuła trzymała się kupy.

Zespół przygotowuje się do kolejnego epickiego epika

Zarządzanie tym wszystkim może, owszem, odbywać się analogowo: z ust do ust, zostawiając memo na żółtych karteczkach czy organizując spotkania ze slajdami, białą tablicą i pudełkiem zmazywalnych markerów.

Ale hej, przecież nie po to jesteśmy w IT, żeby robić takie rzeczy jak jaskiniowcy! To wszystko da się zautomatyzować, przyśpieszyć, uprościć. Potrzebne jest tylko odpowiednie narzędzie, na przykład takie jak:

Atlassian to australijska firma założona w 2002 roku i mająca na swoim koncie kilka popularnych aplikacji pomagających w zarządzaniu projektami i zespołem (nie tylko IT). Moje pierwsze zetknięcie z produktem od Atlassian nastąpiło w lutym tego roku kiedy organizowałem swoje zadania podczas pracy nad ITCandidateEvaluator.

Trello pomogło mi w organizacji pracy przy moim ostatnim projekcie.

Zasada działania Trello jest banalnie prosta i można ją podsumować słowami:

ToDo List

Lista rzeczy do zrobienia. Ot mamy kilka kolumn – do tej najbardziej po lewej wrzucamy pomysły, a następnie przekładamy je co raz bardziej w prawo w miarę postępujących prac, np.

pomysł -> do zrobienia -> w trakcie -> do przetestowania -> gotowe

Jak widzicie nie ma w tym większej filozofii, a użytkowanie można rozpocząć z marszu, bez żadnego tutoriala, całkowicie za darmo. Mamy też opcję upublicznienia naszej tablicy co może być pomocnym uzupełnieniem dokumentacji czy pliku readme projektu.

Tablica w Jirze jest podobna do tej z Trello ale opcji jest więcej.

Sama Jira natomiast to takie baaardzo rozbudowane Trello, przystosowane do pracy w środowisku komercyjnym w metodologii Agile i wieloosobowych zespołach.

Przykładowy projekt w Jirze rozpoczyna się od wybrania metodologii, np. podzielonego na Sprinty Scruma albo mniej restrykcyjnego Kanbana. Kolejnym krokiem jest dodanie zadań, które dzielą się na podkategorie w zależności od tego czego dotyczą i jak bardzo są rozbudowane, np.

  • epik to zadanie główne, które może trważ kilka Sprintów i jest bardzo ogólne, dla przykładu: „Stworzyć moduł panelu użytkownika”
  • taki epik jest podzielony na stories – „story” to już bardziej konkretne zadanie (np. „panel użytkownika: profil”), a efekt jego ukończenia jest widoczny od strony użytkownika
  • story z kolei rozbija się na konkretne zadania czyli „taski„, zrobienie pojedynczego taska może zostać niezauważone przez końcowego użytkownika (np. „dodanie do encji usera atrybutu 'ulubione’ + walidacja za pomocą RegEx”)
  • jest jeszcze trochę osobno zadanie „bug” które, jak sama nazwa wskazuje, służy do informowaniu o babolach i jest prośbą o interwencję
Backlog – to tutaj trzyma się wszystkie pomysły zanim trafią do programu Sprintu

Powyższe to zaledwie wycinek możliwości jakie daje Jira. Oprócz tego są tam wirtualne pulpity (tzw. „dashboard„) w przejrzysty sposób pokazujące najważniejsze informacje o przebiegu prac nad projektem.

Jest rozbudowany moduł filtracji zgłoszeń na wszelkie możliwe sposoby (powstał nawet JQL – Jira Query Language czyli wariacja na temat SQL-a).

Dostajemy opcje automatyzacji przebiegu pracy (tzw. „workflow„) – ustawiania reguł tego co można robić, a czego nie (np. nie można przenieść taska bezpośrednio z kolumny „w trakcie” do „gotowe” z pominięciem etapu „do weryfikacji”).

No i jest też cała sekcja poświęcona tylko i wyłącznie zarządzaniu zespołem – dodawanie/usuwanie członków, przydzielanie ról i przywilejów.

Ogólnie rzecz biorąc Jira, jako system administracji projektem i personelem ma wszystko czego do tego celu potrzebujemy. A nawet więcej, jako, że dochodzą nam integracje z innymi produktami Atlassian oraz pluginy łączące Jire z rzeszą innych rozwiązań tj. GitHub, pakiet GoogleDrive czy AWS.

Rozszerzeń do Jiry jest cała masa, są lepsze i gorsze, ale każdy znajdzie tu coś co mu ułatwi pracę.

Jeśli chodzi o inne popularne produkty Atlassian z którymi Jira w naturalny sposób łączy się i ułatwia pracę, są to:

Z odcinka poświęconego Gitowi pamiętamy, że Git to program do wersjonowania plików programu, natomiast GitHub to zewnętrzne repozytorium (i sporo więcej, ale to przede wszystkim) gdzie te pliki w różnych wersjach możemy trzymać i je udostępniać. Oczywiście GH nie jest jedyną opcją i oprócz niego mamy choćby jeszcze GitLaba i właśnie BitBucket.

O ile GH jest świetny w przypadku kodu open-source, który jest widoczny dla każdego i każdy może go pobrać i „sforkować”, o tyle w rozwiązaniach komercyjnych (czyli takich gdzie kod powinien pozostać zamknięty) często lepszym zamiennikiem jest BitBucket. Posiada fajne integracje z Jirowymi taskami, a do tego łatwo się tworzy dokumentację dla takiego repo.

Jeśli Jira zarządza projektem i zespołem, to Confluence najlepiej streścić jako system zarządzania treścią. Osobiście najłatwiej mi przyrównać to do WordPressa na którym zamieszczam moje teksty. Tworzymy sobie strony („Confluence pages„) wyglądające jak dokument Worda, albo niniejszy artykuł: jest podział na paragrafy, różne formatowanie, marginesy, kolumny, obrazki itd. Potem daną treść możemy podlinkować w Jirowym tasku jako kontekst zadania, albo możemy stworzyć wiki – dokumentację dla kawałka kodu z BitBucketa.

Bardzo popularnym komunikatorem jest Slack. Oczywiście w pracy możemy używać WhatsAppa, Vibera czy choćby i GaduGadu, ale żaden z nich nie jest nastawiony na zwiększenie produktywności. Tymczasem w Slacku możemy na szybko otworzyć sobie nową dyskusję poświęconą tylko i wyłącznie jednemu z tasków, ba!, Scrum Master może kreować nowe taski bezpośrednio z poziomu Slacka! Opcji jest oczywiście znacznie więcej, a integracja z pozostałymi produktami Atlassian sprawia, że raz trafiwszy do ich ekosystemu trudno się z niego wydostać.

Slack w języku angielskim oznacza „luz” (Źródło obrazka)

A jak to działa razem?

Powiedzmy, że Product Owner ma pomysł na nową funkcjonalność w przygotowywanej appce. Spisuje go na nowej stronie w Confluence i udostępnia decyzyjnym członkom zespołu. Ci zostawiają swoje komentarze i sugestie, PO poprawia tekst i zatwierdza.

Teraz na podstawie w/w pomysłu powstaje Backlog w Jirze, tworzone są epiki, te dzielone na stories, a każde story ma odniesienie do danego paragrafu w confluence’owym pomyśle.

Omawiana jest strategia branchowania, np. 1 story = 1 branch. W BitBucket tworzone jest repozytorium, a członkowie zespołu tworzą branche do których zostali przydzieleni. BitBucket oferuje również usługi CI/CD na podobieństwo GitHub Actions.

Rozpoczyna się Sprint, pojawiają się commity, pull requesty, prośby o code review – wszystkie powiadomienia automatycznie spływają na Slacka powiązanych osób. W miarę postępujących prac rozbudowuje się dokumentacja projektu na Confluence – część jest pisana ręcznie, ale wiele rzeczy tworzy się automatycznie.


Podsumowanie

To był ostatni z zaplanowanych odcinków naszej serii „Czym jest…?”. Udało mi się omówić wszystko to co chciałem od samego początku (a nawet nieco więcej) i teraz przyszedł czas na podsumowanie oraz kolejne wyzwania.

Następny wpis będzie agregował i analizował to czego się wspólnie nauczyliśmy, wiedza zostanie uszeregowana, podzielę się źródłami skąd ją czerpać i w jakiej kolejności. Będzie tam wszystko to co potrzebujecie się dowiedzieć skończywszy ogarnianie podstaw pierwszego języka – czyli w momencie kiedy już czujecie się programistami, ale nie wiecie co robić dalej, aby udowodnić to potencjalnemu pracodawcy.


Źródła:
Kurs zarządzania projektem w Jira na Udemy (płatne) POL
Integracja Jira z Confluence YT/ANG
Slack – jak korzystać? YT/ANG

Continue Reading

Previous: Czym jest Agile (i Scrum)?
Next: Backend A-Z

Related Stories

Mageege Moon104 – test niskoprofilowego mechanika
  • Sprzęt

Mageege Moon104 – test niskoprofilowego mechanika

11 marca 2025
Przebranżowienie cz.4
  • Programowanie

Przebranżowienie cz.4

27 lutego 2025
Smartfon Jutra
  • Sprzęt

Smartfon Jutra

15 lutego 2025

Ze świata

  • Antyweb
  • Kwantowo
  • Dwóch po dwóch
Aplikacje dla gitarzystów to dzisiaj prawdziwy "gamechanger"! Znasz wszystkie te narzędzia?
Pracujesz w podróży? Twój bagaż nie jest kompletny bez tych gadżetów!
53 lata krążyła wokół Ziemi – dziś zakończyła swoją podróż
AI na komputerze: sekrety, które musisz znać!
Sprawdzamy czy Motorola Razr 60 Ultra to składak na miarę swojej legendy
Dreame L40s Pro Ultra - dla tego odkurzacza nie istnieją żadne przeszkody
Pracownicy Facebooka mogą się pakować. Zuckerbeg ma inny pomysł na rozwój
Nie tylko Garmin ma problem z subskrypcją. Whoop padł ofiarą swojego sukcesu
Epic szykuje petardę. Gracze będą zaskoczeni darmowymi tytułami
DOOM powraca z hukiem. Zobacz gameplay The Dark Ages w 4K
AI w kieszeni. Te aplikacje warto zainstalować!
Chrome z turbodoładowaniem. Google rozpieszcza użytkowników
Hubble odkrywa wędrującą czarną dziurę – nowy kosmiczny drapieżnik?
MSI rzuca gorące promki. Jak wymieniać monitor to teraz
Allegro zapytało, czy Polacy są gotowi na konta bez haseł
Koniec filmowej sagi. To jedyna taka seria i czas się pożegnać
Ten sprzęt wykrywa cukrzycę skuteczniej, niż badania krwi. Przełom w badaniach
Miesiąc futbolowych hitów za 20 zł? Canal+ kusi kibiców mega promocją
Doom: The Dark Ages – recenzja. Czy to najlepszy Doom ever?
Sprzątanie dopasowane do Ciebie. Roborock Qrevo 5AE w akcji
Ocalić od zapomnienia
Ostatni kwant
ALH 84001 – meteoryt, o którym mówiono nawet w Białym Domu
HESS zarejestrował kosmiczny elektron o niespotykanej energii [Phys. Rev. Lett.]
Matka ciemnej materii – recenzja biografii “Vera Rubin. Życie”
Satelita, który zerwał się ze smyczy
Wiadomość od Carla Sagana do przyszłych eksploratorów Marsa
Ile najdłużej może trwać zaćmienie Słońca?
Nowa największa liczba pierwsza ma ponad 41 milionów cyfr [GIMPS]
Pulsar 4U 1820-30 wykonuje 716 obrotów na sekundę [AJ]
O przedsprzedaży Pixel 9a w samochodzie – Odcinek #122
Obejrzeliśmy Ukryty Poziom na raz – No Movie Ci
Premiera Nintendo Switch 2, seriale, i piwniczne artefakty – Odcinek #121
Ludzieee, wy tego używacie? Recenzja klawiatury Trust GXT 867 Acira
Sympatyczny mały flagowiec. Samsung Galaxy S25 – recenzja
Recenzja pionowej myszy Natec Crake 2. Się wziął gruby i nawrócił
Podsumowanie 2024 roku: Gry, Smartfony, Seriale – Odcinek #120
Ale ja nie chcę rozmawiać z botem… Infolinia HP i dziwne pomysły z 15-minutowym oczekiwaniem
Temu Amazonu, to się chyba coś nie ten… Pobierania przez USB nie będzie i co nam Pan zrobisz?
Już graliśmy! Demo Pirackiej Yakuzy narobiło mi jeszcze większego apetytu

To może cię zainteresować:

Mageege Moon104 – test niskoprofilowego mechanika
  • Sprzęt

Mageege Moon104 – test niskoprofilowego mechanika

11 marca 2025
Przebranżowienie cz.4
  • Programowanie

Przebranżowienie cz.4

27 lutego 2025
Smartfon Jutra
  • Sprzęt

Smartfon Jutra

15 lutego 2025
Czym jest Swagger?
  • Programowanie

Czym jest Swagger?

22 lipca 2024
  • Technologie jutra
  • Sprzęt jutra
  • Aplikacje jutra
  • Programowanie
  • Księga Drogi
  • Renowacja
  • Różności
  • Archiwum
  • Autor
Copyright © All rights reserved. | DarkNews by AF themes.