Od estymacji do wdrożenia: miejsce i rola wymiarowania w cyklu życia projektu

Określenie rozmiaru projektu przed rozpoczęciem jego realizacji bywa wyzwaniem. Początkowe założenia zazwyczaj ulegają zmianom na późniejszych etapach, a możliwość precyzyjnej oceny zakresu zmian jest konieczna dla przedstawienia adekwatnej wyceny i zachowania rentowności. Z pomocą przychodzi wymiarowanie oprogramowania. Co to jest, kiedy warto je stosować i w której fazie cyklu życia projektu przynosi największe korzyści?

Wymiarowanie oprogramowania - na czym polega?

Wymiarowanie to proces określania rozmiaru oprogramowania. Jest to najbardziej obiektywna metoda oceny wielkości projektu. Polega ona na określeniu wagi poszczególnych funkcjonalności na podstawie dostarczonych wymagań i dokumentacji, a następnie przypisaniu im wartości liczbowych zwanych punktami funkcyjnymi. Dzięki temu możliwe jest precyzyjne określenie rozmiaru oprogramowania i wyrażenie go liczbą.

Taka informacja znacznie ułatwia podjęcie decyzji o realizacji projektu, przedstawienie wyceny oraz oszacowanie potrzebnych zasobów. Wymiarowanie pomaga także transparentnie rozliczyć projekt i określić dokładną różnicę między początkowymi założeniami a faktycznie zrealizowanymi funkcjonalnościami.

Z wymiarowania korzystają przede wszystkim organizacje poszukujące stałych dostawców oprogramowania, z którymi mogłyby rozliczać się w sposób przejrzysty, ustandaryzowany, a jednocześnie pozwalający na znaczną elastyczność. Coraz częściej jednak metoda ta znajduje zastosowanie także w mniejszych firmach, którym zależy na precyzyjnych wycenach i monitorowaniu projektów, niezależnie od ich skali.

Kiedy stosować wymiarowanie oprogramowania?

Wymiarowanie oprogramowania przeprowadza się na różnych etapach, w zależności od celu i potrzeb. Możemy wyróżnić trzy główne scenariusze:

Scenariusz 1: Wymiarowanie w fazie decyzyjnej

Wymiarowanie na starcie projektu pozwala określić wielkość projektu celem oceny jego opłacalności i wstępnego oszacowania potrzebnych zasobów.

Jest to najmniej dokładne wymiarowanie, gdyż często bazuje jedynie na pomyśle i wstępnych założeniach, które na dalszych etapach realizacji zazwyczaj są rozwijane. Pozwala ono jednak przynajmniej szacunkowo ocenić rozmiar projektu, żeby wyodrębnić jego etapy, sporządzić zakres kontraktu i harmonogramu, rys budżetu i potrzebnych zasobów, a przede wszystkim podjąć decyzję o jego przyjęciu do realizacji lub odrzuceniu. Przeprowadzenie wymiarowania na początku daje także punkt odniesienia do późniejszej rewizji wyceny, gdy zakres projektu faktycznie zostanie zmodyfikowany.

Korzyści z wymiarowania w fazie decyzyjnej

  • Uzyskanie wstępnych szacunków niezbędnych do podjęcia decyzji o realizacji lub odrzuceniu projektu;
  • Wstępne określenie rozmiaru projektu, zasobów, harmonogramu i budżetu;
  • Przedstawienie klientowi wyceny w sposób zrozumiały i transparentny;
  • Możliwość uwzględnienia obiektywnych i precyzyjnych założeń w kontrakcie;
  • Uzyskanie punktu odniesienia do późniejszej rewizji wyceny w przypadku zmiany założeń;
  • Ułatwienie wyboru projektów do realizacji i podejmowanie bardziej trafnych decyzji biznesowych.

Scenariusz 2: Wymiarowanie w fazie realizacji

Druga faza wymiarowania rozpoczyna się już po starcie projektu i trwa przez cały jego okres realizacji. Jest to faza planowania i monitorowania, której celem nie jest już ocena zasadności podjęcia projektu, lecz skoncentrowanie się na dostarczeniu założonych rezultatów. Wymiarowanie na tym etapie pozwala określić, czy projekt realizowany jest zgodnie z założeniami, czy też pojawiają się odstępstwa wymagające korekt w procesie. Jest ono też już znacznie dokładniejsze, gdyż opiera się na realnie wdrażanych funkcjonalnościach i wiążących decyzjach.

Choć wymiarowanie w tej fazie przynosi wiele korzyści, w rzeczywistości często jest pomijane. Wynika to z tego, że wymaga ono systematyczności. Jednocześnie potrzeba i motywacja do jego przeprowadzania są znacznie niższe niż na początkowym etapie, gdy opracowanie podstawowych założeń i podjęcie decyzji o realizacji są po prostu koniecznością. Prowadzenie wymiarowania w tej fazie pozwala jednak na uzyskanie większej kontroli nad projektem, poprawę rentowności, usprawnienie zarządzania projektem i dokumentowania jego efektów.

