Spotkałem się ostatnio z opinią, że określenie wskaźników jakościowych (ang. KPI = Key Performance Indicator) dla działów projektowych, czy też działów rozwoju, jest sporym wyzwaniem. Ponieważ lubię tego typu wyzwania, więc postanowiłem zaproponować jego rozwiązanie.

Performance Graph 300px

Zapraszam do lektury!

Od razu na wstępie zaznaczę, że moje poniższe wynurzenia są subiektywnym podejściem do rozwiązania problemu. Co ciekawe, odniosłem wrażenie poparte krótkimi poszukiwaniami w tzw. Wszechnicy Wiedzy Wszelakiej prowadzonymi za pomocą narzędzi na G, że temat nie doczekał się do tej pory, szerszego opisu w języku polskim W języku angielskim należy szukać haseł „quality assurance” i pokrewnych. Co ciekawe, stosunkowo trudno jest znaleźć nawet w języku angielskim przykłady dokumentów definiujących wymagania na jakość projektowania sprzętu (ang. hardware), czy układów elektronicznych w szczególności. A zatem do dzieła!

Na dobry początek należałoby opisać pojęcie Jakości i spróbować podać jego definicję. Swego czasu spróbowałem zgłębić ten temat w oparciu o lekturę książki Roberta Pirsiga pt. „Zen, czyli sztuka oporządzania motocykla”. Będąc pod wrażeniem przeprowadzonego we wspomnianej książce wywodu oraz posiłkując się opiniami zawartymi w Wikipedii można dojść do wniosku, że problem jest złożony, dotyka samych fundamentów filozofii i racjonalnej myśli. Jednocześnie każdy z nas intuicyjnie, a posteriori, rozumie pojęcie Jakości. Umiemy bowiem porównywać, określać, co jest lepsze od czego i w jakim sensie. I właśnie na tej intuicyjnej zasadzie oprę dalszy swój wywód, tym samym nie podając definicji.

Zależy nam zatem na ocenianiu, przypisywaniu miary liczbowej (np. 5 wróbli, 19%, 25 punktów) bądź jakościowej (np. lepiej, dużo, mało), pewnym cechom wynikającym z naszych działań. Miary te powinny służyć porównaniom, by można było w przyszłości na ich podstawie wyciągać wnioski, porównywać wyniki ze sobą. Warto sobie od razu powiedzieć, czemu to robimy.

Wybór i konsekwentne zastosowanie takich, czy innych współczynników jakości nie gwarantuje sukcesu. Dlaczego więc warto ponosić dodatkowe nakłady na dbanie o jakość? Ponieważ jest to jeden z kluczowych czynników zwiększających szanse na odniesienie sukcesu. Tylko tyle i aż tyle. Wcale nie jest bowiem powiedziane, że dzięki rozbudowywaniu procedur kontrolnych uda się odnieść sukces. Ale z drugiej strony istnieje znacznie większe prawdopodobieństwo, że bez zastosowania procedur nastawionych na sprawdzanie jakości, tego sukcesu odnieść się nie uda. To trochę tak jak w przysłowiu „nie planując sukcesu planujesz porażkę”. Parafrazując: „nie biorąc w swoich planach pod uwagę jakości planujesz porażkę”. Przy tym, co ważne, jakość można zaplanować.

Na marginesie dobrym sposobem oceny sprawności jakiejś organizacji w obszarze zarządzania jest sprawdzenie, w jaki sposób ocenia jakość, czyli czy stosuje KPI. Takie pytanie może np. paść ze strony kandydata na jakieś stanowisko podczas rozmowy o pracę. Jeżeli organizacja planuje i dba o jakość, jest organizacją dojrzałą. Może więc zaplanowała miejsce dla ciebie, zaplanowała twój rozwój?

Pewnej trudności może nastręczać odróżnienie czynników wpływających na jakość od czynników bezpośrednio zwiększających koszty i czas realizacji zadania. Stąd skupienie uwagi wyłącznie na jakości jest moim zdaniem niewłaściwe. Każdorazowo należy rozpatrywać wzajemną relację pomiędzy „trójcą efektywnego zarządzania”, czyli jakością, kosztem i czasem. „Wybierz dwa z trzech: jeżeli ma być dobrze i tanio, to nie będzie szybko; jeżeli ma być dobrze i szybko, to nie będzie tanio; jeżeli ma być tanio i szybko, to nie będzie dobrze”. Często te trzy pojęcia rysuje się w układzie trójkąta. Przy wierzchołkach trójkąta umieszcza się wymienione poprzednio pojęcia. We wnętrzu tego trójkąta powinien znaleźć się cel, który próbujemy zrealizować. Im bliżej ten cel znajdzie się dwóch wierzchołków tego trójkąta, tym dalej będzie od trzeciego.

