Firmy informatyczne coraz częściej proponują swoim klientom wdrażanie oprogramowania z wykorzystaniem tzw. metodyk zwinnych - przede wszystkim Scruma. Reklamuje się go jako bardziej efektywny i korzystniejszy sposób implementacji rozwiązań informatycznych od podejścia tradycyjnego. Czy jest tak rzeczywiście? W dzisiejszym artykule omówię największe zalety Scruma oraz kilka zagrożeń, jakie za sobą niesie.

{flike}

 

Czym jest Scrum?

Scrum jest jedną z tzw. zwinnych metodyk realizacji projektów (zazwyczaj informatycznych, lecz nie tylko), zgodna z manifestem Agile (o którym więcej można przeczytać tutaj). W metodyce tej rozwój produktu odbywa się w ramach krótkich, następujących bezpośrednio po sobie etapów - tzw. sprintów bądź przyrostów, trwających zwykle (w zależności od ustaleń) od 1 tygodnia do 1 miesiąca. Efektem każdego ze sprintów jest nowa, udoskonalona względem poprzedniego etapu, działająca wersja produktu.

Jednym z podstawowych założeń Scruma jest intensywna, bieżąca współpraca klienta (beneficjenta projektu) z firmą wdrożeniową (twórcą produktu) - na każdym etapie realizacji projektu. To klient definiuje swoje potrzeby i kierunek rozwoju oprogramowania, weryfikując jego funkcjonalności po każdym oddanym sprincie i, w razie potrzeby, zmieniając założenia.

Realizacja projektu metodyką Scrum

Proces realizacji projektu z wykorzystaniem metodyki Scrum można w uproszczeniu przedstawić następująco:

  1. Analiza przedwdrożeniowa - wspólne omówienie kształtu przyszłego produktu, wyznaczenie celów wdrożenia, a także przybliżonego zakresu projektu.
  2. Określenie zakresu sprintu I - określenie przez klienta prac do wykonania w ramach sprintu I.
  3. Oszacowanie czasochłonności / kosztu prac w sprincie I - analiza zakresu sprintu I i jego wstępna wycena przez firmę wdrożeniową.
  4. Akceptacja oszacowania / modyfikacja zakresu sprintu I - akceptacja wstępnej wyceny przez klienta bądź zmiana zakresu prac w sprincie.
  5. Prace programistyczne / rozwój produktu (sprint) - właściwe prace nad rozwojem produktu.
  6. Odbiór sprintu I - przekazanie produktu do testów klientowi.
  7. Powtórzenie punktów 2 - 6 dla każdego z kolejnych sprintów.
  8. Zakończenie projektu

Zalety metodyki Scrum dla klienta

Wdrożenia oprogramowania w firmie metodyką zwinną niosą za sobą wiele korzyści dla klienta, o których może on tylko pomarzyć w przypadku realizacji projektu tradycyjnymi sposobami:

  • Możliwość bieżącego nanoszenia zmian w projekcie w czasie jego realizacji - zakres projektu jest otwarty przez cały okres jego realizacji. Klient może więc nanosić zmiany zarówno w obrębie istniejących, jak i przyszłych funkcjonalności.
  • Możliwość bieżącej regulacji zakresu projektu i zamknięcia go w dowolnym momencie - jeśli na skutek np. okrojonego budżetu projektu chcielibyśmy zrezygnować z realizacji części funkcjonalności, jest to jak najbardziej możliwe. To klient decyduje który sprint kończy dany projekt.
  • Bieżący monitoring i ocena powstającego produktu - po każdym sprincie klient otrzymuje nową wersję produktu, którą może przetestować i nanieść swoje korekty, możliwe do zrealizowania w kolejnym przyroście.
  • Formalności i biurokracja zmniejszone do minimum - dokumentacja projektowa nie jest niezbędna (wystarczą wymagania klienta i bieżący kontakt z nim), nie musimy więc ponosić kosztów jej wytworzenia.
  • Ponoszenie wydatków wyłącznie za wykonaną pracę - faktyczny czas realizacji zagadnień przez firmę wdrożeniową może się nieco różnić od szacowanego. Klient ponosi koszty rzeczywistego czasu realizacji - co działa oczywiście zarówno w przypadku szybszego, jak i bardziej czasochłonnego wykonania zadania.
  • Szybsza i skuteczniejsza realizacja projektu - dzięki bieżącym korektom kierunku rozwoju produktu, powstaje on szybciej i jest lepiej dopasowany do potrzeb klienta.

