Co to jest Kanban?
Kanban jest bardzo popularnym frameworkiem do programowania w zwinnej metodologii tworzenia oprogramowania. Zapewnia przejrzysty sposób wizualizacji zadań i zdolności do pracy zespołu. Wykorzystuje głównie tablice fizyczne i cyfrowe, aby umożliwić członkom zespołu wizualizację aktualnego stanu projektu, nad którym pracują.
Kanban powstał w Toyocie w latach czterdziestych XX wieku. Znaczenie Kanban w języku japońskim to „billboardy”. Tablica Kanban zawiera kolumny i karty opowieści. Kolumny są niczym, ale stany przepływu pracy i karty to nic innego jak demonstracja rzeczywistego zadania wykonywanego przez członka zespołu.
Z tego samouczka Kanban dowiesz się:
- Co to jest Kanban?
- Kiedy używać Kanban?
- Karty Kanban
- Tablica Kanban
- Przepływ pracy w Kanban
- Cztery zasady Kanbana
- Sześć podstawowych praktyk Kanban
- System oparty na ciągnięciu
- Czas realizacji i czas cyklu
- Schemat skumulowanego przepływu (CFD)
- Ograniczanie WIP (praca w toku)
- Scrum Vs. Kanban
Kiedy używać Kanban?
Oto powody, dla których warto skorzystać z metody rozwoju Kanban:
- Kanban może być używany w dowolnej domenie i może być bardzo efektywnie wykorzystywany w tworzeniu oprogramowania. Zarządzanie projektami Kanban pomaga w poprawie efektywności zespołu.
- Jest to system oparty na ściąganiu. Zadania są ściągane, gdy tylko osoba jest wolna.
- Kanban powinien być używany, gdy chcesz zwolnić swoją pracę w dowolnym momencie. Wymaga rozgałęzienia gita, ale jest to wykonalne.
- Kanban powinien być używany, gdy chcesz zmienić priorytety w locie. W tym celu wystarczy umieścić tę historię na szczycie kolejki zadań do wykonania.
- Powinien być używany, gdy chcesz wizualizować swoją pracę i chcesz wizualnie zobaczyć postęp swoich zadań.
Karty Kanban
System Kanban rekomenduje wizualizację pracy. Sugeruje użycie fizycznej i cyfrowej tablicy.
Karty Kanban są podstawowymi elementami na tablicy Kanban, ponieważ reprezentują pracę, nad którą pracuje zespół. Te karty będą miały
- Priorytet
- Właściciel
- Rodzaj
- Termin
Kolumna na tablicy Kanban reprezentuje etap pracy i można na niej umieścić limit WIP (Praca w toku). Limit WIP oznacza maksymalną liczbę kart, które mogą pozostać w tej kolumnie .
Ponieważ zarządzanie projektami Kanban korzysta z systemu opartego na ściąganiu, gdy programista jest wolny, może przeciągnąć kartę z kolumny zadań do wykonania do kolumny deweloperów.
Tablica Kanban
Kanban Board to sprawne narzędzie do zarządzania projektami, które pomaga wdrażać Kanaban do zarządzania projektami do celów osobistych i biznesowych. Jest to tablica fizyczna lub cyfrowa (JIRA) zaprojektowana, aby pomóc zespołom w wizualizacji ich pracy na różnych etapach i procesach. Pomaga również w reprezentowaniu etapów pracy z kolumnami za pomocą kart.
Zawiera kolumny, które reprezentują stan pracy
- Do zrobienia,
- Dev
- Testowanie
- Gotowy.
Każda z tych kolumn może zawierać karty <= limit WIP. Karty przedstawiają rzeczywistą pracę.
Możesz użyć liczb dodatnich, aby ograniczyć pracę w toku, a tę liczbę graniczną można umieścić na górze kolumn zarówno na fizycznych, jak i cyfrowych tablicach Kanban. Każdy członek zespołu może zarządzać stanem swojej karty, a cały zespół może wizualizować przepływ pracy. Następnie w tym samouczku dotyczącym Kanban dowiemy się o przepływie pracy w Kanban.
Przepływ pracy w Kanban
Kanban Workflow to zestaw kroków, które pomagają zespołom definiować jawne polityki i zasady w Kanaban. Przedstawia zasady i procedury obowiązujące podczas pracy na różnych etapach rozwoju i cykli dostaw. Przepływ pracy Kanban składa się z procesów krok po kroku od rozpoczęcia do realizacji określonego zadania.
Podstawowa zasada Kanbana to „przestań zaczynać, zaczynaj kończyć”. Dzięki limitom WIP można wykonać więcej pracy. Istnieją konfigurowalne przepływy pracy i stany Kanban dostępne w każdym nowoczesnym narzędziu, takim jak JIRA.
Poniżej znajdują się podstawowe stany, którymi kieruje się wiele zespołów programistycznych podczas zarządzania przepływem pracy.
Stany | Zrozumienie zadań |
Do zrobienia | Zadania pojawiają się tutaj po raz pierwszy w tym stanie. |
Gotowy do analizy | Przeanalizuj zadanie i całkowicie dodaj wymagania. |
Gotowy do rozwoju | Analiza zakończona i można rozpocząć tworzenie. |
W procesie tworzenia | Zadania są opracowywane. |
Gotowe do testów | Programowanie zakończone i teraz można rozpocząć testy. |
Podczas testów | Zadania są testowane. |
Gotowe do wydania | Testowanie zakończone; wydanie może się wydarzyć. |
Wydano / Gotowe | Wydany. |
Cztery zasady Kanbana
Poniżej znajdują się cztery główne zasady Kanbana:
- Zacznij od tego, co masz teraz : system Kanban sugeruje pracę przyrostową i zacznij od tego, co masz obecnie. Ponieważ jedną z jego praktyk jest ciągłe doskonalenie, musisz ulepszać system stopniowo.
- Zgoda na dokonywanie przyrostowych, ewolucyjnych zmian: Kanban zaleca stopniowe zmiany w procesie i nie wolno wprowadzać dużych zmian w procesie za jednym razem.
- Szanuj obecny proces, role i obowiązki: jeszcze raz zacznij od tego, co masz teraz i stopniowo zmieniaj proces, rolę i obowiązki.
- Zachęcaj do aktów przywództwa na wszystkich poziomach : Każda osoba może działać jako lider i przedstawiać pomysły na poprawę wydajności całego systemu Kanban. Nie należy myśleć, że jest to czynność na poziomie kierowniczym, a nawet najmłodszy członek zespołu może być liderem.
Sześć podstawowych praktyk Kanban
Oto sześć głównych praktyk Kanban:
- Wizualizuj przepływ pracy : ta zasada sugeruje posiadanie tablicy Kanban (fizycznej lub cyfrowej) do wizualizacji przepływu pracy. Każdy członek zespołu musi zobaczyć swoją kartę i karty innych członków zespołu. Możesz przenosić swoje karty w różnych kolumnach, jak na powyższym obrazku. Zapewnia dużą przejrzystość w zespole, a także ułatwia rozwiązywanie blokujących
- Ograniczenie pracy w toku : Kanban jest systemem opartym na ściąganiu i poprawia wydajność zespołu, ograniczając pracę w toku i umożliwiając zespołowi wykonanie zadań w określonym czasie. Ten limit WIP obowiązuje od początku do końca przepływu pracy. Możesz zastosować limit na górze kolumny, używając dodatniej liczby całkowitej.
- Skoncentruj się na przepływie : ta zasada koncentruje się na przepływie i wszelkich przerwach. Jeśli występują przerwy lub blokady, należy je naprawić na stałe.
- Wyraźne zasady : Zasady można ustalić w zespole, aby zmniejszyć liczbę przeróbek i skupić się na obszarach, które wymagają uwagi lub w których jest to bardziej skuteczne.
- Pętla sprzężenia zwrotnego: Pętle sprzężenia zwrotnego są bardzo istotne w Kanban. Dotyczy to nie tylko zespołu, ale między wieloma zespołami, trenerami itp. Pomaga to w poprawie ogólnego stanu systemu Kanban.
- Ciągłe doskonalenie : jest to podstawowa zasada systemu Kanban. Stwierdza, że zawsze można ulepszyć proces, a to zaowocuje lepszą wydajnością.
System oparty na ciągnięciu
Kanban to metoda oparta na ściąganiu, w której zadania są pobierane, a nie popychane. Jak tylko wypełnisz swoją obecną kartę, możesz wyciągnąć nową kartę z poprzedniej kolumny tablicy Kanban.
Dzięki limitowi WIP Kanban pomaga w poprawie czasu oczekiwania i czasu cyklu. Pomiędzy tymi dwoma czasami powinna być jak najmniejsza przerwa. Na przykład mamy 5 programistów i tylko 1 testera; co się stanie w tym przypadku? Zawsze byłoby wiele kart wymagających przetestowania, a one będą siedzieć bezczynnie i czekać.
Aby przezwyciężyć powyższe problemy i poprawić wydajność, Kanban stosuje podejście oparte na ściąganiu z limitami WIP, w których byłaby ograniczona liczba kart do pobrania.
Tak więc tester wyciągnie zadanie z etapu „gotowe do testowania”, kiedy zakończy swoje bieżące zadanie. Z limitem WIP w kolumnach Kanban (etapy rozwoju), nie będziesz mieć wielu kart bez nadzoru w przepływie pracy Kanban.
System oparty na ściąganiu pomaga również w znalezieniu właściwej prędkości dla zespołu. Z odpowiednią prędkością zespół będzie działał lepiej.
Czas realizacji i czas cyklu
W metodzie Kanban, czas realizacji i czas cyklu są szeroko stosowane, istnieje różnica między nimi i ważne jest, aby to zrozumieć, aby uniknąć nieporozumień.
Czas oczekiwania | Czas cyklu |
Czas oczekiwania jest mierzony jako czas między pojawieniem się zadania w przepływie pracy a jego odejściem od przepływu pracy, co oznacza, że zostało zwolnione. | Czas cyklu jest mierzony jako czas między przybyciem zadania w stanie „w toku” a nadejściem zadania w stanie „gotowe do wydania”. |
W tym przypadku ważne jest również, aby zrozumieć, że nie należy uwzględniać czasu między przygotowaniem do wydania a rzeczywistym wydaniem.
Czas cyklu = praca w toku / przepustowość
W idealnym scenariuszu luka między czasem realizacji a czasem cyklu powinna być minimalna, a Kanban wykorzystuje skumulowany diagram przepływu (CFD) do pomiaru danych historycznych ołowiu i czasu cyklu.
Schemat skumulowanego przepływu (CFD)
CFD to wykres, który jest dostępny we wszystkich wiodących narzędziach do zarządzania przepływem pracy, takich jak JIRA. Ten wykres mierzy całkowitą liczbę kart pracy / zadań, które weszły do przepływu pracy i zgromadziły ukończone karty / zadania w czasie.
Pomaga oszacować średni czas realizacji i czas cyklu dla określonego czasu.
Diagram CFD poda wskaźniki lub obszary problemowe do naprawienia. Zapewni ci jasny obraz w oparciu o ten diagram. Możesz skorygować czas realizacji i czas cyklu swojego zespołu.
- Czas oczekiwania : Jest to czas między pojawieniem się nowej karty w przepływie pracy a jej ostatecznym odejściem od przepływu pracy.
- Czas cyklu : Jest to czas między przybyciem karty w stan roboczy a momentem, w którym karta jest gotowa do wydania.
- WIP : Praca w toku (WIP) ogranicza maksymalną liczbę elementów pracy na różnych etapach przepływu pracy.
- Przepustowość : jest to rzeczywista wydajność i informuje o rzeczywistej liczbie kart dostarczonych w danym przedziale czasowym.
Wydajność = WIP / Czas cyklu
Ograniczanie WIP (praca w toku)
W metodologii rozwoju Kanban, WIP ogranicza liczbę zadań / kart, nad którymi może pracować członek zespołu lub w całości w tym samym czasie.
Limity WIP zapewniają, że zespół ustabilizuje swoją pracę i zwiększy charakter predykcyjny, który jest niezbędny w systemie opartym na ściąganiu. Zwykle decyzję o limicie WIP podejmuje sam zespół.
Powód ustalenia limitów WIP:
Oto powody, dla których warto ustawić limity WIP:
- Skupia się na załatwianiu spraw, jako że osoba skupia się na pojedynczym zadaniu na raz.
- Pomaga zespołom zrozumieć ich możliwości.
- Poprawia wydajność i czas cyklu.
- Pomaga uniknąć spiętrzenia zadań (w trybie oczekiwania).
- Pomaga w ruchu przepływu pracy i zadań.
- Pomaga również w rozwiązywaniu blokerów, ponieważ jednostka nie przełącza się między różnymi zadaniami.
Scrum Vs. Kanban
Oto ważne różnice między Scrum Vs. Kanban
Scrum | Kanban |
Scrum kładzie nacisk na planowanie . Zaczyna się od planowania sprintu, a kończy na retrospekcji sprintu. Odbywa się wiele spotkań, które pomagają upewnić się, że zespół jest dostosowany do kolejnych kroków, priorytetów i wniosków z poprzednich sprintów. | Kanban jest otwarty na wprowadzanie zmian w ruchu. Oznacza to, że jest mniej sztywności i rzeczy mogą się często zmieniać . |
Zaleca zbieranie pomiarów czasu wykonywanych podczas sprintów | Kanban zaleca wykresy, aby uzyskać przegląd postępów zespołu w czasie. |
Scrum nie wymaga już zaangażowania zespołów. Zamiast tego chodzi o cele i prognozy sprinterskie. | Kanban opiera się na ograniczeniach czasowych i prognozach . |
Kładzie nacisk na planowanie, dlatego szacowanie odgrywa bardzo ważną rolę w Scrumie | Kanban nie ma obowiązkowych wymagań dotyczących szacowania. |
Każda osoba ma swoją rolę i obowiązki. | Brak ustalonych ról tak elastycznych w zakresie indywidualnych obowiązków. |
Iteracje / Sprinty mają ustalony czas trwania. Czas trwania waha się od 2 tygodni do 1 miesiąca. | Kanban nie jest oparty na czasie trwania . Ta rzecz jest mierzona w odniesieniu do czasów cyklu. |
Zespoły są zobowiązane do wykonania określonej ilości pracy. | Zaangażowanie nie jest konieczne , jest opcjonalne dla zespołów. |
W tej metodzie zespoły wielofunkcyjne są ważne, ponieważ mogą poradzić sobie z każdą przerwą, która może spowodować wąskie gardło w rozwoju oprogramowania. | Posiadanie wyspecjalizowanego zespołu jest ważne. |
Nie jest możliwe dodawanie elementów do trwających iteracji. | Nowe elementy można łatwo dodać, jeśli dostępna jest dodatkowa pojemność. |
Backlog sprintu jest własnością tylko jednej drużyny . | Wiele zespołów może współdzielić tablicę Kanban. |
Rezultaty są określane przez sprinty , które należy wykonać i przygotować do przeglądu. | Produkty i procesy są dostarczane w sposób ciągły w zależności od potrzeb. Tak więc proces testowania i przeglądu przebiega jednocześnie. |
Metoda tworzenia oprogramowania Scrum skupia się na zaległościach . | Metoda Kanban w całości skupia się na dashboardzie procesów . |
Każdy członek zespołu ma określoną rolę w Scrumie, mistrz decyduje o terminach, właściciel produktu wyznacza cele i zadania, a członkowie zespołu prowadzą prace rozwojowe. | Nie ma predefiniowanych ról dla zespołu. Jednak nadal może być Kierownik Projektu; zespół jest zachęcany do współpracy i wspólnej pracy. |
Najlepsze do projektów o zmieniających się priorytetach . | Idealny dla zespołów o stabilnych priorytetach, które prawdopodobnie nie zmienią się w czasie. |
Mierzy produkcję za pomocą prędkości w sprintach. | Mierzy produkcję na podstawie czasu cyklu lub dokładnego czasu potrzebnego na ukończenie jednego pełnego fragmentu projektu. |
Scrum wymaga całkowitego przejścia od modelu tradycyjnego do modelu Agile Scrum, który zostałby wdrożony w projekcie. | Kanban nie pozwala na drastyczne zmiany w projekcie. |
Jest to idealna metoda dla projektów o bardzo różnych priorytetach . | Najlepsze rozwiązanie dla zespołów o stabilnych priorytetach . |
W Scrumie cała grupa skupia się na współpracy i wykonaniu zadania w celu zapewnienia wysokiej jakości prac rozwojowych. | Zespoły pracują, aby osiągnąć cele i skrócić czas potrzebny na ukończenie całego procesu. Zatem skrócenie cyklu czasowego jest tutaj największym wskaźnikiem sukcesu. |
Scrum kładzie nacisk na swoje harmonogramy ; nie można dodawać nowych elementów do trwających iteracji. | Kanban jest z natury bardziej iteracyjny, ponieważ nie ma określonych ram czasowych . Dzięki temu nowe elementy mogą być dodawane w sposób ciągły, gdy tylko jest dostępna dodatkowa pojemność. |
Cała praca jest wykonywana w partiach / Sprintach . | Cały projekt jest wykonywany na ruchu jednowątkowych przepływów elementów roboczych . |
Scrum master działa jako osoba rozwiązująca problemy. | Kanban zachęca każdego członka zespołu do bycia liderem i dzielenia się odpowiedzialnością między nimi wszystkimi. |
Scrum nakazuje iteracje ograniczone czasowo . | Kanban skupia się na planowaniu innego czasu trwania dla poszczególnych iteracji. |
Scrum pomaga firmom oszczędzać czas i pieniądze . | Metoda Kanban skupia się na ciągłym doskonaleniu , produktywności i wydajności. |
Osiągnij stabilne i spójne przekazywanie wyników na wszystkich poziomach. | Członkowie zespołu z większym prawdopodobieństwem łatwiej osiągną swoje cele ze względu na wizualny charakter tablic Kanban. |
Projekty są kodowane i testowane podczas przeglądu sprintu | Członkowie zespołu z większym prawdopodobieństwem łatwiej osiągną swoje cele ze względu na wizualny charakter tablic Kanban. |
Jest łatwiej przystosować się do ciągłych zmian ze względu na krótki sprintów i regularnej informacji zwrotnej. | Jest przeznaczony do regularnej, stabilnej produkcji , duże zmiany w popycie klientów mogą spowodować, że Kanban nie powiedzie się. |
Całkowity koszt projektu jest minimalny, co może prowadzić do szybszego i tańszego wyniku . | Jeśli zadanie nie zostanie prawidłowo oszacowane, całkowity koszt projektu nigdy nie będzie dokładny . W takich przypadkach zadanie można rozłożyć na kilka sprintów. |
Ta metodologia wymaga tylko doświadczonych członków zespołu . Tak więc, jeśli zespół składa się z osób niebędących ekspertami, projekt nie może zostać ukończony na czas. | Nie ma konkretnych ram czasowych dla każdej fazy, więc członkowie zespołu nigdy nie mają pojęcia, ile czasu mogą poświęcić na każdą fazę. |
W tej metodzie Agile Scrum łatwiej jest dostarczyć wysokiej jakości produkt w zaplanowanym czasie. | Jest przeznaczony do regularnej, stabilnej produkcji, duże zmiany w popycie klientów mogą spowodować upadek Kanbana. |
Plan projektu nigdy nie przeszkodzi, nawet jeśli członek zespołu opuści zespół. | Jeśli którykolwiek z członków zespołu zakończy pracę w trakcie opracowywania, może to zaszkodzić rozwojowi projektu . |
Codzienne spotkania czasami frustrują członków zespołu. | Przestarzała tablica Kanban może prowadzić do problemów w procesie rozwoju. |
Duże projekty można łatwo podzielić na łatwe w zarządzaniu sprinty. |
Podsumowanie:
- Definicja Kanban: Kanban jest definiowany jako zwinna metodologia rozwoju oprogramowania, samochodów, towarów, leków, butów lub wszelkich innych prac produkcyjnych.
- Kanban wykorzystuje tablicę Kanban do wizualizacji pracy. Wykorzystuje kolumny jako etapy (zadania do wykonania, tworzenie, testowanie itp.), A karty jako element pracy.
- Metodologia Kanban wspiera fizyczną i cyfrową tablicę do wizualizacji.
- Kanban jest systemem opartym na ściąganiu, a karty są pobierane z poprzedniego etapu do bieżących etapów przez członków zespołu.
- Metoda Kanban wykorzystuje diagram CFD do zrozumienia czasu realizacji zespołu i czasu cyklu. Ten wykres pomaga zespołom naprawić lukę między tymi dwoma czasami i poprawić wydajność.
- Metodyka rozwoju Kanban, WIP ogranicza liczbę zadań / kart, nad którymi może pracować członek zespołu lub w całości w tym samym czasie.
- Limity pracy w toku przesuwają się, koncentrując się na wykonywaniu zadań, jako że jednostka skupia się na pojedynczym zadaniu na raz.