Właściwym momentem na określenie KPI powinien być zatem moment otwarcia projektu, gdy znany jest jego budżet oraz zakładany czas realizacji. Teoretycznie wystarczy dodać trzecią zmienną „jakość” i powiązać ją z dwoma już wymienionymi. Tym samym czynniki decydujące o jakości staną się równorzędnym elementem prognozy, tak jak zakładany czas i pieniądze.
KPI są jednym z najbardziej podstawowych narzędzi służących do zarządzania. W automatyce stosowana jest heurystyczna zasada "jeżeli nie umiesz mierzyć, nie potrafisz sterować". Parafrazując tę zasadę można powiedzieć, że "jeżeli nie umiesz mierzyć, nie potrafisz zarządzać". Dzięki KPI można nadawać wartości liczbowe i porównywać te wartości, wyrabiać sobie pogląd, świadomie podejmować decyzje, czyli zarządzać.

Na potrzeby tego artykułu załóżmy, że oceniamy wysiłki pewnego hipotetycznego działu rozwoju zajmującego się projektowaniem i prototypowaniem elektronicznych obwodów drukowanych. Z natury rzeczy projekty są unikalne, teoretycznie trudno je ze sobą porównywać. Elementem każdego z projektów jest opracowanie oprogramowania układów elektronicznych wchodzących w skład obwodów drukowanych, czyli tzw. oprogramowania osadzonego. Załóżmy dalej, że hipotetyczny dział rozwoju zrealizował mniej więcej w tym samym dwa prototypy (dwa projekty). Jeden z nich wg założeń miał zostać zrealizowany wg najlepiej pojętej jakości, drugi już wg nieco niższej. Pierwszy z nich był postrzegany jako „rozbudowany, złożony”, a drugi „prosty”.

Spróbujmy odpowiedzieć, co to znaczy zmierzyć jakość. Jak już wspominałem, wymaga to dodatkowego nakładu pracy. Zostaną opracowane przynajmniej następujące dokumenty:

  1. karta wymagań / celów jakościowych - element planowania,
  2. karta oceny realizacji wymagań / celów jakościowych - element sprzężenia zwrotnego.

Dobrze, by kształt (szablon) obu dokumentów był znany uczestnikom procesu projektowego już na samym początku. Warto zadbać też o to, by wszystkie wykorzystane pojęcia zostały wyjaśnione podczas jednego ze spotkań. Mógłby to też być jeden i ten sam dokument, ale wtedy należałoby zadbać o graficzne wyróżnienie kolumn odpowiadających za planowanie od tych podsumowujących realizację planu.

Te dwa dokumenty mogą zostać przygotowane łącznie dla całego projektu. Dużo lepsze efekty można jednak uzyskać, jeżeli cele jakościowe zostaną określone indywidualnie dla każdego etapu projektu. Zdekomponujmy zatem pojęcie projektu układu elektronicznego. W przypadku omawianego przykładu dekompozycja będzie polegała na wymienieniu etapów realizacji przedstawionego przykładowego zadania. Proszę zwrócić uwagę, że dla obu zadań etapy będą w zasadzie takie same, ale będzie je różnić czas realizacji i potrzebne zasoby ludzkie. Spróbuję wymienić niektóre z nich:

  1. opracowanie wymagań funkcjonalnych,
  2. opracowanie koncepcji,
  3. opracowanie schematu blokowego sprzętu,
  4. opracowanie schematu elektrycznego sprzętu,
  5. opracowanie schematu blokowego oprogramowania,
  6. opracowanie projektu obwodu drukowanego,
  7. opracowanie projektu oprogramowania,
  8. implementacja projektu sprzętu - przygotowanie prototypu obwodu drukowanego,
  9. implementacja projektu oprogramowania - przygotowanie oprogramowania.
  10. weryfikacja założeń - porównanie wymagań z uzyskanym efektem.

Dla każdego z etapów można opracować KPI. Przykładowo dla etapu „opracowanie schematu elektrycznego sprzętu” należy odpowiedzieć na pytanie „czym różnią się schematy elektryczne, skoro jedne są lepsze od drugich”. Przykładowo jeszcze przed rozpoczęciem rysowania schematu zakładam, że:

  1. schemat ma być czytelny - schemat główny i schematy poboczne jednolicie ponumerowane,
  2. schemat ma być czytelny - zastosowana jednakowa konwencja symboli graficznych, np. wszystkie złącza oznaczone jednakowym symbolem, wszystkie masy oznaczone tym samym symbolem,
  3. wejścia znajdowały się skrajnie po prawej stronie, na każdej ze stron,
  4. wyjścia znajdowały się skrajnie po lewej stronie, na każdej ze stron,
  5. istniało powiązanie graficzne pomiędzy blokami schematu blokowego a elementami realizującymi te bloki na schemacie elektrycznym, wydzielone kolorystycznie lub za pomocą schematów cząstkowych,
  6. nazwy linii sygnałowych były stosowane konsekwentnie i jednakowo,
  7. wszędzie jednakowe symbole masy i zasilania,
  8. żadna linia układu scalonego nie wisi w powietrzu,
  9. referencje do zastosowanych rozwiązań układowych w poprzednich projektach.

