A maior dificuldade na construção de um software é decidir precisamente o que construir. Em geral, nenhuma outra parte do trabalho conceitual é mais difícil quanto estabelecer detalhadamente os requisitos técnicos. Entre as 5 principais dificuldades relatadas na literatura da área de engenharia de requisitos não se inclui: