Paradigmas
Paradigmas de Software
Objetivos
• Introdução aos paradigmas de software. • Descrição de modelos genéricos e sua aplicabilidade. • Descrição dos processos de requisitos, desenvolvimento, teste e evolução. • Modelo Rational Unified Process (RUP). • Introdução à tecnologia CASE (ComputerAided Software Engeneering) no suporte das atividades.
2
Processos de Desenvolvimento
• Conjunto de atividades necessário ao desenvolvimento de sistemas de software:
• • • • especificação; desenho; validação; evolução.
• Paradigma: representação abstrata de um processo, descrição desde perspectiva única.
3
1
11/03/2013
Processos Genéricos
• Modelo Cascata (Clássico, Seqüencial):
• fases distintas e isoladas de especificação e desenvolvimento.
• Evolucionário:
• especificação, desenvolvimento e validação em camadas.
• Desenvolvimento modular:
• Sistema baseado em biblioteca de componentes.
• Muitas variações existentes:
• i.e: Desenvolvimento Formal = modelo clássico com especificação formal e refinamento.
4
Técnicas Básicas
• PDCA:
• • Plan, Do, Check e Act; planejar, executar, verificar e corrigir.
•
5W1H:
• • What, When, Where, Who, Why e How; o quê, quando, onde, quem, porque e como.
•
Você só controla aquilo que você mede.
5
Técnicas Básicas
• Principios de Engenharia de SW:
• • • • • Formalidade: controle, custo, confiança; Abstração: foco em aspectos fundamentais; Segmentação: atividades específicas, especialistas; Generalização: reutilização; Flexibilização: alterações.
6
2
11/03/2013
Modelo Clássico
7
Modelo Clássico
1. 2. 3. 4. 5. • Análise e definição dos Requisitos. Desenho do sistema (arquitetura e SW). Implementação e teste unitário. Integração e teste do sistema. Operação e manutenção. Principais falhas:
• • • difícil acomodar alterações; alocação de recursos; uma fase deve terminar para início da próxima.
8
Modelo Clássico
1. Análise e definição dos Requisitos: