Zanim przystąpimy do budowy systemu informatycznego, musimy precyzyjnie i jednoznacznie zdefiniować wymagania na ten system. Zajmuje się tym dziedzina inżynierii wymagań, na którą składają się takie czynności jak: gromadzenie wymagań, dokumentowanie wymagań i zrządzanie wymaganiami.
Nieodłącznym aspektem towarzyszącym analizie wymagań jest też szacowanie złożoności oprogramowania oraz kosztów jego budowy i wdrożenia.