Afinal, o que é Engenharia de Software?
A Engenharia de Software é uma área da computação voltada à especificação, desenvolvimento e manutenção de sistemas de software, em relação a todos os aspectos da produção de software. É ela que irá dar os caminhos necessários para o engenheiro de sistemas trilhar, seguindo especificações vindas do cliente, e também as normas e bons costumes que a mesma emprega como modelos de sistemas.
Os fundamentos da Engenharia de Software envolvem o uso de modelos abstratos e precisos que permitem ao engenheiro especificar, projetar, implementar e manter o sistema de software, avaliando e dando garantia de sua qualidade.
Em resumo, a Engenharia de Software é uma matéria que serve de base para o começo da criação de um sistema, sendo este qualquer que seja, para qualquer tipo de cliente. Mais a frente veremos os exemplos de modelos de software e como cada um deles
ajuda na iniciação de um projeto de software.
Processo de Software e seus Modelos
Um processo de software é, basicamente, um conjunto de atividades cuja meta é o desenvolvimento ou evolução de software, ou seja, uma sequência coerente de práticas que objetiva o desenvolvimento ou evolução de sistemas de software. As atividades genéricas
que devem ser seguidas em todos os processos inicias de “fabricação” de um software são:
- Especificação: o que o sistema deve fazer e suas restrições de desenvolvimento.
- Desenvolvimento: produção do sistema de software.
- Validação: verificação de que o software é o que o cliente deseja.
- Evolução: mudança do software em resposta às demandas de mudança.
Já os modelos de processo de desenvolvimento de software, que são vistos como representações ou abstrações dos objetos e atividades envolvidas no processo de software, possuem os respectivos tipos:
- Sequencial ou Cascata: é o modelo que gerencia as fases de produção do software distintamente separadas (especificação dos requisitos, levantamento do projeto e desenvolvimento do sistema).
- Evolucional ou Prototipação: é o modelo específico que trabalha com a especificação de requisitos, levantamento do projeto e desenvolvimento do sistema baseado em protótipos do sistema.
...
Exibição do post interrompida. Para ler conteúdo completo,
clique aqui