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

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

© Nabor C. Mendonça 2001 1 Processo / Metodologia de Desenvolvimento de Software.

Apresentações semelhantes


Apresentação em tema: "© Nabor C. Mendonça 2001 1 Processo / Metodologia de Desenvolvimento de Software."— Transcrição da apresentação:

1 © Nabor C. Mendonça 2001 1 Processo / Metodologia de Desenvolvimento de Software

2 © Nabor C. Mendonça 2001 2 Importância de Software n Dependência generalizada da vida moderna de sistemas de computação n O software é parte cada vez maior dos custos e do sucesso desses sistemas n Produzir software é um atividade inerentemente complexa – Independe de leis físicas, restrições de materiais e processos de manufatura Não se trata de engenharia, stricto sensu – Requer disciplina  Observância de Preceitos e Normas, Aurélio  de desenvolvimento

3 © Nabor C. Mendonça 2001 3 O que é Software? n Produto da Engenharia de Software, consiste em n Programas – Arquivos de código Fonte Objeto, ou Executável n Arquivos de Suporte – Configuração, instalação e reconstrução n Documentação – Manuais do usuário – Manuais do sistema – Web sites

4 © Nabor C. Mendonça 2001 4 O que é Engenharia de Software? n 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 – Uma linha de pesquisa Investigação de novos métodos, ferramentas e teorias

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

6 © Nabor C. Mendonça 2001 6 Atributos de Qualidade de um Software n Relacionados com o comportamento (execução do código) do sistema n Atributos essenciais – Manutenibilidade – Confiabilidade – Eficiência – Usabilidade

7 © Nabor C. Mendonça 2001 7 Processo de Desenvolvimento de Software n Um processo de desenvolvimento de software é um conjunto estruturado de atividades necessárias à produção de software n Critérios de avaliação de um processo – Em que medida garante os atributos essenciais de um produto de software? n As atividades de um processo são distribuídas em fases do processo

8 © Nabor C. Mendonça 2001 8 Atividade n Tipos de atividade – Análise – Projeto (“Design”) – Implementação – Testes – Manutenção / Evolução n Os tipos de atividade são organizados segundo diferentes Modelos de Desenvolvimento

9 © Nabor C. Mendonça 2001 9 Modelo de Desenvolvimento n Representação abstrata das atividades de um processo de software e suas interdependências n Modelos genéricos – Cascata (ou Clássico) – Iterativo (ou Evolucionário)

10 © Nabor C. Mendonça 2001 10 Fase n Fase – Unidade de decomposição de um processo Engloba uma ou mais atividades – Ortogonal ao modelo de desenvolvimento Nada impede que dois modelos diferentes consistam nas mesmas fases (ao menos sintaticamente)

11 © Nabor C. Mendonça 2001 11 Atividades e Fases n Atividades e Fases – Fases nunca são entrelaçadas  seqüência – Atividades podem ser entrelaçadas, dependendo do modelo de desenvolvimento  interação

12 © Nabor C. Mendonça 2001 12 Implementação O Modelo Cascata Manutenção Testes “Design” Análise

13 © Nabor C. Mendonça 2001 13 Características do Modelo Cascata n Como todo processo, é organizado em fases (sequënciais) – Relacionamento 1:1 entre Atividade e Fase Ex.: Fase Análise – Atividade Análise n Requer análise completa e bem entendida no início do desenvolvimento (ou primeira fase) n Requer “design” completo e bem entendido antes da implementação do software n Crítica do modelo – Dificulta a introdução de mudanças na análise e no “design”

14 © Nabor C. Mendonça 2001 14 O Modelo Iterativo Análise “Design” / Implementação Testes Sumário Executivo Versões Intermediárias Versão Inicial Versão Final Atividades Interativas Iterações ou Incrementos

15 © Nabor C. Mendonça 2001 15 Características Comuns a Modelos Iterativos n Iteração – Um ciclo completo de desenvolvimento, dentro de um intervalo de tempo. Ex: 2 a 4 semanas Atividades  Análise, “Design”, Implementação e Testes  entrelaçadas n Cada fase é composta de uma seqüência de iterações n Especificação  Análise e “Design”  evolui junto com o sistema n Aceita requisitos parcialmente definidos

16 © Nabor C. Mendonça 2001 16 Características... (2) n Cada iteração produz uma “release” do software  milestone n 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 © Nabor C. Mendonça 2001 17 Distribuição das Atividades de Desenvolvimento nos Modelos Cascata e Iterativo Análise Implementação TestesProjeto Modelo CascataModelo Iterativo

18 © Nabor C. Mendonça 2001 18 Exemplos de Processos de Desenvolvimento n Modelo Cascata – APE: Análise e Projeto Estruturados DeMarco, Page-Jones, Gane-Sarson – APOD: Análise e Projeto Orientados a Dados Jackson, Warnier-Orr n Modelo Iterativo – APOO: Análise e Projeto Orientados a Objeto Booch, OMT, OOSE – (R)UP: (Rational) Unified Process (Padrão, de fato) Rational Technology

19 © Nabor C. Mendonça 2001 19 Metodologia de Desenvolvimento n Metodologia = Processo + Linguagem Formal para os Artefatos do Processo n A Linguagem UML é Padrão – UML: Unified Modeling Language – UML é uma linguagem orientada a objeto e abrangente ou única Cobre as atividades de análise, “design” e implementação Unificação é uma grande vantagem Evita problemas de “impedance mismatch” n Metodologia de Desenvolvimento Adotada na Disciplina – (R)UP + UML (Padrão, de fato)


Carregar ppt "© Nabor C. Mendonça 2001 1 Processo / Metodologia de Desenvolvimento de Software."

Apresentações semelhantes


Anúncios Google