Tym samym udało się zbudować i) (9) wymagań jakościowych, które mogłyby znaleźć się na karcie celów jakościowych dla tego etapu prac. Mogłaby ona zawierać tabelę. W pierwszej kolumnie, w kolejnych wierszach, zostałyby wpisane powyższe wymagania. W kolejnych kolumnach znalazłyby się: „cel jakościowy” z opisem „tak” lub „nie” oraz „uwagi”. Oczywiście warto podać datę zdefiniowania tych celów, osobę odpowiedzialną za ich zdefiniowanie, nieco danych identyfikujących dany projekt, itp.

Podczas oceny, czyli w momencie, gdy uznano by, że dany etap dobiega końca, można wykorzystać nieco zmodyfikowaną kartę, która zawierałaby opisaną w poprzednim paragrafie tabelę. W kolejnych kolumnach znalazłyby się: ocena spełnienia wymagania: „tak” lub „nie” oraz „uwagi”.

Część z powyższych wymagań ma charakter nadmiarowy, tzn. nawet jeżeli nie zostałyby spełnione, jest szansa na poprawne techniczne działanie produktu opracowanego w oparciu o taki dokument. Z drugiej strony jeżeli niektóre z tych wymagań nie zostaną spełnione, to zwiększeniu mogą ulec koszty związane z ewentualną modyfikacją takiego schematu. I tu pojawia się znowu wspomniany trójkąt zarządzania Jakość - Koszt - Czas. Cyzelowanie schematu może spowodować niepotrzebny wydatek czasowy. Czujemy, znowu intuicyjnie, że zakładany czas potrzebny do sprawdzenia schematu powinien być uzależniony od liczby połączeń, liczby stron schematu.

Po zakończeniu etapu przygotowania schematu można pokusić się o policzenie problemów wykrytych po pierwszym sprawdzeniu, tzn. na schemacie powinny pojawić się uwagi, które powinny zostać policzone. Można przyjąć, że prawidłowo wykonany schemat nie posiada żadnych problemów. Liczenie często ułatwia stosowane oprogramowanie CAD oraz dodatkowe narzędzia wspierające projektowanie. Przykładem może być zastosowanie systemu kontroli wersji. Dzięki niemu można prześledzić różnice pomiędzy kolejnymi wersjami pliku i szybko uzyskać miary liczbowe typu „ile było różnic, ile zgłoszono uwag”. Oczywiście uwaga uwadze nierówna. Może się przecież zdarzyć, że osoba sprawdzająca wniesie jedną, ale na tyle istotną uwagę, która wywróci do góry nogami cały schemat. Zakładam jednak, że taka sytuacja będzie miała wyjątkowy charakter.

Spróbujmy teraz wyznaczyć przykładowe KPI dla tego samego etapu prac. Zaproponowane współczynniki mają charakter progresywny, co oznaczyłem przez (+). Ta cecha oznacza, że przyglądanie się tym współczynnikom podczas trwania danego etapu projektowania pozwala na zarządzanie, podejmowanie działań korygujących. Przykładowe współczynniki:

  1. KPI1(+) liczbowy: ile wyniósł czas potrzebny do narysowania schematu,
  2. KPI1(+) jakościowy: czy czas potrzebny do narysowania schematu był większy / mniejszy od założonego,
  3. KPI2(+) liczbowy: liczba zgłoszonych poprawek podzielona przez liczbę wszystkich elementów,
  4. KPI2(+) jakościowy: czy liczba zgłoszonych poprawek była większa / mniejsza od założonej,
  5. KPI3(+) liczbowy: ile wymagań jakościowych zdefiniowanych na karcie celów jakościowych zostało wypełnione, ale nie zostało wypełnionych,
  6. KPI3(+) jakościowy: czy wypełniona została wystarczająca liczba wymagań jakościowych.

Kluczowe z punktu widzenia jakości jest więc:

  1. możliwie precyzyjne zdefiniowanie wymagań jakościowych,
  2. porównanie założeń z uzyskanym efektem.

Po zebraniu doświadczeń zespół projektowy może się dorobić na tyle obszernego zbioru wymagań, że do realizacji konkretnych zadań wybierany będzie tylko pewien podzbiór. W ten sposób dojdzie do różnicowania wymagań jakościowych w zależności od potrzeb. Dobrze jednak, by określony został pewien minimalny zespół wymagań, który realizowany będzie zawsze.

