Krzysztof Olszewski

Dyrektor Technologii i Architektury Oprogramowania

Krzysztof Olszewski

Dyrektor Technologii i Architektury Oprogramowania

Zdarzyła mi się ostatnio okazja dyskusji w szerszym gronie na temat prowadzenia projektów, używanych metodyk, wpływu różnych czynników na sukces czy też jego brak. Padło zdanie, że „lepiej źle zrealizować dobry pomysł niż rewelacyjnie zrealizować zły”, zdanie to początkowo wydaje się tendencyjnie deprecjonować sam etap wykonania, gloryfikując ideę, pomysł, jednak jak się głębiej zastanowić jest bardzo trafne.

Kluczem do analizy problemu jest krzywa realizacji. Krzywa realizacji to wykres pokazujący jak w czasie zmienia się wytwarzana wartość lub potencjał wartości wytwarzanej w projekcie, przy podziale czasu na identyfikowalne etapy. W kontekście projektów, których celem jest stworzenie i dostarczenie różnej postaci produktów, możemy założyć, że tymi etapami są „Pomysł”, „Projekt”, „Realizacja” i „Wdrożenie”. Wprowadźmy także pojęcie „poziomu akceptacji”, który zgodnie z intuicją oznacza taką wartość produktu, której osiągnięcie zapewnia sukces całego projektu.

Zobaczmy dwie przykładowe krzywe, które pokazują projekty zakończone wynikiem poniżej poziomu akceptacji, czyli porażką:

Krzywa realizacjiNa pierwszym wykresie, bardzo dobry pomysł został „zmarnowany” już w następnym etapie. Zauważmy, że zawiódł wyłącznie etap projektowania, strat tu poniesionych nie dało się odrobić w kolejnych etapach i wynik okazał się za słaby, aby przekroczyć poziom akceptacji.

Drugi wykres to sytuacja zgoła odmienna, pomysł był kiepski, dalej robiono to, co było można, każdy etap poprawiał sytuację wyjściową, niestety w efekcie i tak trochę zabrakło, aby osiągnąć końcowy sukces.

Kluczem do zrozumienia krzywej realizacji jest asymetryczny obszar, na wykresie oznaczony dwoma kolorami, obrazujący szansę rewaluacji oraz ryzyko dewaluacji poziomu osiągniętego w poprzednim etapie:

Krzywa realizacjiJak widać obszary te nie są symetryczne, co oznacza, że prawie zawsze mamy większe ryzyko niż szansę, co gorsze obszar ryzyka sięga maksymalnie do zera (widać to na poprzednich wykresach) praktycznie z każdego poziomu, natomiast obszar szansy, zazwyczaj ma stałą, niezbyt dużą a na pewno ograniczoną wysokość. Jakie są tego konsekwencje łatwo się domyślić:

Nie ma praktycznie szans na osiągnięcie sukcesu, startując od złego pomysłu.
Jeżeli na którymkolwiek etapie nastąpi drastyczne obniżenie wartości produktu, w kolejnych etapach najprawdopodobniej nie da się tego już odrobić.
Gwarancję sukcesu daje co-najmniej przyzwoita realizacja pomysłu, którego wartość już na starcie nie odbiega znacząco poniżej poziomu akceptacji.
Brzmi to logicznie, jednak w początkowej sentencji mamy zawartą tezę: „lepiej źle zrealizować dobry pomysł … ”, a przed chwilą wykazaliśmy, że dobry pomysł źle zrealizowany nie daje sukcesu, gdzie jest to „lepiej”. „|Diabeł” tkwi w iteracjach. Przekształcając projekt wytwarzania produktu w proces/projekt iteracyjny jesteśmy w stanie wyciągać wnioski z nieudanych etapów i w kolejnych iteracjach przeprowadzać je lepiej, sprawniej, co pozwala na podniesienie krzywej powyżej poziomu akceptacji i osiągnięcie sukcesu. Przy jednym założeniu, pomysł nie może być zły! Tu uwaga, wprowadzając iteracje, nie tracimy wcale projektowej tożsamości całego przedsięwzięcia, jak mogłoby sugerować użycie pojęcia „proces”. Dalej mamy unikalny wynik, określony start, czas trwania i zasoby. Mówiąc o iteracjach, dochodzimy do podstawy metodyk zwinnych, tak bardzo popularnego „adżajla”. Iteracyjność manifestująca się np. w postaci „sprintów” w metodyce SCRUM, służy z tego punktu widzenia dwóm podstawowym celom:

  • w kolejnych iteracjach podniesienia na jak najwyższy poziom krzywej realizacji
  • szybkiej detekcji „złych” pomysłów i „złych” etapów

Odnosząc to do naszych wykresów, w pierwszym przypadku najprawdopodobniej przy sprawnie działającej organizacji dałoby się wyeliminować błędy projektowe i w kolejnych iteracjach wyciągnąć produkt powyżej poziomu akceptacji, niestety trzeba zaznaczyć, że błędy popełnione na wczesnych etapach generują znacznie większe koszty niż błędy popełnione w etapach końcowych, a także same iteracje zajmują czas, co wpływa negatywnie na TTM (Time To Market), a w efekcie często determinuje „być albo nie być” projektu. W drugim przypadku sprawna organizacja już w pierwszych iteracjach, gdzie wartość produktu cały czas przebywałaby poniżej krzywej akceptacji, uświadomiłaby sobie słabość pomysłu i zamknęła projekt.

Oczywiście można wykonać jeszcze jeden zabieg pozornie ratujący sytuację … obniżyć poziom akceptacji, ale o tym nie będę już pisał, życząc czytelnikom i sobie góry dobrych pomysłów.