Maraton czy sprint? Zwinne wdrożenia oprogramowania


Maraton czy sprint? Zwinne wdrożenia oprogramowania

W biznesie nie tylko technologie błyskawicznie się rozwijają. Dynamikę współczesnego świata widać szczególnie w branży informatycznej, gdzie niczym w soczewce skupiają się jednocześnie najnowsze trendy w technologii oraz zarządzaniu. To w segmencie IT dokonuje się rewolucja w zarządzaniu projektami, która porywa nie tylko dostawców rozwiązań IT, ale – chyba po raz pierwszy w historii informatyki – stawia realne potrzeby klientów w absolutnym centrum procesu tworzenia oprogramowania. Rewolucję tę przyniosły zwinne metodyki prowadzenia projektów informatycznych. Co sprawiło, że za ich przyczyną dokonał się prawdziwy przewrót na rynku oprogramowania dla firm?

Szybko i elastycznie

Metodyka zwinna (ang. Agile) to sposób realizacji projektów – głównie informatycznych. Często jest przeciwstawiana tradycyjnej metodyce kaskadowej czy prototypowej.

Jakie są zatem podstawowe cechy modelu zwinnego, stawiające go w opozycji do metod „tradycyjnych”?  Podstawowe zalety metodyki zwinnej można zamknąć w dwóch słowach: szybko i elastycznie.

Szybko – bo w porównaniu z innymi metodami zarządzania projektami, model zwinny pozwala na osiągnięcie w krótkim czasie mierzalnych, zauważalnych dla klientów efektów. W przypadku projektów informatycznych oznacza to po prostu, że pierwsze działające elementy systemów klienci dostają znacznie, znacznie szybciej niż w przypadku klasycznego zarządzania.

Elastycznie – bo podzielenie realizacji projektu na krótkie odcinki czasowe, umożliwia jego elastyczne korygowanie, reagowanie na uwagi klientów czy sprawne rozwiązywanie nowych problemów, pojawiających się w trakcie prac.

Sprint vs maraton czyli system idealnie skrojony

Elastyczność zarządzania zwinnego wynika z innej filozofii realizacji projektu. O ile w zarządzaniu tradycyjnym etapy realizacji są podzielone na długie odcinki czasowe (nawet kilkumiesięczne), w których wykonuje się szeroki zakres prac, to w metodyce zwinnej prace są podzielone na krótkie, około dwutygodniowe etapy nazywane sprintami. Celem każdego sprintu jest dostarczenie takiego fragmentu oprogramowania, aby osiągnąć konkretne efekty biznesowe.
Odmienną filozofię konstrukcji obu tych metod dobrze oddaje przykład krawca – w przypadku metod tradycyjnych jest to jeden pomiar na początku szycia ubrania, a następnie oczekiwanie na ostateczny ubiór. W metodyce zwinnej mielibyśmy do czynienia z częstymi przymiarkami, co z jednej strony pozwala na skrojenie ubrania idealnie według potrzeb, z drugiej zaś umożliwia dokonywanie poprawek praktycznie do samego końca.

Metodyka zwinna ma jeden główny cel: klient ma szybko otrzymać działający produkt. Oczywiście nie oznacza to, że produkt – czyli na przykład system informatyczny ERP – powstanie szybko w ostatecznej postaci. Kluczem metodyki zwinnej jest raczej podział czasowo-funkcjonalny projektu. W przeciwieństwie do klasycznych metod zarządzania projektami, w stylu zwinnym etapy cząstkowe są krótsze i nastawione na uzyskanie konkretnych, widocznych dla klienta efektów – mówiąc wprost, uruchamianie kolejnych, działających modułów i funkcji systemu.
Nie jest też żadną tajemnicą, że niektóre kwestie w realizacji projektu informatycznego pojawiają się dopiero w trakcie jego wykonywania, w przysłowiowym „praniu”. Klient może na przykład zdecydować o poszerzeniu czy zawężeniu zakresu prac, zmienić plany względem początkowych zamierzeń, objąć informatyzacją nowe procesy biznesowe. O ile w przypadku metodyki tradycyjnej zmiany takie poważnie naruszyłyby cały projekt (jeśli zupełnie go nie przekreśliły), to w metodyce zwinnej wprowadzenie ewentualnych zmian nie stwarza już tak poważnego ryzyka.

Klient oczekuje korzyści. I je otrzymuje

Paradoksalnie, inny jest też efekt prac w obu metodykach. W metodyce klasycznej celem działania zespołu jest zbudowanie dla klienta systemu o określonych cechach, funkcjonalnościach. Podejście takie zakłada, że klient jeszcze przed rozpoczęciem prac nad stworzeniem systemu w pełni wie, czego potrzebuje, jak ma wyglądać ostateczna wersja systemu, jakie funkcje ma on realizować. Jest to jednak założenie zwykle nieprawdziwe. Klient, inwestując w systemy informatyczne w istocie oczekuje konkretnych, określonych korzyści biznesowych, a nie stworzenia – nawet bardzo sprawnego i złożonego – systemu informatycznego. A na rozwiązywanie konkretnych problemów biznesowych nastawiona jest – z samej swojej definicji – metodyka zwinna. Bowiem już po pierwszych sprintach otrzymujemy rozwiązania, które możemy uruchomić i czerpać z nich korzyści.

Rozwód zanim się znienawidzimy

