Engenharia de software é um conjunto de métodos e processos aplicados ao projeto, desenvolvimento, teste, manutenção e avaliação de software de computador.
Normalmente, cada etapa do processo precisa ser revisada muitas vezes antes de avançar para a próxima fase de desenvolvimento. Esta abordagem garante a confiabilidade e qualidade da solução de software.
Além de lidar com os aspectos práticos de escrever e testar código, a engenharia de software também aborda implicações legais e éticas e garante que o produto final atenda aos padrões profissionais.