O desenvolvimento de software é composto de diversas etapas importantes que demandam algumas habilidades do desenvolvedor. Dentre as principais habilidades necessárias, a modelagem assume um papel central para completar as etapas e atividades do processo de desenvolvimento que envolve compreensão e representação de aspectos do mundo real relevantes para o software. De forma geral, a modelagem vai: