Etica engenharia de softwares
* legalidade
* impessoalidade
* moralidade
* igualdade
* prevelância do interesse público
* honestidade
* imparcialidade
* dignidade e respeito
* lealdade
* eficiência
* transparência
* cooperação mutua
* assiduidade e pontualidade
* satisfação do cliente
* segurança
* melhoria continua
* iniciativa
Um desenvolvimento de software organizado tem como premissa uma metodologia de trabalho. Esta deve ter como base conceitos que visem à construção de um produto de software de forma eficaz. Dentro desta metodologia estão definidos os passos necessários para chegar ao produto final esperado.
* Análise Econômica
Visa a estabelecer se o projeto de Software gerará lucro, e se a receita gerada será o suficiente para cobrir os custos. Este processo acompanha todas as demais etapas de desenvolvimento do Software.
* Análise de requisitos de software
A extração dos requisitos de um desejado produto de software é a primeira tarefa na sua criação. Embora o cliente, provavelmente, acredite saber o que o software deva fazer, esta tarefa requer habilidade e experiência em engenharia de software para reconhecer a incompletude, ambigüidade ou contradição nos requisitos.
* Especificação
A especificação é a tarefa de descrever precisamente o software que será escrito, preferencialmente de uma forma matematicamente rigorosa. Na prática, somente especificações mais bem sucedidas foram escritas para aplicações bem compreendidas e afinadas que já estavam bem desenvolvidas, embora sistemas de software de missão crítica sejam freqüentemente bem especificados antes do desenvolvimento da aplicação. Especificações são mais importantes para interfaces externas que devem permanecer estáveis.
* Arquitetura de Software
A arquitetura de um sistema de software remete a uma representação abstrata daquele