W rozwoju oprogramowania do lat 90. wszystko było przewidywalne i proste: wyraźna sekwencja procesów pracy, planowanie krok po kroku, dokumentacja, testowanie i wdrożenie końcowego produktu.
Zarządzanie projektami było zbyt sztywne, a odstępstwa od ścisłego planu zakłócały cały proces pracy.
Model Waterfall (model kaskadowy lub “waterfall”) to sztywny model rozwoju oprogramowania z wyraźną sekwencją działań, w którym przejście do następnego etapu jest niemożliwe, dopóki poprzedni nie zostanie całkowicie ukończony.
Rozwój w modelu Waterfall wygląda jak przepływ procesów przechodzących z etapu na etap z wyraźnymi wymaganiami. Nie następuje przejście do następnego etapu, dopóki bieżący nie zostanie zakończony.
W latach 90. rodzina elastycznych metod zastąpiła sztywne.
Oczywiście mówimy o Agile (zwinnym rozwoju oprogramowania). To nowe podejście do metodologii zarządzania projektami weszło do świata IT, a później rozszerzyło się na produkcję, inżynierię, rozwój sztucznej inteligencji i inne dziedziny.
Pierwsze elastyczne metody obejmowały:
- RAD (skupiające się na jakości przy minimalnym budżecie i ograniczonym czasie)
- XP (Extreme Programming z kolektywnym posiadaniem kodu)
- Scrum (gdzie każdy członek zespołu odpowiada za wynik)
- Kanban (wizualizowanie etapów rozwoju na tablicy), wśród innych.
Cztery idee Agile, które powinieneś znać:
- Ludzie i interakcje są ważniejsze niż procesy.
- Współpraca z klientem jest ważniejsza niż negocjowanie umowy.
- Działający produkt ma priorytet nad dokumentacją.
- Reagowanie na zmiany jest ważniejsze niż podążanie za planem.
Agile | Waterfall |
---|---|
Elastyczne procesy pracy, pozwalające na zmiany w dowolnym momencie | Kaskadowy model rozwoju z sztywną sekwencją |
Działający produkt jest ważniejszy niż dokumentacja | Dokumentacja jest ważniejsza niż gotowy produkt |
Indywidualna odpowiedzialność każdego członka zespołu za wynik | Odpowiedzialność za ogólny wynik spoczywa na zespole |
Interakcja z klientem w trakcie rozwoju | Klient nie bierze udziału w procesie |
Jak największe zaangażowanie właściciela produktu w procesie | Minimalne zaangażowanie właściciela produktu |
Przepływ pracy dzieli się na krótkie sprinty, zazwyczaj od 1 tygodnia do 1 miesiąca | Każdy przepływ pracy to osobna faza trwająca do zakończenia testów i zatwierdzenia |
Popularne systemy zarządzania projektami w Agile
Przyjrzyjmy się tym, które “zadomowiły się” i są najczęściej używane w rozwoju oprogramowania.
Scrum
Elastyczne podejście do rozwoju oprogramowania, w którym jedno zadanie równa się jednemu sprintowi. Sprint w Scrumie może trwać od 1 tygodnia do 1 miesiąca.

Dla kogo jest Scrum?
Dla małych firm lub działów, w których właściciel firmy lub kierownik działu może fizycznie zaangażować się w proces pracy i aktywnie uczestniczyć. Ta metoda jest również idealna dla startupów.
Użycie Scruma w zarządzaniu projektami utrudnia dokładne wskazanie odpowiedzialności za niedokończone zadania. Każdy członek zespołu odpowiada za wynik, prioritetując samoorganizację, aby kształtować przepływy pracy.
Zespół wybierający Scruma do zarządzania projektami musi być gotowy na maksymalną elastyczność. Na przykład, jeśli jeden członek zespołu tymczasowo “wypada” z procesu, inny musi przejąć jego zadania.
Scrum master – menedżer projektu i kluczowa postać w zespole, nadzorujący organizację procesów biznesowych, spotkania, motywację zespołu, szybkie reakcje na zmiany i rozwiązywanie problemów.
+ Zalety
Oprogramowanie jest rozwijane szybciej, przy maksymalnym zaangażowaniu zespołu, redukując koszty rozwoju poprzez dzielenie przepływu pracy na krótkie sprinty.— Wady
Scrum nie ma sztywnych zasad ani wymagań , ale pozwala na eksperymenty, zmiany budżetu i harmonogramów. Nie nadaje się dla klientów potrzebujących jasnego planu i formalnej umowy.Na przykład, jeśli musisz stworzyć produkt dla organizacji rządowej, gdzie podpisanie umowy jest priorytetem, Scrum jest nieodpowiedni. Najwyższym priorytetem jest gotowy produkt, a następnie dokumentacja, raporty robocze itd.
Przykład zarządzania projektem przy użyciu Scrum
Załóżmy, że zadaniem jest stworzenie oprogramowania w najkrótszym możliwym czasie. Przepływ pracy jest podzielony na sprinty, z których każdy kończy się pokazem ukończonego wyniku. Spotkania odbywają się w celu przeglądu wyników pośrednich i przejścia do następnego sprintu.
Monitorowanie prędkości zakończenia sprintu jest kluczowe w Scrumie.
Aby zrozumieć, jak długo będzie trwać sprint, zespół może uruchomić stoper na początku. Śledzenie czasu spędzonego na każdym zadaniu daje wgląd w wymagany czas dla podobnych zadań.

