Dzisiejszy Podcast zostanie poświęcony tematyce związanej z etapami wdrożenia oraz metodykami projektu. Zachęcam serdecznie do wysłuchania poprzednich podcastów dotyczących branży IT oraz odwiedzenia naszej strony www.szolajski.com, tam w zakładce blog umieszczone są inne artykuły.

Szczególnie zachęcam do zapoznania się z artykułem o różnicach między metodykami agile a waterfall. Zwracam się również z prośbą o pozostawienie komentarza oraz ocenienia go na Apple podcast oraz w Spotify. Pozwoli to nam dotrzeć do szerszego grona zainteresowanych tematyką IT.

Umowa wdrożeniowa jest to umowa, na podstawie której wykonawca dokonuje wdrożenia określonego systemu w środowisku informatycznym zamawiającego. Wielokrotnie powtarzam, że do sukcesu związanego z finalizowaniem projektu należy się odpowiednio przygotować już na etapie sporządzania takiej umowy

Na tym polega między innymi określenie etapów wdrożenia wraz z harmonogramem. Dokładnie w tym miejscu w zależności od konkretnego przypadku należy przedstawić plan kolejnych części prac nad wdrożeniem. Trzeba w sposób szczegółowy lub bardziej ramowy ustalić poszczególne etapy: etap projektowania, etap produkcyjny, etap testowania, etap wdrożenia, etap odbioru.

Metodyki pracy

Wszystko zależy od konkretnego przypadku i stosowanej metodyki pracy (watefall / agile).

Model Agile

Metodologia zwinna to praktyka wspierająca ciągłe powtarzanie rozwoju i testowania w procesie tworzenia oprogramowania.
W tym modelu w przeciwieństwie do modelu waterfall, jednocześnie prowadzi się działania deweloperskie i testowe. Ten proces automatycznie prowadzi do lepszej komunikacji między klientami, programistami, testerami.

W przypadku metodyki agile prace dzieli się na najczęściej na krótsze sprinty w ramach danych etapów. Ta metoda charakteryzuje się częstym testowaniem i poprawianiem efektu poszczególnych sprintów, co powoduje zmniejszenie tzw. długu technologicznego przy finalnym odbiorze.

Agile postępuje zgodnie z liniowym podejściem sekwencyjnym i jednocześnie zapewnia elastyczność, gdy wymagania zmieniają się w trakcie realizacji projektu.

Przy realizacji zadań w projekcie w oparciu o metodykę agile wyróżnia się następujące po sobie etapy:

  • plan (planowanie)
  • design (projektowanie)
  • develop (programowanie)
  • test (testowanie)
  • release (wdrożenie systemu)
  • feedback (informacja zwrotna)

Powyższe etapy tworzą cykl powtarzany do czasu zakończenia danego zadania.

Warto zaznaczyć, że kolejne cykle mają służyć ewentualnemu skorygowaniu przygotowanego zadania na bazie informacji klienta lub elastycznemu wprowadzaniu ewentualnych zmian wymagań ze strony klienta jeżeli takie się pojawiły w formie informacji zwrotnej.

Zalety modelu agile

  • To skoncentrowany proces klienta. W ten sposób zapewnia się ciągłe zaangażowanie użytkownika na każdym etapie.
  • Zwinne zespoły odznaczają się mocnym zmotywowaniem i samoorganizacją. Stąd prawdopodobieństwo lepszych rezultatów w projektach rozwojowych.
  • Metoda rozwoju oprogramowania agile zapewnia utrzymanie jakości rozwoju.
  • Proces jest całkowicie oparty na zaawansowanych spostrzeżeniach, co ma wpływ na zmniejszenie ryzyka w procesie rozwoju.

Wady metody agile

  • Nie jest przydatna dla małych projektów rozwojowych.
  • Koszty wdrożenia tej metody nie są niższe niż w przypadku innych metod rozwoju.
  • Projekt może nie dojść do skutku, jeśli właściciel produktu nie jest pewien, jakiego chce rezultatu.

Metoda waterfall

Metoda kaskadowa to sprawdzony model sekwencyjny, w którym dzielimy rozwój oprogramowania na szereg predefiniowanych etapów.

Fazy te dotyczą określenia wykonalności projektu, planowania, projektu funkcjonalnego i technicznego, programowania, budowy systemu, testowania oprogramowania, korzystania z systemu i utrzymania wsparcia systemu.

Model wodospadu działa w ustalonej kolejności, a zespół projektowy nie przechodzi do następnego etapu rozwoju dopóki poprzedni krok nie zostanie pomyślnie zakończony.

