Engenharia de software
É uma disciplina de engenharia cujo foco está em todos os aspectos da produção de software.
Ciência da Computação x Engenharia de software
Ciência da computação foca a teoria e os fundamentos; engenharia de software preocupa-se com o lado prático do desenvolvimento e entrega de software úteis.
Engenharia de Sistemas x Engenharia de software
Engenharia de sistemas se preocupa com todos os aspectos do desenvolvimento de sistemas computacionais, incluindo engenharia de hardware, software e processo.
Engenharia de software é uma parte mais específica desse processo mais genérico.
O que é um Processo?
Um processo é um conjunto de passos particularmente ordenados, construídos por atividades, métodos, práticas e transformações, usado para atingir uma meta. São definidos para atividades como desenvolvimento, manutenção, aquisição e contratação de software.
3 - Principais atributos de um bom software.
Manutenibilidade
O software deve ser escrito de forma que possa evoluir para atender às necessidades dos clientes. Esse é um atributo crítico, porque a mudança de software é um requisito inevitável de um ambiente de negócio em mudança.
Confiança e Proteção [...] Um software confiável não deve causar prejuízos físicos ou econômicos nos casos de falha de sistema. Usuários maliciosos não devem ser capazes de acessar ou prejudicar o sistema.
Eficiência
O software não deve desperdiçar os recursos do sistema, como memória e ciclos do processador. Portanto, eficiência inclui capacidade de resposta, tempo de processamento, uso de memória etc.
Aceitabilidade
O software deve ser aceitável para o tipo de usuário para o qual foi projetado. Isso significa que deve ser compreensível, usável e compatível com outros sistemas usados por ele.
4 - Modelos de ciclo de vida de processos de desenvolvimento de software
- Modelo Codifica-remenda.
Caótico.
- Normalmente não há processo formal definido.
- Os erros aparecem e são corrigidos.
-