• +48 22749 3436
  • Pon - Pt 9.00 - 17.00

Metodologia wdrożenia

Metodologia wdrożeń.

Poprawnie dobrana metoda budowy i uruchomienia aplikacji może wyeliminować niebezpieczeństwo porażki wdrożeniowej.

Image

Klient podejmuje ostateczną decyzję dotyczącą zakresu, trybu i formy wdrożenia po zapoznaniu się z końcowymi wnioskami z analizy biznesowej.

 

Wszyscy wiemy, że proces wdrożenia systemu klasy MRPII w firmie produkcyjnej jest złożony i może zakończyć się terminowo tylko wtedy, gdy wykonawca zapewni wsparcie doświadczonych konsultantów i będzie posługiwał się właściwa metodologią realizacji prac.

Zespół datainfo zawsze poprzedza realizację wdrożenia analizą biznesową, która pozwala nam zrozumieć zachodzące w firmie procesy, zdefiniować oczekiwane cele i wynikające z wdrożenia korzyści. Raport z analiza zawiera nie tylko opis organizacji, ale również opis wskaźników stanowiących późniejsze kryteria oceny wdrożenia. Ważnym elementem prac przygotowawczych jest również określenie ryzyka związanego z realizacją projektu.

Jaką stosujemy metodę wdrożeń? Zasadniczo jesteśmy elastyczni i dostosowujemy metodę do indywidualnych potrzeb Klienta. W praktyce, proces uruchomienia systemu najchętniej realizujemy wg metodyki "Scrum", która w połączeniu z wieloletnim doświadczeniem naszego zespołu pozwala na odpowiedzialne gwarantowanie sukcesu całego wdrożenia.
 

Scrum.

Spośród wszystkich metod agile, Scrum jest wyjątkowa, ponieważ iteracyjna natura tej metodologii, połączona z zarządzaniem priorytetami i koncepcją naszego oprogramowania, pozwala na wczesne uzyskanie istotnych i działających(!) elementów systemu. Metodyka ta wprowadza również ideę empirycznego procesu kontroli (przejrzystość, cykliczna weryfikacja, szybka eliminacja przeszkód), procesu niezmiernie istotnego z punktu widzenia chyba każdego zleceniodawcy.

Mówiąc najogólniej, w Scrum projekt wdrożenia podzielony jest na określone kadencje pracy nazywane sprintami (przebiegami), które trwają zazwyczaj dwa tygodnie. Na koniec każdego sprintu zainteresowane strony i członkowie zespołu spotykają się, aby ocenić postęp projektu oraz ustalić konkretny plan następnych działań -  Scrum z definicji pozwala uzyskać kontrolę nad kierunkiem i zakresem prac wdrożeniowych. Na końcu każdego przebiegu można zdecydować o kształcie systemu i kolejności prac uruchomieniowych poprzez np. dodanie lub modyfikację konkretnego komponentu funkcjonalnego.

Metoda ta sprawdza się zwłaszcza przy projektach, w których nie można opisać wszystkich założeń do systemu przed jego wdrożeniem, kiedy Klienci mają sprecyzowane oczekiwania jedynie do podstawowej funkcjonalności, ale nie do końca wiedzą, czego potrzebują w obszarach pomocniczych. Jeśli niezbędna jest zmiana wymagań w trakcie uruchamiania programu, to podejście Scrum jest naprawdę idealne. Metodyka ta pozwala również na łatwiejszą, bieżącą kontrolę projektu wdrożeniowego, a zwłaszcza umożliwia wcześniejsze wykrywanie problemów, które mogą się zdarzyć. 

Role.

W zespole scrum określa się trzy role: właściciel, szef scrum i członek zespołu.
Właściciel jest odpowiedzialny za zarządzanie priorytetami i decyzje dotyczące funkcjonalności systemu. Reprezentuje on interesy Klienta i użytkowników końcowych oprogramowania. Rolę tę otrzymuje często oddelegowany do prac wdrożeniowych przyszły, kluczowy użytkownik systemu.
Szef scrum jest odpowiedzialny za egzekwowanie zasad realizacji prac, filtrowanie informacji docierających do zespołu i usuwanie wszelkich przeszkód mogących zakłócić harmonogram prac. Rolę tę może pełnić np. kierownik projektu.
Członek zespołu natomiast wykonuje konkretne czynności związane bezpośrednio z przygotowaniem i uruchomieniem oprogramowania. Członkowie zespołu pełnią różne funkcje, są to programiści, wdrożeniowcy, inżynierowie systemów, itd. Zespół w Scrum jest, z definicji, zespołem samoorganizującym się. Członkowie zespołu sami decydują o postępach prac technicznych, nie mają przydzielonych formalnych tytułów, współpracują na równych zasadach. Każdy z nich może być zaangażowany w dowolne zadanie w zależności od potrzeb i ich wewnętrznych ustaleń. Przy standardowym projekcie wdrożeniowym datainfo dla średniej wielkości firmy, w zespole znajdują się najczęściej 3 osoby pracujące nad danym wdrożeniem w pełnym zakresie i 2-4 osoby specjalistycznego wsparcia.
  • Współpraca z klientem zamiast ciągłych negocjacji.
  • Reagowanie na zmiany zamiast ślepego podążania za planem.

