A PUMA é uma metodologia de desenvolvimento ágil criada por uma dupla de
universitárias, Daiane Rodrigues (eu mesma) e Mayara Leal, em novembro
de 2010 no Instituto Federal do Piauí/Campus Floriano. A criação da
metodologia foi requerida pela disciplina de Engenharia de Software e
apartir disso as mentoras decidiram compartilha-la com outros
desenvolvedores que se interessarem pelo esquema apresentado e possam
utiliza-lo em suas implementações e desenvolvimento de projetos.
O nome
PUMA teve origem em homenagem ao animal "Puma" (Puma concolor), é um animal ágil, arisco e dotado de excelente visão e audição.
A PUMA é uma metodologia com foco na entrega do produto no
menor tempo possível, com menores custos e redução significativa na
perda de informações tanto da comunicação com o cliente quanto do
desenvolvimento do produto.
É uma metodologia baseada nas metodologias ágeis:
XP e
Scrum.
Seus
valores são:
Simplicidade
Comunicação
Determinação
Planejamento
Organização
Papéis:
Manager - Gerente de projeto
Sênior - Representante dos desenvolvedores
Desenvolvedores
Manager:
Responsável pela comunicação com o cliente, análise e documentação do projeto;
Possui contato direto com o cliente e o sênior.
Sênior:
Responsável por gravar a conversa com o cliente e pelos testes;
Contato direto com os desenvolvedores;
Entende bastante de desenvolvimento.
Desenvolvedores:
Responsáveis pela implementação;
Trabalham em duplas;
A dupla se encarrega de fazer os testes simples durante a codificação.
1ª Reunião:
A visão G, ou primeira reunião é usada para definir os requisitos do
projeto, onde o cliente listará as principais funções do sistema;
Nela participam o cliente, o manager e o sênior.
Duração média em torno de 00:30min a 01:30h.
2ª Reunião:
Na Repasse, são expostas as funcionalidades para os desenvolvedores;
A equipe faz uma estimativa de tempo para o desenvolvimento e a definição de preços.
Duração: 01:00h a 03:00h.
3ª Reunião:
Na check-up, ou 3ª reunião, é feita a coleta das prioridades;
O gerente apresenta os valores de custo e o tempo estimado pela equipe;
No final o sênior realiza perguntas específicas a respeito das funcionalidades prioritárias.
Reuniões diárias:
As reuniões diárias ocorrem apenas no final do dia onde a equipe
verifica o que foi produzido no dia corrente e delimita os objetivos do
dia seguinte;
Conduzida pelo Sênior;
Duração: 00:15min - 00:30min.
Implementação:
A dupla trabalha junta durante o projeto. Os integrantes escolhem seu
par, porém não pode ser escolhido o mesmo parceiro de um projeto
anterior.
Cada dupla desenvolverá uma etapa da funcionalidade.
Equipe: 4 a 10 pessoas
(Ex: Uma faz o design, outra a parte de código, outra as regras de negócio se existirem).
Processo:
As funcionalidades listadas são definidas como Processos, e tem duração
variando de acordo com o grau de complexidade da função, podendo variar
de 15 a 30 dias.
Uso de planilha com prioridades definidas por
cores.