Ciência da computação
04 Características de um Software: Manutenabilidade, Confiabilidade, Eficiência, Usabilidade.
04 Elementos de Engenharia de Software: Processo, Ferramenta, Método, Qualidade
Mitos: 1 Ferramentas potentes x máquinas velozes = Software moderno e pronto 2 Prazo curto x Software inacabado = Contratar mais programadores 3 Todos programadores são iguais 4 O programa/sistema está 95% pronto!
Verdade: 1 A equipe está treinada para usar as ferramentas? A equipe é competente? 2 Prazo curto: é melhor negociar o prazo do que contratar novos programadores, devido ao problema de ambientação que os novos terão para se adaptar. 3 Programadores tem habilidades diferentes 4 Programadores são otimistas/confiança excessiva
Crise do Software
Problemas na manutenção do software
Prazos e custos mal calculados
Baixa qualidade dos produtos
Pouca (ou nenhuma) documentação
Baixa adequação às necessidades do cliente
Definição de Engenharia de Software
“Uso de métodos, ferramentas e técnicas para criar, gerenciar e evoluir produtos de software”
Não é possível programar sem se “programar”
DISCIPLINAS BÁSICAS
REQUISITOS ν Levantar necessidades e enxergar oportunidades de melhorias ν Software tem que agregar valor, pois nem sempre vale a pena desenvolver software ν Quanto se vai ganhar ou economizar com o software e quanto vai custar? ν Que riscos de negócio um software minimiza?
ANÁLISE & PROJETO
Divisão do software em “pedaços lógicos” (módulos, subsistemas e componentes) ν Critério de divisão: por processos e regras de negócio inter-relacionadas ν Projeto de interface com usuário ν Telas, padrões, componentes visuais ν Projeto de integração com outros sistemas ν Formas de integração, tecnologias, etc.
Mapeamento dos riscos tecnológicos e de negócios ν Classificação ν Como resolvê-los