Kanban - zarządzanie projektami
Kanban jest przystosowany do tworzenia oprogramowania jako podejście do zarządzania projektami. Kanban w tworzeniu oprogramowania obsługuje ciągły przepływ pracy, określany jako Strumień Wartości.
Strumień wartości
Strumień wartości składa się ze wszystkich działań niezbędnych do doprowadzenia projektu od utworzenia do zakończenia.
Działania mogą -
- Dodaj wartość do projektu
- Nie dodają wartości, ale są nieuniknione
- Brak wartości dodanej, możliwe do uniknięcia (określane jako odpady)
Eliminacja marnotrawstwa
Wszystko, co nie wnosi żadnej wartości do projektu, nazywane jest odpadami. Kanban ułatwia eliminację marnotrawstwa.
W tworzeniu oprogramowania istnieją trzy rodzaje marnotrawstwa -
- Marnotrawstwo w tworzeniu kodu
- Odpady w zarządzaniu projektami
- Marnotrawstwo w potencjale zespołu
Marnotrawstwo w tworzeniu kodu
Marnotrawstwo w rozwoju kodu wynika z następujących powodów -
Partially completed work- Częściowo ukończone dzieło może stać się nieaktualne i bezużyteczne. Można go wyeliminować za pomocą cykli iteracyjnych i kodu modułowego, który kończy się w ramach iteracji.
Defects- Podczas opracowywania kodu, poprawianie i ponowne testowanie wymaga czasu i zasobów. Można go wyeliminować dzięki aktualnemu zestawowi testów, przeprowadzaniu testów w ramach iteracji i ciągłym informacjom zwrotnym od klientów.
Odpady w zarządzaniu projektami
Marnotrawstwo w zarządzaniu projektami wynika z następujących powodów -
Extra Processes- Niepotrzebna dokumentacja, która wymaga czasu i zasobów. Można go wyeliminować za pomocą -
Wstępne planowanie, które procesy są istotne i konieczne.
Przegląd dokumentacji zapewniający przestrzeganie odpowiednich i niezbędnych procesów.
Code Handoffs- oznacza przekazanie pracy od jednej osoby lub zespołu do drugiej, po zakończeniu pracy pierwszej osoby. Może to prowadzić do braku wiedzy. Można to wyeliminować, zachowując widoczność i przejrzystość schematów blokowych i modeli szkieletowych.
Extra Functions- Są to funkcje, które nie są wymagane przez klienta. Wysiłek i czas są marnowane na opracowywanie funkcji wymaganych do wdrożenia funkcji, których klient nie chce. Można to wyeliminować poprzez ciągłą interakcję z klientem i testerami polegającą na gromadzeniu wymagań, ponieważ mogą oni lepiej wizualizować scenariusze i oczekiwane zachowanie systemu.
Marnotrawstwo w potencjale zespołu
Marnotrawstwo potencjału zespołu wynika z następujących powodów -
Task Switching- Prowadzi to do niebezpieczeństwa wielozadaniowości, która jest marnotrawstwem. Można go wyeliminować, koncentrując się na zadaniu przy każdym wydaniu. Duże etapy procesu są podzielone na zadania w celu -
Popraw widoczność
Zmniejsz zależności
Zapewnij łatwy przepływ pracy
Skoncentruj się na czasie cyklu dostarczonej pracy
Daj szansę na wykrycie i rozwiązanie wąskich gardeł
Waiting- Czas na otrzymanie instrukcji lub informacji - Zespół jest poddawany bezczynności, jeśli decyzje nie są podejmowane przez zespół lub jeśli informacje dostarczone zespołowi (programistom, testerom itp.) Są drogimi zasobami. Można go wyeliminować, umożliwiając członkom zespołu (programistom, testerom itp.) -
Podejmuj decyzje tak, aby nie musieli czekać na instrukcje
Mieć dostęp do informacji, aby można było z nich korzystać w razie potrzeby