W tej części omówimy zarządzanie kosztami w środowisku Agile.
W środowisku Agile często dochodzi do zmian związanych z zakresem, co wiąże się z licznymi niepewnościami. W takim przypadku trudno jest określić szczegółowy budżet na początku projektu, jak robimy to w środowisku predykcyjnym. Dlatego zamiast tworzyć szczegółowy budżet na starcie, możemy zastosować uproszczone metody szacowania. Dzięki nim określamy ogólne koszty pracy na początku, a następnie dostosowujemy je wraz z postępem projektu. Szczegółowe kalkulacje kosztów wykonujemy na zasadzie „just-in-time”, co oznacza, że w środowisku Agile czasami konieczne będą szczegółowe obliczenia dla konkretnych zadań.
Jak już wspominaliśmy, w środowisku Agile czas i budżet są ustalone, natomiast zakres jest elastyczny. W projektach o wysokiej zmienności, ale z ograniczonym budżetem, możliwa jest adaptacja harmonogramu tak, aby zmieścić się w ścisłym budżecie. W takim przypadku to właśnie budżet jest niezmienny, a harmonogram i zakres można dostosować do wymogów finansowych projektu.
W zarządzaniu kosztami szacujemy koszty, a w zarządzaniu harmonogramem – czas trwania. Szacowania możemy podzielić na dwie kategorie:
Szacowanie deterministyczne – Polega na użyciu konkretnej wartości liczbowej, np. wyników uzyskanych za pomocą technik szacowania pojedynczego punktu lub trzech punktów, gdzie końcowym wynikiem są pojedyncze liczby, jak np. 6 czy 7 dni.
Szacowanie probabilistyczne – Szacowanie wyrażane z prawdopodobieństwem w zakresie, np. „mamy 90% prawdopodobieństwa, że ukończymy zadanie w ciągu 10 dni”. Wyniki uzyskane w symulacji Monte Carlo są tego przykładem.
Zarówno szacowanie deterministyczne, jak i probabilistyczne dostarczają wartości bezwzględnych, co oznacza, że można je uznać za absolutne. W środowiskach przewidywalnych większość szacowań jest tego rodzaju.
Szacowanie względne – Jeśli wynik jest porównywany z innymi wartościami, to mamy do czynienia z szacowaniem względnym. Na przykład w Agile nie szacujemy czasu realizacji historyjek w dniach, lecz używamy punktów historyjek, które wskazują na złożoność w stosunku do innych zadań. Używamy tych punktów historyjek do obliczenia prędkości i stosujemy wykresy wypalenia, aby oszacować pozostałe punkty.
Szacowanie na bazie iteracji i przepływu – W podejściu Agile opartym na przepływie korzystamy z czasu cyklu i przepustowości, aby przewidzieć przyszłe wyniki. Technika ta jest znana jako szacowanie oparte na przepływie.