Zwinne metodyki zarządzania projektami również mają, bardzo istotną zaletę. Ważną zarówno z punktu finansowego – i dla wykonawcy, i dla klienta – jak i sprawności zarządzania, czy nawet wizerunku. Podzielenie projektu na krótkie, na bieżąco oceniane odcinki pozwala obu stronom oceniać szanse na pomyślną realizację. Przy większych wdrożeniach jest to zaleta wręcz niesłychana, klient bowiem ma gwarancję przerwania finansowania projektu informatycznego, gdy zauważy że nie spełnia on jego oczekiwań, a wykonawca nie musi angażować swojego wysiłku w prace, za które klient może nie zapłacić. Zwinny model prowadzenia projektów informatycznych sprawdza się idealnie w sytuacjach krytycznych, konfliktowych – pozwala bowiem stronom, przy relatywnie niskich stratach,  na szybkie wycofanie się z realizacji umowy, bez konieczności dochodzenia roszczeń np. na drodze sądowej. Klienci po prostu płacą za czas poświęcony na realizację projektu, co przy podziale go na krótkie etapy (wspomniane sprinty), znacznie zmniejsza koszty w przypadku rezygnacji (zaniechania dalszych prac).

Tabela 1 Porównanie metodyki zwinnej i tradycyjnej

Metodyka zwinna Metodyka tradycyjna
Rezultatem jest oprogramowanie, którego klient potrzebuje Rezultatem jest oprogramowanie opisane w dokumentacji projektowej
Projekt podzielony na krótkie etapy Projekt podzielony na długie etapy
Szybkie efekty Ostateczny efekt na koniec projektu
Stopniowe oddawanie funkcji Cały system wdrażany jednorazowo
Łatwe wprowadzanie korekt i zmian Wprowadzanie korekt utrudnione
Niższe koszty rezygnacji z projektu Wysokie koszty rezygnacji z projektu
Mniejsze ryzyko niepowodzenia Większe ryzyko niepowodzenia
Osiągnięcie określonych korzyści biznesowych Opracowanie systemu o zdefiniowanych cechach

Sente realizuje swoje projekty z sukcesami w metodyce zwinnej. Stosowanie takich metod zarządzania projektami zmniejsza koszty ich realizacji oraz umożliwia klientom szybkie odnoszenie korzyści biznesowych wynikających z wprowadzenia rozwiązań informatycznych.

Przypadek 1: szybki sukces

Projekt zwinny w firmie zajmującej się archiwizacją, składowaniem i zarządzaniem dokumentacją. Klient zarządzał archiwum fizycznym o powierzchni tysięcy metrów kwadratowych. Ze względu na specyfikę przechowywanych dokumentów, dostęp do archiwum podlega rygorystycznym procedurom bezpieczeństwa. Przed specjalistami z Sente postawiono zadanie opracowania systemu dla Centrum Zarządzania Dokumentami, uwzględniającego ogromne ilości przetwarzanej dokumentacji oraz koordynującego całość procesów archiwizacyjnych. Ważne przy tym było niezakłócone zachowanie ciągłości działania klienta.

Przyjęcie przez Sente metodyki zwinnej w trakcie realizacji tego projektu pozwoliło na bardzo szybkie uruchomienie podstawowych funkcji systemu. W ciągu zaledwie 12 tygodni specjaliści Sente opracowali i wdrożyli system zarządzania dokumentami oraz magazynem dokumentów. Co więcej, w czasie realizacji projektu klient mógł na bieżąco dokonywać korekt w systemie i jego procesach.

Efekt? Podwojenie mocy przerobowych klienta, skrócenie czasu szkolenia nowych pracowników, zwiększenie elastyczności działania pod kątem potrzeb nowych klientów. I oczywiście przewaga nad konkurencją.

Przypadek 2: związek po przejściach

Kolejny przypadek udanego zastosowanie zwinnej metodyki wdrożeniowej to implementacja u partnera o nieco dłuższej historii współpracy. Cóż, sprawne wdrożenie nie zawsze się udaje, o czym dobrze wiedzą firmy informatyczne i ich klienci. Przyczyn takiego stanu rzeczy może być wiele, niektóre z nich bywają obiektywne, inne wynikają z braku „chemii”. Analogicznie jak w realnych relacjach międzyludzkich.

Tak też było w przypadku klienta z branży artykułów dekoracji wnętrz oraz przetwórstwa przemysłowego. Pierwsze podejście do stworzenia systemu zarządzania produkcją nie spełniło oczekiwań klienta. Przyjęty tradycyjny model realizacji projektu wygenerował wyższe koszty niż się spodziewaliśmy, a nie przyniósł oczekiwanych efektów.

Drugie podejście do realizacji systemu zarządzania produkcją okazało się już skrajnie inne, a to za przyczyną przyjętej do jego wykonywania metodyki zwinnej. Przesunięcie punktu ciężkości na uzyskiwanie mniejszych, w krótszych odstępach czasu efektów biznesowych, diametralnie zmieniło przebieg wdrożenia. W efekcie nowy system wsparcia produkcji został opracowany w czasie kilku miesięcy, przy płynnej, zgodnej współpracy Sente i klienta. Realizacja tego projektu została podzielona na 1-2 tygodniowe sprinty, po zakończeniu każdego etapu strony uzgadniały zakres i kierunek dalszych prac. Dzięki temu klient otrzymał pierwsze działające elementy systemu już po kilku tygodniach.

Efekt? Krótki czas udanej realizacji wdrożenia, szybkie wdrożenie systemu, ale również sprawne planowanie produkcji i zarządzanie nią na każdym etapie. Co zyskał klient? Niższe koszty produkcji i zwiększenie jej wydajności, co poprawiło wskaźniki finansowe w przedsiębiorstwie. Zastosowanie metodyki zwinnej okazało się dla klienta na tyle satysfakcjonujące, że zdecydował się również na wprowadzenie kolejnych modułów aplikacji: zarządzania magazynem oraz kadrami tą samą metodyką.