Zawierając umowę wdrożeniową wykonawca zobowiązuje się do podjęcia szeregu czynności skutkujących dostarczeniem zamawiającemu oraz zwykle uruchomieniem oprogramowania o cechach i funkcjonalnościach uzgodnionych pomiędzy stronami. Wieloetapowość oraz złożoność całego procesu wdrożenia często prowadzi do powstawania wad w przygotowanym przez wykonawcę systemie (nazywanych również błędami). Błędy w działaniu oprogramowania identyfikowane są zwykle w ramach ostatniego etapu, a więc testów przed produkcyjnym uruchomieniem oprogramowania. Moment ten w praktyce często prowadzi do sporu pomiędzy zamawiającym a wykonawcą w zakresie charakteru wykrytych błędów i odpowiedzialności za nie.