Funkcjonalność Na Żądanie

Ściśle powiązane z inkrementalnym tworzeniem systemu. Funkcjonalność pojawia się wtedy kiedy jest potrzebna. Bazowy system działa od początku.

Kiedy użytkownik przychodzi z oczekiwaniami nowej funkcjonalności Szacujemy następujące wskaźniki dla wymagania:

  • Złożoność realizacji (może być w osobogodzinach).
  • Ilość beneficjentów - ile osób skorzysta z nowej funkcjonalności.
  • Pilność - czy brak realizacji funkcjonalności spowoduje utratę danych (charakter operacyjny), czy funkcjonalność ma charakter analityczny (może poczekać np. tydzień).
  • Spójność z istniejącym systemem - czasami dostajemy wymagania, które pasują do aktualnej implementacji jak "pięść do nosa". Wtedy należy negocjować z użytkownikiem inne rozwiązanie.
  • Widoczność - Czy bez realizacji może zostać naruszona współpraca w podmiotami zewnętrznymi względem firmy. Jeśli cenimy kooperantów wskaźnik ten będzie miał wysoką wagę
Powyższe wskaźniki z odpowiednimi wagami budują nam priorytet, który pozwoli osadzić zadanie (wymaganie dla systemu) na liście zadań.

(...) Nie ma bowiem łatwych odpowiedzi. Nie istnieje nic takiego jak najlepsze rozwiązanie - zarówno jeśli chodzi o narzędzia, jak i języki czy systemy operacyjne. Są jedynie systemy, które mogą być bardziej odpowiednie w konkretnych okolicznościach.

I tu właśnie do gry wchodzi pragmatyzm. Nie należy przywiązywać się do żadnej określonej metody, ale mieć na tyle rozległą wiedzę i doświadczenie, by w danej sytuacji wybrać dobre rozwiązanie. (...)

Andrew Hunt, David Thomas "Pragmatyczny Programista"