Minimum Viable Product - okładka

Czym jest Minimum Viable Product?

Opublikowano Kategorie PrzemyśleniaCzas czytania 6min

W dosłownym tłumaczeniu Minimum Viable Product to Minimalny Możliwy Produkt, czyli produkt posiadający tylko podstawowe funkcjonalności, spełniające cel i założenia produktu umożliwiające korzystanie z niego. Koncepcja MVP według Wikipedii została opracowana w roku 2001 przez Franka Robinsona.

Rozwijanie produktów według koncepcji MVP ma kilka bardzo ważnych zalet. Największą z nich jest krótki czas wymagany na wydanie produktu. Facebook, Google, czy każdy inny serwis, nawet blog, którego właśnie czytasz, nie wyglądał tak w chwili startu. Te produkty na początku wyglądały zupełnie inaczej. Dopiero po wydaniu MVP produkty te ewoluowały, dostawały nowe funkcjonalności, usprawnienia, zostały łatane błędy. Inną z zalet są często niewielkie nakłady finansowe, jakie musimy ponieść, aby nasz produkt spełniał założenia minimalne.

Dla przykładu, jeśli naszym finalnym produktem miałby być Facebookowy Messenger, to MVP dla niego to możliwość wysyłania i odbierania wiadomości. Wszystkie usprawnienia, gify, wideorozmowy, emoji, gry itp. byłyby tylko kolejnymi etapami w tworzeniu aplikacji.

Zastosowanie w pracy programisty

Programiści to jedna z grup zawodowych, która bardzo często wykorzystuje strategię rozwoju Minimum Viable Product w procesie tworzenia kodu. Często pierwsza działająca wersja naszej aplikacji ma błędy, jest nieoptymalna, w niczym nieprzypominająca finalnego produktu. Dla przykładu MVP jest jednym z podstawowych założeń Test Driven Development, które składa się z 3 etapów: red, green i refactor, gdzie faza green jest właśnie MVP. To dopiero faza refactor sprawia, że aplikacja spełnia wymagania końcowe i normy dotyczące jakości kodu.

Jak nie stosować Minimum Viable Product?

W tej i dalszej części artykułu będę korzystał z przykładu pojazdu mechanicznego jako rozwijanego produktu. Będę stosował liczne uproszczenia, są to tylko teoretyczne rozważania, które mają za zadanie przedstawić i zobrazować omawiane zagadnienie.

Co jest najważniejsze w pojeździe? To, aby jeździł. Po tym krótkim, lecz treściwym wyjaśnieniu można dojść do wniosku, że piękny, luksusowy samochód, lecz bez silnika nie spełnia założeń MVP, ponieważ jest pojazdem mechanicznym, ale nie jeździ!

Minimum Viable Product - warsztat

Nawet najbrzydsze, pordzewiałe, najmniej funkcjonalne auto, bez świateł, kierunkowskazów, a nawet drzwi czy szyb spełnia takie założenia. Oczywiście tylko teoretycznie, gdyż w praktyce nikt nie dopuści takiego pojazdu do ruchu.

Zatem jak stosować Minimum Viable Product?

Przed rozpoczęciem pracy należy wyznaczyć, co rozumiemy przez minimalny działający produkt. Należy zidentyfikować główne funkcjonalności, które produkt ma pełnić. Jak już wspomniałem, MVP dla pojazdu jest możliwość przemieszczania się.

Co potrzeba, aby stworzyć coś, co jeździ? Konieczne będzie koło a najlepiej kilka kół. Na sam początek nie potrzeba nawet silnika, przecież możemy się odpychać nogami. Takim najprostszym dla naszego przykładu MVP może być deskorolka albo rolki.

 

Minimum Viable Product - deskorolka

 

I już mamy MVP, czyli produkt, który ma jeździć. Niestety jest to produkt bardzo ubogi, niedoskonały, ale spełnia podstawowe założenia! Usprawnijmy go.

Deskorolce przydałaby się możliwość sterowania. Oczywiście można nią sterować poprzez ruchy ciała, ale dla wygody użytkownika można dodać jakiś układ kierowniczy. W ten sposób nasza deskorolka może stać się hulajnogą! Dalej jeździ, ale możemy nią skręcać w prostykomfortowy sposób! Na tym etapie możemy też dodać na przykład hamulce.

 

Minimum Viable Product - hulajnoga

 

Obecnie pojazd jeździ i skręca, lecz jego prędkość nie jest powalająca. Sam sposób napędzania również pozostawia wiele do życzenia. Ponadto jest w stanie pokonać go krawężnik czy kałuża.

