Segundo Lobo (2008), a Engenharia
de Software é uma ciência que estuda metodologias e padrões de desenvolvimento
de softwares, onde define os métodos sistemáticos para o desenvolvimento de
software, buscando melhorar e amadurecer técnicas e ferramentas no ambiente de
desenvolvimento.
Já Pressman (2006) diz que a
Engenharia de Software é uma abordagem sistemática e disciplinada para o
desenvolvimento do software. A preocupação com todas as fases de produção do
software é sempre presente, desde o estágio inicial de desenvolvimento, como a
especificação do sistema, até a manutenção realizada logo após o software
entrar em funcionamento.
Sommerville (2003) afirma que a
Engenharia de Software é uma
disciplina da engenharia que
ocupa de todos os aspectos da produção de software, desde os estágios iniciais
da especificação do sistema até a
sua manutenção, depois que ele iniciou sua operação de funcionamento.
A principal diferença entre a Ciência da Computação e a Engenharia de Software é que a Ciência da Computação preocupa-se com métodos básicos ligados aos computadores e aos sistemas de software, já a Engenharia de Software preocupa-se com os problemas práticos do desenvolvimento do software. É fundamental para o engenheiro de software ter um conhecimento sobre Ciências da Computação.