Wady i zagrożenia związane ze Scrumem

To co jest zaletą, czasami może okazać się również zagrożeniem. W Scrumie zagrożeniami dla zleceniodawcy mogą być przede wszystkim:

  • Brak wiedzy o dokładnym koszcie realizacji projektu - bazujemy na zarysie funkcjonalnym projektu i szacunkowym koszcie realizacji. Rzeczywisty koszt zależy od końcowych założeń i faktycznym czasie ich realizacji przez firmę wdrożeniową.
  • Ponoszenie wszelkich kosztów związanych z projektem - jeśli firmie wdrożeniowej z jakichś przyczyn nie uda się zrealizować zagadnienia w szacowanym czasie, rzeczywisty koszt stworzenia funkcjonalności rośnie - i my, jako klient musimy go pokryć. Oczywiście, tak jak sygnalizowałem wyżej, działa to w obie strony.
  • Ryzyko rozrastania się projektu - mając możliwość zmian i dokładania kolejnych funkcjonalności w trakcie realizacji projektu, bez należytej kontroli, możemy doprowadzić do jego niechcianego i kosztownego rozrastania się.
  • Ryzyko przekroczenia zakładanego budżetu - punkt będący konsekwencją powyższych. W przypadku niedostatecznej kontroli nad projektem, wymaganiami i jego budżetem, zakładany budżet szybko się wyczerpie, a produkt nie będzie realizował kluczowych funkcjonalności.

Kiedy wdrażać oprogramowanie metodyką zwinną?

Scrum to wspaniała metodyka realizacji projektu informatycznego, której zalety pozwalają na szybkie, skuteczne i stosunkowo tanie wdrożenie oprogramowania w przedsiębiorstwie. Jej zalety uwidaczniają się jednak wyłącznie wtedy, gdy:

  • w naszej firmie jesteśmy w stanie wyznaczyć koordynatora projektu, który pośredniczyłby w kontakcie między jej pracownikami, a firmą wdrożeniową, uczestniczyłby w ustalaniu założeń, odbierałby kolejne wydania produktu, podejmowałby decyzje oraz kontrolowałby budżet projektu;
  • zarówno przedsiębiorstwo - beneficjent projektu, jak i firma wdrożeniowa darzą się wzajemnym zaufaniem;
  • priorytetem nie jest sztywny budżet, a jakość tworzonego produktu;
  • przedmiot wdrożenia jest produktem niestandardowym, budowanym od podstaw bądź mocno dopasowywanym do potrzeb przedsiębiorstwa (w przypadku mniejszych projektów i standardowych wymagań, nie warto bawić się w Scruma).

Jeśli nie jesteśmy pewni co do któregokolwiek z powyższych założeń - nie wdrażajmy oprogramowania metodyką Scrum. Istnieje bowiem duże ryzyko, że jej zalety szybko zamienią się w wady - i zamiast pozytywnie wpłynąć na wdrożenie oprogramowania w naszej firmie, mocno je skomplikuje.

Przeczytaj również:


  • Brak komentarzy
Dodaj komentarz


Piotr Rawski
Informatyk i ekonomista z kilkunastoletnim doświadczeniem w rozwoju i wdrażaniu systemów IT dla biznesu.

Doradzam, optymalizuję procesy biznesowe i dobieram oprogramowanie do indywidualnych potrzeb. Wszystko po to, aby zwiększyć efektywność Twojej firmy. ⮕ kontakt i współpraca

Zapraszam również na mój nowy blog poświęcony zarządzaniu w IT:
⮕ piotrrawski.pl

Również na stronie:

  • Sprzedaż i marketing sobota, 15, luty 2014

    Zamówienia w restauracji można przyjmować na karteczkach, wartość zakupów w małym sklepie spożywczym obliczać na kalkulatorze, a dostępność oferowanego produktu sprawdzać osobiście po...

  • Systemy informatyczne dla firm czwartek, 05, czerwiec 2014

    Wybór systemu informatycznego dla firmy zdecydowanie nie jest prostą sprawą. Dostępnych rozwiązań na rynku jest całe multum, podobnie jak i oferujących je firm wdrożeniowych. Której z nich...

  • Systemy informatyczne dla firm czwartek, 27, październik 2016

    Systemy działające w tzw. chmurze (SaaS) pod względem wygody użytkowania i administracji znacznie przewyższają oprogramowanie instalowane na własnych serwerach. Mimo to, nie zawsze uważa się...