paradigmas de engenharia de software

20
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

Upload: robson-silva-espig

Post on 06-Jun-2015

11.548 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Paradigmas De Engenharia De Software

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

Page 2: Paradigmas De Engenharia De Software

FASETE, Engenharia de Software II, 2008.1 Prof. César França

Engenharia

• Métodos• Ferramentas• Procedimentos

Page 3: Paradigmas De Engenharia De Software

FASETE, Engenharia de Software II, 2008.1 Prof. César França

Desenvolvimento Clássico(Cascata / Waterfall)

Page 4: Paradigmas De Engenharia De Software

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

Page 5: Paradigmas De Engenharia De Software

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

Page 6: Paradigmas De Engenharia De Software

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

Page 7: Paradigmas De Engenharia De Software

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.

Page 8: Paradigmas De Engenharia De Software

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

Page 9: Paradigmas De Engenharia De Software

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!!!

Page 10: Paradigmas De Engenharia De Software

FASETE, Engenharia de Software II, 2008.1 Prof. César França

Desenvolvimento Clássico(Cascata / Waterfall)

Page 11: Paradigmas De Engenharia De Software

FASETE, Engenharia de Software II, 2008.1 Prof. César França

Custo da Mudança

Tempo

Custo

Page 12: Paradigmas De Engenharia De Software

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

Page 13: Paradigmas De Engenharia De Software

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!

Page 14: Paradigmas De Engenharia De Software

FASETE, Engenharia de Software II, 2008.1 Prof. César França

Modelo Iterativo

Page 15: Paradigmas De Engenharia De Software

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

Page 16: Paradigmas De Engenharia De Software

FASETE, Engenharia de Software II, 2008.1 Prof. César França

Modelo Espiral

EngenhariaRequisitos

ImplementaçãoAvaliação

Page 17: Paradigmas De Engenharia De Software

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!

Page 18: Paradigmas De Engenharia De Software

FASETE, Engenharia de Software II, 2008.1 Prof. César França

Outros “Paradigmas”

• Linguagens de 4ª Geração• RAD – Rapid Application Development

Page 19: Paradigmas De Engenharia De Software

FASETE, Engenharia de Software II, 2008.1 Prof. César França

Qual o melhor?

• Desenvolvimento Tradicional• Prototipagem• Iterativo• Espiral• ...

DEPENDE!!!

Page 20: Paradigmas De Engenharia De Software

FASETE, Engenharia de Software II, 2008.1 Prof. César França

Disponível em...http://es2.cesarfranca.com

Prof. César França