Oprócz miar jakościowych przydaje się wprowadzenie miar ilościowych, który pozwolą na porównywanie ze sobą różnych zadań. Kontynuując przykład, jak porównać ze sobą dwa zadania polegające na przygotowaniu dwóch schematów różnych układów elektronicznych? Proponuję przyjęcie następujących miar, które będą wyznaczane niezależnie od miar jakościowych:

  1. liczba zastosowanych elementów elektronicznych,
  2. liczba wejść,
  3. liczba wyjść,
  4. sumaryczna liczba połączeń pomiędzy elementami,
  5. liczba złącz,
  6. liczba przycisków,
  7. liczba rezystorów,
  8. liczba kondensatorów,
  9. liczba cewek,
  10. liczba układów scalonych,
  11. liczba bloków (funkcji) schematu blokowego,
  12. liczba stron schematu elektrycznego.

Podejście zakładające wykorzystanie KPI sprawdza się przede wszystkim w przypadku procesów - ciągle robimy przynajmniej z grubsza, jeżeli nie dokładnie, to samo. Wydaje się, że generalnie wykorzystanie dużej liczby procedur i regulacji ma na celu eliminację czynnika ludzkiego, jako źródła błędów. W przypadku podejścia projektowego czynnik ludzki odgrywa rolę pierwszoplanową. Wszyscy chyba czujemy, że zdarzają się projekty genialne, odważne, łamiące zasady i stereotypy. Powstaje pytanie otwarte, czy niektóre z nich narodziłyby się w środowisku sztywno zdefiniowanym, wymagającym spełniania określonych norm i procedur, czyli takim, jakie zaproponowałem w poprzednich akapitach. Cóż, uchylę się od odpowiedzi jednocześnie powtarzając argument o zaletach planowania nad pozostawieniem biegu spraw przypadkowi. Wydaje się, że w przypadku zespołów przygotowujących prototypy, rozwijających rozwiązania, dbanie o jakość ma szczególne znaczenie ze względu na wymierne konsekwencje błędów na etapie uruchomienia produkcji seryjnej, gdzie błąd popełniony na etapie projektowania zwielokrotnia się przez liczbę wyprodukowanych egzemplarzy produktu.

Pozornie zupełnie inne podejście polega na estymacji kosztów złej jakości. Jest to niejako spojrzenie do opisanego powyżej. Zamiast na bieżąco oceniać wskaźniki dobrej jakości, oceniane są wskaźniki złej jakości, przede wszystkim kosztowe. Tak więc liczone są błędy, koszty wykonania dodatkowych iteracji w procesie projektowym. Z tych względów wskaźniki złej jakości oznaczę z indeksem (-).
Przykład z branży elektronicznej. Zespół projektowy opracował obwód drukowany w postaci karty. Ze względu na popełnione błędy na etapie prototypowania, np. nieprawidłowe rozmiary niektórych obudów elementów elektronicznych konieczne było wykonanie drugiej serii prototypów. Ze względu na niedostatecznie dopracowaną specyfikację wymagań czas przygotowania oprogramowania wydłużył się o 160 godzin. W typ wypadku KPI1(-) = dodatkowy koszt wykonania partii prototypów. KPI2(-) = dodatkowa liczba godzin potrzebna do wykonania oprogramowania karty.

Teoretycznie, w najbardziej intuicyjnej postaci, estymacja kosztów złej jakości nie ma charakteru progresywnego, tzn. zakłada wyznaczanie kosztu błędów, zamiast świadomego unikania niedoskonałości, jak w przypadku wskaźników dobrej jakości. Z drugiej strony koszty złej jakości są stosunkowo proste do oceny, nie wymagają rozbudowanych formularzy i wielu wskaźników, jak w przypadku opisanego poprzednio podejścia progresywnego.

Na dobrą sprawę należałoby oceniać realizację danego projektu zarówno pod kątem dobrej, jak i złej jakości. Intuicyjnie bowiem wzajemnie się one uzupełniają: im mniejszą wartość mają wskaźniki złej jakości, tym, przynajmniej teoretycznie, większe powinny być wartości wskaźników dobrej jakości.

Nic nie zastąpi jednak zdrowego rozsądku. Przykładowo na nic nie zdadzą się korzystne wartości wyznaczonych przez zespół projektowy wskaźników jakościowych, jeśli dany projekt, dany produkt nie odniesie sukcesu na rynku. Mówiąc inaczej, przecież zwycięzców się nie sądzi. Czyli, z drugiej strony, jeżeli jakiś produkt odniesie na rynku sukces, rolę drugoplanową będą odgrywały wyznaczone w trakcie współczynniki jakości. A raczej, nawet jeżeli będą dosyć słabe, ze względu na sukces raczej nie będą eksponowane. Czego sobie i państwu życzę.

Komentowanie za pomocą rozszerzenia JComments zostało wyłączone. Zapraszam do dodawania komentarzy za pomocą aplikacji Disqus.