Zalety metody waterfall

  • Zapewne jest to jeden z najłatwiejszych w zarządzaniu modeli. Charakteryzuje się szybką dostawą projektu, każda faza ma określony rezultat i proces oceny.
  • Zarówno proces opracowywania jak i wyniki są dobrze udokumentowane.
  • Sprawdza się w przypadku mniejszych projektów, w których wymagania są proste i łatwe do zrozumienia.
  • Zarządzanie projektami kaskadowymi wywodzi się z budownictwa i produkcji, czyli branż, w których jedna faza musi zostać zakończona przed rozpoczęciem kolejnej.
  • Nacisk na liniowe uzupełnianie ma kluczowe znaczenie dla przepływu pracy metodyką waterfall.
  • Ta metodyka wykorzystuje odrębne fazy zamiast jednoczesnej pracy. Podobnie nie można wrócić do wcześniejszej fazy. Każda wersja wymaga ponownego uruchomienia całego procesu.
  • Łatwo adoptowalna metoda dla różnych zespołów na fazę.
  • Ta metodologia zarządzania projektami jest przydatna do zarządzania zależnościami.

Wady metody kaskadowej

  • To nie jest idealny model dla dużych projektów.
  • To metoda mniej skuteczna w przypadku niejasnych wymagań.
  • Trudno jest dokonywać zmian w zamkniętych fazach.
  • Proces testowania rozpoczyna się zaraz po zakończeniu programowania. W związku z tym istnieje prawdopodobieństwo błędów, które się znajdą później w procesie opracowywania.

Trzeba też pamiętać przy wyborze metodyk zarządzania projektami, że kaskadowa metodyka oferuje mniejszą elastyczność niż metodyka agile.

Podsumowanie

Generalnie metodologia kaskadowa traci popularność dla rozwoju oprogramowania, natomiast metodologia zwinna jest coraz częściej stosowana do tworzenia oprogramowania przez firmy na całym świecie. Warto zapoznać się z tematyką dotyczącą etapów wdrożenia oraz stosowanych metodyk agile i waterfall.

Chociaż te metodologie różnią się znacząco od siebie, należy pamiętać, że każda metodologia zarządzania projektami ma ostatecznie ten sam cel tj. ułatwić sfinalizowanie projektu. W tym celu każda metodologia pomaga zarządzać procesami pracy w zespole poprzez strukturę i komunikację.

Kluczowym elementem każdej umowy wdrożeniowej powinno być opracowanie poszczególnych etapów wdrożeniowych oraz stosowanych metodyk.

Kancelaria Szołajski Legal Group aktywnie działa w branży IT na styku prawa i informatyki, wspierając przedsiębiorców na etapie indywidualnego przygotowania danej umowy. Nasz zespół tworzą zarówno adwokaci, radcowie prawni, jak i doradcy podatkowi.

Jeżeli jesteś zainteresowany i poszukujesz doświadczonego doradcy, który profesjonalnie zadba o Twoje interesy, serdecznie zapraszamy do współpracy.

Zachęcam do odwiedzenia naszej strony www.szolajski.com zakładka blog, tam znajdziesz artykuły poświęcone branży IT. Szczególnie zachęcam do zapoznania się z artykułem Różnice między metodyką agile a waterfall.

Na zakończenie pragnę podziękować za poświęceniu czasu na wysłuchanie podcastu i pozostawienie swojego komentarza, a także ocenienia go na Apple Podcast oraz w Spotify. Pozwoli to nam dotrzeć do szerszego grona zainteresowanych poszerzaniem wiedzy dotyczącej tematyki IT.

Autor artykułu

Marcin Szołajski

Radca prawny

Specjalista z zakresu Prawa zamówień publicznych, Prawa własności intelektualnej oraz z zakresu Sukcesji w firmach Rodzinnych. Doradza Wykonawcom składającym oferty w postępowaniu o udzielenie zamówienia publicznego oraz reprezentuje Wykonawców w postępowaniach przed Krajową Izbą Odwoławczą. Reprezentuje konsumentów w sporach sądowych z instytucjami finansowymi (Bankami) w zakresie udzielonych kredytów „frankowych” oraz sprzedaży obligacji GetBack. Wspiera Twórców i Nabywców praw autorskich w procesie prawidłowego przenoszenia praw do utworów i udzielania stosownych licencji. Przeprowadza skuteczne procedury Sukcesji w firmach Rodzinnych. Czytaj więcej

Prawo IT #18 Oznaczenie stron umowy wdrożeniowej – komparycja

Prawo IT #17 Rękojmia a gwarancja w Umowie Wdrożeniowej

Prawo IT #15 Proces zarządzania zmianą