21
Universidade Federal Rural de Universidade Federal Rural de Pernambuco Pernambuco Unidade Acadêmica de Serra Talhada Unidade Acadêmica de Serra Talhada Bacharelado em Sistemas de Bacharelado em Sistemas de Informação Informação Processo de Desenvolvimento de Processo de Desenvolvimento de Software Software 1 Andrêsa, Clébia, Eugênia, Ronnie e Vanut Andrêsa, Clébia, Eugênia, Ronnie e Vanut

FDD e Crystal (Conceitos, Vantagens e Desvantagens)

  • Upload
    ronnie

  • View
    5.558

  • Download
    3

Embed Size (px)

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

Page 1: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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

Page 2: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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

Page 3: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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

Page 4: FDD e Crystal (Conceitos, Vantagens e 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

Page 5: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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.

Page 6: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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

Page 7: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

7

Introdução | Características | Processo | Papéis | Vantagens-Desvantagens

Page 8: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

8

Introdução | Características | Processo | Papéis | Vantagens-Desvantagens

Principais papéis

Page 9: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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

Page 10: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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

Page 11: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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,

Page 12: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

Crystal

Page 13: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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

Page 14: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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

Page 15: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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

Page 16: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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;

Page 17: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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

Page 18: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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

Page 19: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

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

Page 20: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

Conclusão

20

Page 21: FDD e Crystal (Conceitos, Vantagens e Desvantagens)

Grupo

•Andrêsa Cibelly•Clébia Alves•Cleyton Vanut•Josefa Eugênia•Ronnie Edson

21