Kanban
Wizualna reprezentacja przepływu pracy i krok po kroku ruchu zadań od “W trakcie” do “Zrobione.” Między tymi dwoma stanami mogą znajdować się kilka innych etapów: “Rozwój,” “Testowanie,” “Optymalizacja,” itd. Kanban jako tablica, na której zadania są przenoszone z stacji do stacji. Gdy zadanie dociera do końcowej stacji “Zrobione,” jest ukończone.
Scrum i Kanban to elastyczne podejścia do zarządzania projektami. Jednak Kanban jest jeszcze bardziej elastyczny, ponieważ:
- Pozwala na nagłe nowe zadania i “przełączanie” między nimi.
- Kolektywna odpowiedzialność za wynik zwiększa efektywność.
- Nieplanowane zadania trafiają do backlogu, przestrzeni magazynowej dla wszystkich zadań, które nie są jeszcze w toku. Backlog wygląda jak każdy inny etap procesu roboczego i zawiera zadania gotowe do pracy, gdy inne etapy kończą się wcześniej niż oczekiwano.
+ Zalety
W przeciwieństwie do Scruma, Kanban nie wymaga regularnych spotkań, dyskusji ani przeglądów sprintów, oszczędzając czas i zwiększając wydajność, gdzie wszystkie etapy są widoczne na tablicy.— Wady
Kanban jest trudny dla dużych projektów, gdzie wyniki pośrednie są kluczowe, dzieląc proces na sprinty, a wstępne zatwierdzenie planu działania jest potrzebne. Kanban lepiej nadaje się do krótkoterminowych projektów i zadań.Przykład zarządzania projektem przy użyciu Kanban
Zadaniem jest nakręcenie filmu instruktażowego dla klienta. To będzie obejmować stworzenie kilku zadań: “Pisanie scenariusza,” “Nagrywanie,” “Wstępne edytowanie,” “Post-Produkcja.” Każde zadanie będzie oddzielną kolumną na tablicy Kanban.

Kanban czy Scrum? Który system zarządzania projektami jest dla Ciebie potrzebny?
Scrum zapewnia większą kontrolę i zarządzanie na początku rozwoju nowego produktu. Jeśli Kanban oferuje maksymalną elastyczność, Scrum koncentruje się bardziej na kontroli i zarządzaniu. Kiedy procesy są już wprowadzane, Kanban staje się pomocny. Jest idealny do pracy z powtarzalnymi zadaniami.Jak wybrać narzędzie do zarządzania projektami?
Odpowiedni menedżer zadań to połowa sukcesu. Gdy już wybierzesz metodę zarządzania projektem, kluczowe jest, aby przenieść pracę i zadania do wybranego systemu.
6 oznak, że wybrałeś odpowiedniego menedżera zadań:
- Zespół płynnie przeniósł wszystkie przepływy pracy do konta.
- Funkcjonalność jest intuicyjna i wykorzystywana przez członków zespołu.
- Zespół łatwo korzysta z jednej z elastycznych metod zarządzania: Scrum lub Kanban.
- Systematyzacja przepływu pracy jest ustalona, co zwiększa ogólną efektywność.
- Komunikacja w zespole staje się bardziej skoordynowana: projekty, zadania i komentarze nie są tracone.
- Klient otrzymuje przejrzyste raporty dotyczące zadań i projektów, śledząc przepływy pracy, jeśli chce.