Zmodyfikujmy pojazd i dodajmy mu jakiś napęd, usprawnijmy konstrukcję, sprawmy, aby nasz pojazd zyskał większą funkcjonalność. Takim produktem kolejnego etapu może być rower. Dzięki temu nasza wygoda oraz prędkość poruszania się wzrosła kilkukrotnie.

 

Minimum Viable Product - rower

 

Kolejny krok za nami, a kilka jeszcze przed nami. Pojazd jeździ dość szybko, skręca, jest całkiem wygodny, ale wciąż może być lepiej. W dalszym ciągu do poruszania się wykorzystywana jest siła mięśni, przez co użytkownik się męczy. Dodajmy silnik, a w konsekwencji rower stanie się motocyklem. Do tego dodajmy światła, obudowę i lusterka. Warto też zamontować kierunkowskazy, aby nie stanowić zagrożenia na drodze.

 

Minimum Viable Product - motocykl

 

Pojazd umożliwia już poruszanie się w komfortowy, niemęczący sposób. Niestety produkt nadal ma wady. Nie możemy zabrać zbyt wiele bagażu, w trakcie deszczu można zmoknąć, a wypadek może się skończyć tragicznie. Zmodyfikujmy nieco pojazd. Dodajmy lepszy silnik, fotele, opakujmy to jakimś pudełkiem i tym oto sposobem mamy samochód. Pojazd właśnie stał się szybszy, bezpieczniejszy oraz bardziej pojemny.

 

Minimum Viable Product - samochód garbus

 

Jesteśmy już prawie na mecie. Pozostało dodanie kilku dodatków umilających nam podróż, na przykład radia, klimatyzacji, czy poprawa estetyki naszego produktu. W przypadku samochodu może to być zmiana karoserii, felg, foteli itd.. Teraz jest też miejsce na wszelkiego rodzaju luksusowe dodatki. W ten sposób otrzymujemy nasz produkt finalny.

 

Minimum Viable Product - Porsche

Gotowe!

Finalny produkt w niczym nie przypomina MVP. Zaczynaliśmy od deskorolki za kilka złotych, a skończyliśmy na pojeździe za kilkaset tysięcy złotych. Jednak zarówno deskorolka, jak i luksusowe auto spełnia minimalne założenia — jeździ!

Oczywiście cały przytoczony tok myślowy jest wyłącznie wielkim skrótem myślowym i przykładem mającym zobrazować całą ideę Minimum Viable Product, jak również korzyści płynące z tego podejścia.

Sam podczas pracy nad swoimi projektami korzystam z tego podejścia. Podejście MVP ułatwia korzystanie z niektórych strategii marketingowych. Pierwszą z nich jest możliwość testowania produktu na prawdziwych użytkownikach. Oczywiście produkt powinien być wcześniej przetestowany, tak, aby użytkownik nie zraził się do niego. Jednakże zawsze wyjdzie jakiś przypadek testowy, na jaki nie wpadniemy, a jaki zdarzy się w trakcie korzystania z produktu przez klienta. Warto wykorzystać feedback od odbiorców i nanieść konieczne poprawki i usprawnienia na wczesnej fazie rozwoju produktu.

Drugą z nich jest możliwość popularnego w obecnych czasach crowdfundingu i sprzedaży preorderów. Istnieje wiele stron umożliwiających takie zbiórki takie jak Kickstarter, Indiegogo, czy też nasze rodzime Polak Potrafi. Oczywiście takich stron jest znacznie więcej, do wyboru do koloru!

Podsumowując, stworzenie Minimum Viable Product często jest procesem szybszym i tańszym niż rozwój produktu od A do Z. Jednocześnie pozwala dostosowywać się do potrzeb klientów i reagować na zmiany.

Dominik Szczepaniak

Zawodowo Senior Software Engineer w CKSource. Prywatnie bloger, fan włoskiej kuchni, miłośnik jazdy na rowerze i treningu siłowego.

Inne wpisy, które mogą Cię zainteresować

Zapisz się na mailing i odbierz e-booka

Odbierz darmowy egzemplarz e-booka 106 Pytań Rekrutacyjnych Junior JavaScript Developer i realnie zwiększ swoje szanse na rozmowie rekrutacyjnej! Będziesz też otrzymywać wartościowe treści i powiadomienia o nowych wpisach na skrzynkę e-mail.

Subscribe
Notify of
guest

0 komentarzy
Most Voted
Newest Oldest
Inline Feedbacks
View all comments