Criada por uma dupla de estudantes universitárias do Instituto Federal de Educação, Ciência e Tecnologia do Piauí - IFPI/Campus Floriano, alunas do curso de Tecnologia em Análise e Desenvolvimento de Sistemas, Daiane Rodrigues e Mayara Leal, residentes na cidade de Floriano-Pi, criaram a metodologia PUMA na disciplina de Engenharia de Software no dia 17 de Novembro de 2010.
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.
É uma metodologia baseada nas metodologias ágéis: XP e Scrum.
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.
Seus valores são:
- Simplicidade
- Comunicação
- Determinação
- Planejamento
- Organização
Papéis:
Manager - Gerente de projetoSênior - Representante dos desenvolvedoresDesenvolvedores
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ãoA 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.
Testes
- Fica a cargo do Sênior;
- Após os testes é realizado o PULO, que pode ser tanto para frente quanto para trás, ou seja, se forem encontrados erros no código a equipe se organiza para a correção dos erros, caso contrário a equipe adiciona a funcionalidade no pacote que será entregue ao cliente para que ele também teste.
Protótipo
- Após o desenvolvimento e os testes, é entregue ao cliente um pacote contendo 3 processos;
- O cliente se encarrega de testar o pacote e descobrir erros despercebidos pela equipe.
Documentação
- Varia de acordo com a complexidade do negócio;
- A cargo do sênior;
- Incremental.


