niedziela, 12 lutego 2012

Lean Startup - co to jest?

Rozmawiając ostatnio z kilkoma osobami na temat Lean Startup zaczęło mi brakować jasnej definicji czym jest  Lean Startup. Zaczynając z kimś rozmowę na ten temat dobrze jest podać jeżeli nie definicję to chociaż krótkie "zdanie w windzie", które szybko i sprawnie przekaże ideę tego czym jest Lean Startup. Na własne potrzeby stworzyłem więc taki opis, która w minimalnej liczbie słów stara się przekazać co to jest Lean Startup.
Lean Startup to zorientowana na budowanie wartości dla właścicieli, metoda iteracyjnego prowadzenia projektów rozwoju biznesu, w której miarą postępu jest dostosowywanie modelu biznesowego do realiów rynkowych.
Powyższe zdanie jest jednocześnie kwintesencją trzech najważniejszych cech metody Lean Startup. Co ciekawe cechy te są bardzo zbieżne z "tradycyjnym" agile, tylko są one dostosowane do realiów zarządzania projektami rozwoju biznesu.

Najważniejszym elementem metody Lean Startup jest budowanie wartości rozwijanego biznesu. Wszystkie metodyki agile opierają się o przepływ wartości dodanej dla użytkownika końcowego. Agile jest tak skonstruowane, aby możliwie szybko dostarczać wartość (działające funkcjonalności) i sprawdzać je w praktyce, tzn. umożliwiając użytkownikowi końcowemu skorzystanie z nich. Bardzo podobnie działa Lean Startup, tylko inaczej definiowane jest pojęcie wartości. Ponieważ jest to metoda prowadzenia projektów rozwoju biznesu a nie operacyjnych to wartość jest generowana poprzez stworzenie "lepszego biznesu". Czyli innymi słowy poprzez stworzenie biznesu, który ma większe szanse przetrwać na rynku i przynieść oczekiwane zyski dla właścicieli.

Metoda Lean Startup jest iteracyjna, co nie powinno dziwić w kontekście tego jaki sukces metody iteracyjne odniosły w tworzeniu produktów. Jedyne, co może dziwić to fakt, że tak długo trwało zanim ktoś opisał jak dokładnie przełożyć iteracyjność na projekt rozwoju biznesu. W przypadku tego typu projektów najbardziej istotną sprawą jest to, że wcześniej założenie było takie, że zanim zaczniemy tworzyć biznes powinniśmy mieć wszystkie możliwe badania rynkowe i plany modeli biznesowych. Sam projekt był tylko ich implementacją. Lean Startup natomiast postuluje, aby pierwsze badania i plany były ograniczone do absolutnego minimum (powstaje MVP - Minimum Viable Product), który natychmiast po powstaniu jest wypuszczany na rynek, gdzie próbuje się go sprzedać. Dostosowanie biznesu do oczekiwań rynku dzieje się natomiast już na bazie istniejącego MVP i realnych klientów w kolejnych iteracjach. Tak jak w agile oprogramowanie po każdej iteracji dostaje klient, aby mógł w nie poklikać.

Iteracje w metodzie Lean Startup służą do tego, aby wypracować lepszy model biznesowy. To jest chyba największa zmiana mentalna w porównaniu z agile. W agile na koniec każdej iteracji mamy namacalny (bądź klikalny) produkt. W Lean Startup mamy... lepszy model biznesowy, czyli nową zapisaną kartkę papieru. Innymi słowy: firmę lepiej dostosowaną do potrzeb rynku i mającą większe szanse na przetrwanie na rynku. Zmiany w modelu biznesowym nie muszą być wielkie, ważne aby przynosiły skutek w postaci lepszych wyników. Wyników, które rozumiane są jako lepsze wartości kluczowych wskaźników biznesu. .Te kluczowe wskaźniki to wbrew pozorom nie są pieniądze. Na wczesnym etapie rozwoju biznesu ważniejsze są np. wskaźniki dotyczące pozyskiwania nowych klientów, konwersji, etc. Ważne jest, że model biznesowy po każdej iteracji ma skuteczniej realizować te wskaźniki. To natomiast oznacza, że firma lepiej realizuje potrzeby rynku, czyli zwiększa się jej wartość (oczywiście przy założeniu, że wskaźniki są dobrze dobrane). Co znów jasno potwierdza, że metodyka nastawiona jest na szybkie i efektywne dostarczanie wartości właścicielom projektu (czyli w większości przypadków właścicielom biznesu).

