FASETE, Engenharia de Software II, 2008.1 Prof. César França
Engenharia de Software II
Paradigmas de Engenharia de Software
Prof. César França
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Engenharia
• Métodos• Ferramentas• Procedimentos
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Desenvolvimento Clássico(Cascata / Waterfall)
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Levantamento de Requisitos
• Análise de requisitos engloba todas as tarefas que lidam com investigação, definição e escopo de novos sistemas ou alterações. Análise de requisitos é uma parte importante do processo de projeto de sistemas, na qual o engenheiro de requisitos e o analista de negócio, juntamente comengenheiro de sistema ou desenvolvedor de software, identificam as necessidades ou requisitos de um cliente. Uma vez que os requisitos do sistema tenha sido identificados, os projetistas de sistemas estarão preparados para projetar a solução.
• Entrevistas com Stakeholder• Workshops• Lista de requisitos: estilo contrato formal• Objetivos Mensuráveis• Protótipos
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Análise de Requisitos
• Análise de Requisitos é o estudo das características que o sistema deverá ter para atender às necessidades e expectativas do cliente.
• É o Entendimento do Problema
• Cada funcionalidade demandada pelo cliente deve ser analisada para verificar os possíveis impactos no desenvolvimento das demais funcionalidades do sistema, e verificado em conjunto com a equipe de desenvolvimento se as necessidades tecnológicas para a sua implementação estão disponíveis
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Projeto
• É a parte da engenharia de software que se encarrega de transformar os resultados da Análise de Requerimentos em um documento ou conjunto de documentos capazes de serem interpretados diretamente pelo programador.
• Arquitetura de Software• Design Patterns (Padrões de Projeto)• Refatoração
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Implementação
• Corresponde à codificação, ou tradução dos requisitos para uma linguagem legível pelas máquinas.
• Se o projeto for executado detalhadamente, a codificação pode ser feita mecanicamente, e até mesmo automatizada.
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Testes
• O objetivo, por paradoxal que pareça, é encontrar defeitos nos produtos, para que estes possam ser corrigidos pela equipe de programadores, antes da entrega final.
• Testes Caixa-Branca ou Caixa-Preta• Testes Unitários, de Integração, de Aceitação, de Produção e de Regressão
Processo Simplificado• Descobrir a existência do bug • Isolar o código que causa o bug • Identificar a causa do bug • Determinar uma correção para o bug• Aplicar a correção e testar a correção
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Implantação
• Passagem do software para a produção.
• Liberação• Instalação• Ativação/Desativação
• Risco: Integração com Sistemas Legados!!!
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Desenvolvimento Clássico(Cascata / Waterfall)
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Custo da Mudança
Tempo
Custo
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Prototipação
• Processo que capacita o desenvolvedor a criar um modelo do software que será implementado.
• Storyboarding• Protótipo em papel• Mágico de Oz• Máquina de Cenários• Prototipagem Rápida• Prototipagem Evolutiva
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Prototipação
• Pontos Positivos– Requisitos adequados– Cliente visualiza a construção
• Pontos Negativos– Difícil manutenção– Baixo re-uso– Riscos de projeto– Cliente achar que o projeto está pronto!
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Modelo Iterativo
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Prototipação
• Pontos Positivos–Desenvolvimento evolutivo–Projeto componentizado
• Pontos Negativos–Custo da mudança–Refactoring
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Modelo Espiral
EngenhariaRequisitos
ImplementaçãoAvaliação
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Modelo Espiral
• Pontos Positivos– Desenvolvimento Evolutivo– Mudança planejada– Redução de Riscos
• Pontos Negativos – Difícil adoção dos clientes– Avaliação de Riscos delicada– Imprevisão de riscos grandes: mudança cara!
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Outros “Paradigmas”
• Linguagens de 4ª Geração• RAD – Rapid Application Development
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Qual o melhor?
• Desenvolvimento Tradicional• Prototipagem• Iterativo• Espiral• ...
DEPENDE!!!
FASETE, Engenharia de Software II, 2008.1 Prof. César França
Disponível em...http://es2.cesarfranca.com
Prof. César França
Top Related