Początek prac.

Zawsze właściciel określa początkową listę prac (każda pozycja z listy opisuje konkretną cechę systemu – ang. story). Jest to dla niego dużym wyzwaniem, ponieważ początkowe założenia zawsze mają wiele priorytetów dla poszczególnych prac - decyzja o tym, co ma wejść do sprintu i z jakim priorytetem to trudna i odpowiedzialna decyzja. Zespół i szef scrum oczywiście pomagają właścicielowi w określeniu priorytetów i oszacowaniu stopnia skomplikowania realizacji prac. Przed pierwszym oficjalnym sprintem zespół realizuje testowo jakieś zadanie w celu „dogrania” zasad pracy i współpracy, zwłaszcza od strony organizacyjnej i kompetencyjnej.

Sprinty.

Czas trwania sprintu (przebiegu) to najczęściej okres dwóch tygodni. Raz ustalony czas trwania każdego sprintu jest zazwyczaj taki sam. Na początku każdego sprintu jest organizowane jednodniowe (w zasadzie max. pół-dniowe) spotkanie planowania sprintu, podczas którego właściciel tworzy listę prac sprintu (zestaw prac do wykonania w bieżącej iteracji). Ta lista prac najwyższego priorytetu wybierana jest z wykazu wszystkich, wcześniej zaplanowanych  prac wdrożeniowych - w metodyce Scrum łączny wykaz prac zawsze zmienia się w czasie, ponieważ systematycznie dochodzą do niego nowe wymagania.

Po przedstawieniu listy prac sprintu, właściciel i zespół określają mierzalny cel sprintu, który jest najczęściej konkretną korzyścią funkcjonalną lub biznesową. W drugiej części spotkania zespół dzieli listę prac planowanego sprintu na zadania. Każde zadanie będzie miało określony, przyjęty przez zespół czas na jego realizację – zespół po weryfikacji zadań przyjmuje pracę i jest za nią odpowiedzialny. Zadania zazwyczaj dzielone są tak, aby czas wykonania każdego z nich nie przekraczał 2-3 dni. Metodyka Scrum narzuca duże rygory czasowe zadań i dzięki temu znacznie poprawia samoorganizację zespołu.

W trakcie realizacji sprintu zespół spotyka się codziennie rano o tej samej porze dnia na 30-40 minut. Na tych spotkaniach każdy członek zespołu odpowiada na pytania: Co robiłeś wczoraj? Co będziesz robić dzisiaj? Jakie widzisz przeszkody? Spotkanie jest krótkie, bez zbędnych dywagacji. Ewentualne problematyczne sprawy omawiane są po tym spotkaniu.
Jeśli podczas sprintu wystąpią niezmiernie istotne problemy i sprint zostaje przerwany, to szef scrum ma prawo zarządzić zakończenie przebiegu i ma obowiązek podjąć  działania w celu rozwiązania problemu. Następnie organizowany jest kolejny sprint z nowa listą prac i ewentualnie nowym celem.
Image

Na koniec każdego sprintu organizuje się spotkanie przeglądu (ang. sprint review meeting) - zespół przedstawia właścicielowi to, co osiągnięto w danym sprincie. Właściciel określa, czy cel został osiągnięty. Spotkania trwa średnio 3-4 godziny. W tym samym dniu odbywa się również drugie spotkanie retrospektywne (ang. sprint retrospective meeting) – zespół omawia z szefem scrum wykonane zadania w kontekście organizacyjnym i w odniesieniu do napotkanych problemów. Przy projektach opartych o jeden z gotowych szablonów wdrożeniowych (systemu Signa prekonfigurowanego pod specyfikę konkretnej branży), realizowanych dla średniej wielkości firmy produkcyjnej, główne prace uruchomieniowe realizowane się zazwyczaj podczas 6-8 sprintów.

Korzyści.

W praktyce metodyka Scrum ogromnie zmniejsza koszt przygotowania projektu, a w ramach przyjętego budżetu często uzyskuje się znacznie więcej, niż planowano. Częsty wgląd w widoczne efekty prac i możliwość weryfikacja realizacji ze strony Klienta daje duże poczucie kontroli. Możliwość dostosowania wymagań do zmieniających się warunków (w trakcie realizacji projektu) jest gwarancją koncentracji prac zespołu nad istotnymi elementami. W efekcie końcowym zawsze otrzymujemy dopasowane do potrzeb oprogramowanie.

Nasz Klient zawsze realnie uczestniczy w procesie szacowania i planowania prac.