Warto też podkreślić, że iteracja kończy się nie z chwila wypuszczenia nowej wersji produktu na rynek, tylko z chwila zmierzenia reakcji tego rynku i wyciągnięcia wniosku. W agile trzeba zamykać iteracje agile produkując działający produkt, potwierdzony na demie przez klienta. W Lean Startup trzeba zamykać iteracje dostarczając model biznesowy lepiej akceptowany przez rynek. Demo odbywa się tutaj w realnym świecie, na realnych klientach. Iterację zamknąć jednak trzeba, jeżeli ma z niej wyniknąć jakakolwiek nauka i lepszy model biznesowy.

Powyższe w skrócie tłumaczy czym jest Lean Startup. Definicja słownikowa to może nie jest, ale zacytowane na początku zdanie plus wyjaśnienia poniżej pomogły mi już nie raz zainteresować osoby, które wcześniej o tej koncepcji nie słyszały.

niedziela, 5 lutego 2012

Inicjowanie projektu

Według klasycznych metod zarządzania projektami, zanim zaczniemy projekt planować powinniśmy przeprowadzić fazę zwaną inicjowaniem projektu. Po szczegółowy opis co należy w tej fazie zrobić zapraszam do PMBOK'a czy innej książki. Chciałbym natomiast przypomnieć, że także w projektach wysoce innowacyjnych, realizowanych przy użyciu technik agile projekt zanim zaczniemy robić wypadałoby zainicjować. Być może, faza inicjacji jest w tych projektach jeszcze ważniejsza niż w projektach tradycyjnych, w których z założenia występuje mniej zmienności/niepewności.

Jim Highsmith w swoim klasyku nazwał pierwszą fazę projektu "Envision" czyli stwórz wizję tego, co chcesz dokonać. Cytując innego klasyka "zaczynaj z wizją końca". Im projekt bardziej innowacyjny i obarczony większą niepewnością tym tworzenie wizji tego, co ma być efektem projektu jest ważniejsze. Jeżeli tego nie zrobimy nie będziemy w stanie określić czy projekt jest prowadzony we właściwym kierunku ani czy odsniósł sukces czy nie. Po zestaw narzędzi do tworzenia wizji zapraszam do wspomnianej książki Hiugsmitha - w szczególności polecam "zdanie w windzie" oraz "pudełko produktu".

Nie zapominając o innych elementach, które powinny powstać w fazie inicjacji projektu, warto podkreślić, że wizja tego, co robimy jest elementem, który musi być znany całemu zespołowi wykonawczemu. Jest to szczególnie ważne w przypadku projektów informatycznych. Podczas realizacji takiego projektu wszyscy w niego zaangażowani wykonują de facto twórczą pracę podejmując dziesiątki decyzji dziennie. Dotyczących technologii, projektu interfejsu, projektu technicznego, wykorzystania wzorców, itp. Podejmowanie tych decyzji jest sporo łatwiejsze jeżeli wiadomo jaki ma być efekt końcowy. Efekt określony nie tylko poprzez funkcję, która jest do zrealizowania, ale także szerszą wizję tego, co chcemy osiągnąć. I po co. Jasne określenie celów, które przyświecają projektowi pomaga stworzyć efekt realizujący te cele. Jeżeli bowiem nie zostaną one zespołowi przekazane to prawdopodobieństwo ich zrealizowania jest dużo mniejsze. I właśnie z tego powodu w projektach agile przekazywana zespołowi wizja projektu powinna zawierać oprócz informacji o samym produkcie możliwie dokładne informacje o celach, które ten produkt ma realizować, klientach dla których jest przeznaczony oraz efekcie, który ma się pojawić po jego wdrożeniu. Im więcej informacji tym większe prawdopodobieństwo, że setki decyzji podejmowanych w trakcie realizacji projektu będą budowały jego sukces.

Dodatkowo pełna wizja projektu, łącznie ze spodziewanym sukcesem na każdej płaszczyźnie pomaga od strony motywacyjnej. Każdy woli pracować nad czymś ważnym i dużym zamiast nad kolejnym "ficzerem". Znowu cytując klasyka lepiej jest budować katedrę niż tłuc kamienie.

Na koniec jeszcze raz podkreślę: wizja to nie wszytko! Zachęcam do poczytania/zastanowienia się co jeszcze jest niezbędne do zrobienia na początku projektu, aby najbardziej jak to możliwe uprawdopodobnić sukces projektu.