Dlaczego dokumentacja jest tak ważna?

Nie ulega wątpliwości, że aby wybudować dom potrzebujemy projektu architektonicznego. Na początku należy wszystko dokładnie zaprojektować i omówić, po czym rozpocząć budowę. Tak samo powinno wyglądać zarządzanie tworzeniem oprogramowania. Niestety dokładny projekt jest często pomijany, na korzyść szybkiego dostarczenia prototypu. Badania (Davis 1993, Lefingwell 1997) pokazują, że 40-60% nieporozumień podczas tworzenia oprogramowania powstaje na etapie zbierania wymagań od Klienta, a zostają wykryte dopiero podczas wdrożenia. W rezultacie stoworzone oprogramowanie jest rozbieżne z wcześniej przedstawionymi wymaganiami Klienta. Inne badania (McConnel 2003) pokazują zależność między momentem wykrycia nieporozumienia, a kosztem jego usunięcia:

  Moment wykrycia
Moment popełnienia Wymagania Architektura Implementacja Testy Wdrożenie
Wymagania 1 3 5-10 10 10-100
Architektura - 1 10 15 25-100
Wdrożenie - - 1 10 10-25


Jak widać, za wszelką cenę należy dążyć do usunięcia wszystkich nieporozumień na możliwie najwcześniejszym etapie. Odpowiedzialny Project Management może wpłynąć na opóźnienie tego procesu, co może w rezultacie podnieść koszt eliminowania błędów nawet 100-krotnie! Oczywiście, zawsze powoduje to także przekroczenie terminu wykonania.