A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Metodologia de Desenvolvimento de Software

Apresentações semelhantes


Apresentação em tema: "Metodologia de Desenvolvimento de Software"— Transcrição da apresentação:

1 Metodologia de Desenvolvimento de Software
Contexto de Análise e Projeto Orientados a Objeto © Nabor C. Mendonça 2001

2 Importância de Software
Dependência generalizada da vida moderna em sistemas de computação O software é parte cada vez maior dos custos e do sucesso desses sistemas Produzir software é um atividade inerentemente complexa: independe de leis físicas, restrições de materiais e processos de manufatura Requer métodos disciplinados de desenvolvimento

3 O que é Software? Programas Dados de configuração Documentação
Arquivos de código Dados de configuração Arquivos de instalação e reconstrução Documentação Manuais do usuário Manuais do sistema Web sites Produto da Engenharia de Software

4 O que é Engenharia de Software?
Uma disciplina de engenharia voltada para todos os aspectos da produção de software de qualidade Processos, modelos e metodologias de desenvolvimento Gerência de projeto Investigação de novos métodos, ferramentas e teorias

5 O que é Engenharia de Software? (2)
Envolve a escolha seletiva de metodologias e ferramentas adequadas ao contexto (restrições) de um sistema Abrange desde a especificação inicial do sistema até sua operação e manutenção

6 Atributos de Qualidade de um Software
Dependem do domínio da aplicação Relacionados com o comportamento (execução) do sistema e a organização de seus documentos e código fonte Atributos essenciais Manutenibilidade Confiabilidade Eficiência Usabilidade

7 Processo de Desenvolvimento de Software
Um processo de desenvolvimento de software é um conjunto estruturado de atividades necessárias para produzir um produto de software Critérios de avaliação de um processo Em que medida garante os atributos essenciais de um produto de software? As atividades de um processo são distribuídas em fases

8 Atividade Tipos de atividade
Análise Projeto Implementação Testes Manutenção/Evolução As atividades são organizadas segundo diferentes Modelos de Desenvolvimento

9 Modelo de Desenvolvimento
Representação abstrata das atividades de um processo de software e suas interdependências Modelos genéricos Cascata (ou Clássico) Iterativo (ou Evolucionário)

10 Fase Fase Unidade de decomposição de um processo
Engloba uma ou mais atividades Ortogonal ao modelo de desenvolvimento

11 Atividades e Fases Atividades e Fases
Fases nunca são entrelaçadas  seqüência Atividades podem ser entrelaçadas, dependendo do modelo de desenvolvimento  interação

12 O Modelo Cascata Análise Projeto Implementação Testes Manutenção

13 Características do Modelo Cascata
Abordagem sistemática e seqüencial Como todo processo, é organizado em fases distintas e separadas Relacionamento 1:1 entre Atividade e Fase Baseado nos processo convencionais de engenharia Requer especificação completa e bem entendida Dificulta a introdução de mudanças após o início do processo

14 Atividades Interativas
O Modelo Iterativo Atividades Interativas Iterações ou Incrementos Versão Inicial Especificação Descrição Inicial Versões Intermediárias Desenvolvimento Versão Final Validação

15 Características do Modelo Iterativo
Iteração Um ciclo de desenvolvimento, dentro de um intervalo de tempo. Ex: 2 a 4 semanas Atividades entrelaçadas Cada fase é composta de uma seqüência de iterações Especificação evolui junto com o sistema Suporta requisitos parcialmente definidos

16 Características do Modelo Iterativo (2)
Cada iteração produz uma “release” do software  milestone A última “release” de uma fase deve marcar um “tournant” no desenvolvimento do software  major milestone Que “tournant” é esse? Depende do processo de desenvolvimento escolhido. Veremos, em detalhes, o processo padrão (R)UP

17 Distribuição das Atividades de Desenvolvimento nos Modelos Cascata e Iterativo
Modelo Cascata Modelo Iterativo Análise Implementação Validação Design

18 Exemplos de Processos de Desenvolvimento
APE: Análise e Projeto Estruturados DeMarco, Page-Jones, Gane-Sarson APOD: Análise e Projeto Orientados a Dados Jackson, Warnier-Orr APOO: Análise e Projeto Orientados a Objeto Modelo Iterativo Booch, OMT, OOSE (R)UP: (Rational) Unified Process

19 Metodologia de Desenvolvimento
Metodologia = Processo + Linguagem A linguagem define formalmente os artefatos produzidos ao longo do processo UML: Unified Modeling Language UML é uma linguagem orientada a objeto e unificada Cobre as atividades de análise e design Unificação é uma grande vantagem Evita problemas de “impedance mismatch” Metodologia de Desenvolvimento Adotada na Disciplina (R)UP + UML


Carregar ppt "Metodologia de Desenvolvimento de Software"

Apresentações semelhantes


Anúncios Google