Korzyści z wymiarowania w fazie realizacji

  • Rzetelne monitorowanie projektu na każdym etapie realizacji;
  • Precyzyjne określenie zakresu zmieniających się wymagań;
  • Bieżąca optymalizacja kosztów i rewizja budżetu na bazie konkretnych danych;
  • Większa kontrola nad zasobami i ich optymalna alokacja;
  • Usprawnienie procesu realizacji poprzez precyzyjne planowanie prac w czasie i rozkładanie jej pomiędzy zespoły;
  • Możliwość dostosowania prac do kolejnych etapów budżetowania;
  • Wczesne wykrywanie przeszkód w realizacji i natychmiastowe reagowanie na opóźnienia w harmonogramie;
  • Transparentna informacja dla klienta dotycząca etapu realizacji projektu;
  • Poprawa komunikacji w projekcie;
  • Zachowanie znacznej przejrzystości rozliczeń;
  • Poprawa rentowności realizowanych projektów;
  • Poprawa jakości dokumentacji;
  • Wsparcie realizacji podejścia Agile zakładającego elastyczność i bieżące planowanie prac w sprintach.

Scenariusz 3: Wymiarowanie w fazie rozliczenia

Ostatnim etapem, w którym stosuje się wymiarowanie projektu jest faza jego zakończenia i rozliczenia. Podsumowanie wykonanych prac pozwala określić ostateczny rozmiar wdrożonych funkcjonalności, a tym samym przedstawić transparentną wycenę końcową (tzw. wymiarowanie rozliczeniowe). Dzięki punktom funkcyjnym możliwe jest obiektywne porównanie założeń wykonanych w fazie decyzyjnej z ostateczną wersją oprogramowania, a następnie rozliczyć się za dodatkowe elementy.

Korzyści z wymiarowania w fazie rozliczenia

  • Dokładnie określenie rozmiaru ostatecznej wersji oprogramowania;
  • Precyzyjne porównanie początkowych założeń z końcowym rozmiarem projektu oraz określenie zakresu zmian;
  • Przejrzystość i transparentność końcowego rozliczenia;
  • Możliwość analizy danych historycznych, porównywania ze sobą projektów i dokonywania bardziej adekwatnych wycen w przyszłości.

Podsumowując, największe korzyści niesie wymiarowanie przeprowadzane na każdym z etapów przez cały cykl wytwarzania oprogramowania, gdyż pozwala to uzyskać pełen obraz wykonanych prac oraz precyzyjnie się rozliczyć.

Jak wymiarować oprogramowanie?

Wymiarowanie oprogramowania, zwłaszcza w fazie realizacji, bywa czasochłonne i wymaga udziału doświadczonego analityka, który rozumie wymagania projektu i jest w stanie dokonać trafnej analizy jego elementów. Można jednak je znacznie ułatwić dzięki poniższym praktykom:

Prowadzenie dokumentacji projektu

Rzetelne prowadzenie rejestru wymagań i dokumentacji projektu to pierwszy i niezbędny element wymiarowania. Wymiarowanie opiera się właśnie na ocenie dokumentacji - im bardziej skrupulatnie jest ona prowadzona, tym dokładniejsze będą efekty wymiarowania. Istotne jest, by dokumentację prowadzić i aktualizować na bieżąco. Jest to szczególnie ważne w przypadku wymiarowania w fazie realizacji, gdzie ocena zakresu jest dokonywana na bieżąco.

Automatyzacja

Korzystanie z narzędzi do wymiarowania opartych na sztucznej inteligencji pozwala na częściowe zautomatyzowanie procesu. Takie rozwiązanie ma jednak wady, a największą z nich jest utrata pełnej kontroli. Ponieważ algorytmy AI samodzielnie dokonują analizy zapisów kontraktu i przypisują im wartości w postaci punktów funkcyjnych, trudno jest prześledzić dokładny przebieg oceny. Obniża to transparentność wymiarowania i zmniejsza pole do weryfikacji założeń i negocjacji.

Oprogramowanie do wymiarowania

Wymiarowanie oprogramowania można prowadzić ręcznie, np. w Excelu. Istnieją już jednak narzędzia, które znacznie to upraszczają i przyspieszają, zwłaszcza w wymagającej fazie realizacji. Takie oprogramowanie wciąż wymaga pracy analityka, jednak umożliwia znacznie szybsze opisywanie dokumentacji oraz oznaczanie i ocenianie jej fragmentów.

Przykładowo, takim narzędziem jest 21prim. Pozwala ono na analizę dokumentacji i przypisywanie jej punktów funkcyjnych z poziomu jednej, intuicyjnej aplikacji.

Narzędzie zapewnia sprawne i zgodne z metodykami COSMIC oraz FPUG wymiarowanie, a dzięki możliwościom współdzielenia przestrzeni roboczej, udostępniania pomiarów oraz funkcji komentarzy wspiera efektywną komunikację między członkami zespołu, co nie tylko zwiększa przejrzystość procesu, ale także przyspiesza realizację projektu.

Wymiarowanie oprogramowania to proces, który niesie wiele korzyści: jest w stanie znacznie poprawić rentowność działalności, trafnie wybierać projekty do realizacji oraz zapewnić precyzję i transparentność końcowych rozliczeń. Warto więc zainwestować w narzędzia, które pomogą ten proces wdrożyć i maksymalnie zautomatyzować.