Fundamentos e Desafios da Engenharia de Software
Classificado em Computação
Escrito em em
português com um tamanho de 3,03 KB
O objetivo da Engenharia de Software é produzir software sem falhas, no prazo e orçamentos previstos, e que atenda às necessidades do cliente. Ela ajuda no desenvolvimento de sistemas complexos dentro do prazo com alta qualidade.
O software não se “desgasta”, ele se deteriora. No começo da produção, é normal que a curva do software sofra muita alteração; o objetivo é que ela se achate.
Categorias de Software
- Software básico: É uma coleção de programas escritos para dar apoio a outros programas. Possui forte interação com o hardware do computador (ex: sistemas operacionais, BIOS).
- Software de tempo real: O software que executa em um computador e controla outras máquinas é um sistema embarcado de tempo real; um componente de controle.
- Software comercial: É a maior área particular de software. As aplicações dessa área facilitam as operações comerciais e as tomadas de decisões administrativas.
- Software científico e de engenharia: Tem sido caracterizado por algoritmos de processamento de números. As aplicações abrangem desde astronomia e análise de fadiga mecânica de automóveis até a biologia molecular e manufatura automatizada.
- Software embutido: É usado para controlar produtos e sistemas para os mercados industriais e de consumo.
- Software de computador pessoal: São os softwares para computadores pessoais, como processamento de textos, planilhas eletrônicas, computação gráfica, diversões e gerenciamento de dados.
- Software de inteligência artificial: Faz uso de algoritmos não numéricos para resolver problemas complexos que não sejam favoráveis à computação ou à análise direta.
Um modelo (ou protótipo) das exigências é convertido em um projeto. O projeto de software é convertido em uma forma de linguagem que especifica a estrutura de dados do software, utilizando linguagens de alto nível como Pascal, C, C++, C#, Java, etc.
A Crise do Software
O software precisa se adaptar a novas tecnologias. A chamada Crise do Software envolve a insatisfação frequente do usuário e a introdução de erros no processo devido a:
- Má especificação e mau projeto;
- Má implementação;
- Testes incompletos ou mal feitos;
- Problemas na comunicação homem-máquina.
Fatores de Impacto
Complexidade: Especificar sistemas é uma atividade bastante complexa. A insatisfação ocorre quando os usuários sentem-se frustrados; o usuário precisa de sistemas funcionando de acordo com suas necessidades.
Produtividade: Nas atividades, os custos, tempo e recursos geralmente são subestimados.
Manutenibilidade: Facilidade de se modificar um sistema para adaptar-se a circunstâncias novas, inexistentes à época da implantação.