Często się zdarza, że projekty wewnętrzne w firmie programistycznej borykają się z ciągłym niedoborem i dużą rotacją programistów oraz presją na częste (1-2 tyg.) dostarczanie nowych funkcjonalności przy dynamicznie zmieniających się wymaganiach. Rodzi to szereg wyzwań przy projektowaniu procesu developerskiego, tak aby był on możliwie prosty do opanowania przez ciągle zmieniający się zespół oraz pozwalał na szybkie i bezbłędne dostarczanie nowych funkcjonalności przez nowe osoby.