Design de software é o processo de implementação de soluções de software para um ou mais conjuntos de problemas. Uma das partes importantes do design de software é a análise de requisitos de software (SRA). É uma parte do processo de desenvolvimento de software que lista as especificações usadas na engenharia de software.