Dodawanie nowych funkcji do systemu wydaje się być pozornie prostą sprawą. Pojawia się pomysł i trzeba wszystko zaprogramować tak, żeby to działało. W rzeczywistości jednak bardzo rzadko jest tak, że pojawia się zapotrzebowanie na nową funkcję i prace programistyczne mogą się rozpocząć od zaraz