View
5.559
Download
3
Category
Preview:
DESCRIPTION
FDD e Crystal: Seminário apresentado no segundo semestre de 2009 na disciplina "Processo de Desenvolvimento de Software" do professore Ítalo César no curso de Bacharelado em Sistemas de Informação da UFRPE/UAST.
Citation preview
Universidade Federal Rural de Universidade Federal Rural de PernambucoPernambucoUnidade Acadêmica de Serra TalhadaUnidade Acadêmica de Serra TalhadaBacharelado em Sistemas de InformaçãoBacharelado em Sistemas de InformaçãoProcesso de Desenvolvimento de Processo de Desenvolvimento de SoftwareSoftware
1
Andrêsa, Clébia, Eugênia, Ronnie e VanutAndrêsa, Clébia, Eugênia, Ronnie e Vanut
2
Introdução | Características | Processo | Papéis | Vantagens-Desvantagens
É uma metodologia ágil para gerenciamento e desenvolvimento de software
Cenário: 1997-1998, Cingapura
Contexto: Desenvolvimento de um grande sistema de empréstimos para um banco internacionalAnteriormente, após 2 anos de consultoria, 3.500 páginas de casos de (in)uso e um modelo de objetos com centenas de classes, foi avaliado como impossível
Decisão: Implantação das metodologias de OO de Peter Coad Peter Coad e de gerência de projetos de Jeff De Jeff De LucaLucaResultado: 15 meses após a contratação da dupla, 2.000 features entregues por uma equipe de 50 pessoas
Peter Coad
Jeff de Luca
3
Desenvolvimento guiado por funcionalidades (Features)
Mas... O que é uma Feature?
Característica ou funcionalidade...Pequena o suficiente para ser implementada no máximoem 2 semanas
Oferece valor para o cliente
Às vezes pode ser o próprio caso de uso
Conceito muito próximo ao de um requisito funcional
Exemplos: Calcular o total de uma venda Autorizar uma transação com cartão de um cliente
Introdução | Características | Processo | Papéis | Vantagens-Desvantagens
4
Introdução | Características | Processo | Papéis | Vantagens-Desvantagens
Cara
cterí
stic
as
Adaptaçõesàs mudanças de requisitos e necessidades do mercado
Entregas freqüentes;
Resultados úteis a cada duas semanas ou menos;
Blocos pequenos valorizados pelo cliente (Features);
Interaçãoentre metodologias
Fornece estrutura para equipes maiores
5
Introdução | Características | Processo | Papéis | Vantagens-Desvantagens
Boas
Prá
tica
s
Administração de Configuração (Configuration Manager) Habilita acompanhamento do histórico do código-fonte.
Modelagem de objetos de domínio (Domain Object Modeling)Exploração e explicação do problema do domínio resulta em um arcabouço
Proprietários de classes individuais (Individual class ownership)Cada classe possui um único desenvolvedor responsável
Construções freqüentes (Regular Builds) Garantir que existe um sistema sempre disponível e demonstrável
Desenvolver por funcionalidade (Developing by feature)Desenvolvimento e acompanhamento do progresso através de a lista de funcionalidades.
6
Introdução | Características | Processo | Papéis | Vantagens-Desvantagens
O Processo é dividido em duas fases:
Detalhar por
funcionalidade
Construir por
funcionalidade
Construir a lista de funcionalida
des
Planejar por
funcionalidade
Desenvolver um modelo
abrangente
7
Introdução | Características | Processo | Papéis | Vantagens-Desvantagens
8
Introdução | Características | Processo | Papéis | Vantagens-Desvantagens
Principais papéis
9
Introdução | Características | Processo | Papéis | Vantagens-Desvantagens
Papéis de apoioPapéis de apoio
•Gerente de versão•Guru de linguagem•Engenheiro de construção•Produtor de ferramentas e utilitários•Administrador de sistemas
AdicionaisAdicionais
TestadoresInstaladoresTécnicos
Formadas dinamicamente: Única forma de desenvolver por feature
e manter a posse de código
Sob a coordenação de um Programador-Chefe
Múltiplas mentes projetando
Membros são os Donos de Classes relevantes
Enfatiza o trabalho em equipe
EquipesEquipes
10
Introdução | Características | Processo | Papéis | Vantagens-Desvantagens
Vantagens DesvantagensRecomendado para qualquer tipo de desenvolvimento;
Foco em "características de valor para o cliente";
FDD prioriza aquilo que o cliente prioriza;
FDD possui requisitos mais formais
Questionamento sobre a eficácia/aplicabilidade de FDD;
Controvérsias sobre o tamanho mínimo de um time FDD;
Manutenção
Conclusão
11
É um método ágil e altamente adaptativo
É orientada às necessidades dos clientes, gerentes e desenvolvedores
Oferece vantagens dos métodos pesados (rigorosos)
Oferece vantagens dos métodos extremamente ágeis,
Crystal
13
É uma família de metodologias que une:
Diferentes modelos de processo, mas...com elementos centrais, comuns a todas, e...
Papéis, processos e práticas específicas de cada uma.
Grupos de 6 a 80 pessoas
CRYSTALIntrodução | Características | Práticas | Processo | Clear x Orange
Adaptável a diferentesprojetos e equipes
Que vão escolher o membro da família mais apropriadoPara o seu projeto e ambiente
14
CRYSTALIntrodução | Características | Práticas | Processo | Clear x Orange
Cada membro recebe uma cor, que indica o número de participantes e complexidade do projeto.
As letras representam o nível de risco do projeto, ou seja, as perdas acarretadas caso haja falhas do sistema.
Letras e seus significadosLetras e seus significadosC (Confort) Perda de dinheiro com recuperação
confortável
D (Discret) Perda discreta de dinheiro
E (Essencial) Perda substancial de dinheiro
L (Life) Possível perda de vidas
15
CRYSTALIntrodução | Características | Práticas | Processo | Clear x Orange
Tempo máximo de duração de projetos
Clear 4 meses
Yellow Não definido*
Orange 2 anos
Red Não definido*
*Esses métodos não foram testados, por isso não há tempo de duração estimado
16
CRYSTALIntrodução | Características | Práticas | Processo | Clear x Orange
CaracterísticasCaracterísticasCaracterísticasCaracterísticas
Sempre usar ciclos de desenvolvimento incremental;
Cada incremento deve ter duração máxima de 4 meses, mas o recomendado é de 1 a 3 meses (Cockburn 2002a);
Dar ênfase à comunicação e à cooperação pessoal.
A metodologia Crystal não se restringe a um método específico;
17
CRYSTALIntrodução | Características | Práticas | Processo | Clear x Orange
PráticasPráticas
Entrega de incrementos em intervalos regulares;
Monitoramento do progresso;
Envolvimento direto do cliente;
Teste regressivo das funcionalidades;
Duas visões do cliente por versão
Workshops para ajuste do produto e da metodologia usada no início e no meiode cada incremento
18
CRYSTALIntrodução | Características | Práticas | Processo | Clear x Orange
ProcessoProcesso
Plataforma
Revisão
Monitoramento
Paralelismo e fluxo
Técnica de melhoramento da metodologia
19
CRYSTALIntrodução | Características | Práticas | Processo | Clear x Orange
Crystal Clear VS. Crystal Orange
Semelhanças:
-São semelhantes em :
Sequência de lançamento de versõesmodelos comuns de objetosmanual de usuáriocasos de testecódigo de migração. necessária a utilização de questões locais, ou seja, procedimentos que consistem de metodologias
Diferenças: Clear inclui casos de uso, descrição das características/ Orange é necessário o documento de requisitos.
Clear: políticas padrão são rígidas, mas podem ser substituídas por práticas equivalentes de outros métodos. / Orange: impõe seleção de notações padrão, convenções de modelo, padrões de formatação e qualidade
Conclusão
20
Grupo
•Andrêsa Cibelly•Clébia Alves•Cleyton Vanut•Josefa Eugênia•Ronnie Edson
21
Recommended