To już trzecia część serii Moniki Dzingielewskiej o jakości. W poprzednich artykułach czytaliśmy o tym dlaczego jakość w projekcie jest ważna i jak właściwie możemy ją definiować. Dzisiaj przechodzimy do pierwszego kroku w cyklu Deminga – planowania.

Zobacz wszystkie wpisy z serii:

  1. Tytułem wstępu
  2. O jakości słów kilka
  3. „Planuj”, czyli jak właściwie zadawać pytania
  4. „Mierz i działaj” czyli miary, metryki, statystyki i trendy.

„Planuj”, czyli jak właściwie zadawać pytania

Mamy mocne postanowienie poprawy. Od jutra, a najlepiej od dziś będziemy działać lepiej, szybciej, bardziej zwinnie… „Będzie pan zadowolony”. Tylko od czego zacząć? Skąd wiadomo co poprawić i usprawnić, żeby było lepiej?

Z mojego doświadczenia wynika, że pierwszy krok cyklu Deminga, a więc planowanie działań projakościowych, jest najbardziej kluczowy i jednocześnie najbardziej złożony.

Aby dobrze przygotować się do działania należy:

  1. Zidentyfikować cele i potrzeby biznesowe – zaczynam od tego, ponieważ każde działania muszą mieć jakiś cel; nie ma sensu wprowadzać nowych metodyk, narzędzi, mechanizmów automatyzacji, jeśli nie wiemy po co mamy to robić – w takim przypadku może okazać się, że poniesiemy tylko zbyteczny koszt działań naprawczych, które tak naprawdę nie rozwiążą żadnego z naszych problemów
  2. Poznać i uporządkować nasz proces wytwórczy – tzn. przyjrzeć się obecnej sytuacji, obecnie obowiązującym procesom, zasadom współpracy, wykorzystywanym metodykom i narzędziom… bez tego ani rusz, aby coś usprawniać trzeba najpierw to poznać
  3. Wskazać metryki do mierzenia naszego procesu  – tylko dzięki temu będziemy w stanie powiedzieć, czy podejmowane przez nas działania zmierzają do realizacji naszych celów jakościowych.
  4. Zidentyfikować obszary do usprawnień – część z nich może być widocznych na pierwszy rzut oka – może się okazać, że zidentyfikujemy wąskie gardła w procesie albo nieoptymalne działania; ale część z nich zostanie odkryta dopiero po przeanalizowaniu metryk i wyciągnięciu wniosków
  5. Zaplanować konkretne działania usprawniające – może to być automatyzacja niektórych działań, uproszczenie pewnych procedur, ograniczenie bądź poszerzenie odpowiedzialności konkretnych zespołów lub osób – spektrum działań jest szerokie i na pewno nie ma tu uniwersalnej recepty

Czym są metryki?

O ile dwa pierwsze kroki wydają się intuicyjne, o tyle krok trzeci może już budzić wątpliwości, dlatego to na nim skupię swoją uwagę. Dobrze wiemy, że na różnych konkursach np. wypieku ciast organizowanych dla amerykańskich gospodyń lub na międzynarodowych wyborach miss, najpierw należy zdefiniować kryteria, według których będzie się coś lub kogoś oceniać. Podobnie, jeśli chcemy ocenić projekt, czy to w trakcie trwania, czy też po jego zakończeniu, musimy najpierw określić, jakie parametry i kryteria nas interesują. Mogą być to cechy zarówno dotyczące produktu (np. awaryjność), ale także takie, które dotyczą samego procesu wytwarzania (np. przyrost funkcjonalności w czasie).

Na początku, gdy dopiero rozpoczynamy mierzenie naszych projektów, przydaje się na pewno tzw. „literatura fachowa” wszechobecna w Internecie, oraz umiejętności paranormalne, żeby dobrze przewidzieć użyteczność poszczególnych metryk. Jeśli jednak takowych nie posiadamy, nie ma co się martwić, na pewno szybko czas zweryfikuje, co jest przydatne a co nie, a my nabierzemy szybko wprawy w tej dziedzinie.

Czym mierzyć projekty?

Przy mierzeniu projektów niezwykle przydatne pod kątem gromadzenia i przetwarzania danych dotyczących projektów okazują się narzędzia wspierające proces wytwórczy. Spektrum narzędzi jest szerokie a ich funkcjonalność i sposób wykorzystania są bardzo różne, ale to dzięki nim możemy dysponować naprawdę nieocenionym zbiorem danych, których odpowiednia analiza i interpretacja może służyć zarówno w bieżącym monitorowaniu postępu projektu, identyfikacji i minimalizacji ryzyk, a także ciągłym korygowaniu działań i wprowadzeniu usprawnień.

Kryteria pomiaru

Mierzenie naszych procesów i projektów może też być cennym źródłem informacji dla przyszłych projektów (ang. lessons learned). Jest to szczególnie warte uwagi, gdy projekty są podobnej natury, mają podobne cechy. Należy pamiętać, że tak naprawdę na jakość gromadzonych danych to my sami mamy wpływ, to my musimy zdefiniować jakie parametry procesu warto mierzyć i jaki ma być poziom szczegółowości gromadzonych danych, abyśmy mieli możliwość zdobycia jak największej ilości cennych informacji, z jednocześnie jak najmniejszymi kosztami związanymi z ich gromadzeniem.

W ogólności kryteria oceniające projekt można podzielić na 2 rodzaje:

1. Kryteria określające bieżący status projektu (a co za tym idzie produktu)

Do tej grupy można zaliczyć takie kryteria jak np. procent zrealizowanej funkcjonalności (wymagań), przyrost realizowanej funkcjonalności, liczba otwartych defektów, trend zgłaszania i naprawiania defektów etc.;

2. Kryteria oceniające projekt i\lub produkt po jego zakończeniu

Do tej grupy można zaliczyć takie kryteria jak np. sumaryczna pracochłonność realizacji funkcjonalności i poprawy defektów w zestawieniu z pierwotnym oszacowaniem, średnia pracochłonność poprawy defektu w zależności od kategorii, źródła zgłoszenia etc.

Podsumowanie

W projektach, w których brałam udział na samym początku trwania projektu identyfikowaliśmy metryki, widoki i raporty ułatwiające bieżące monitorowanie stanu projektu i bieżące wprowadzanie działań korygujących. Ale o tym już w kolejnym odcinku serii…

Podobnie dobra gospodyni (bądź gospodarzJ) wie, jak powinno wyglądać ciasto na poszczególnych etapach jego wyrabiania i wypiekania, by efekt końcowy był zgodny z oczekiwaniami. Dlatego od samego początku obserwuje je w określonych momentach czasu i w razie potrzeby podejmuje odpowiednie akcje naprawcze (np. dosypuje dodatkową ilość mąki, czy zmniejsza temperaturę wypiekania).

Zobacz wszystkie wpisy z serii:

  1. Tytułem wstępu
  2. O jakości słów kilka
  3. „Planuj”, czyli jak właściwie zadawać pytania

Monika Dzingielewska – kierownik zespołu programistów

Moje doświadczenia skupia się głównie wokół koordynowania prac zespołów programistycznych w dużych i złożonych projektach informatycznych. Od początku pracy zawodowej fascynują mnie zagadnienia związane z procesem wytwórczym, planowaniem wydań oraz zarządzaniem konfiguracją oprogramowania.