Universidade Federal de Pernambuco SCRUM Process Polyana SCRUM
Universidade Federal de Pernambuco SCRUM Process Polyana SCRUM Lima Olegário Process polyanalim@yahoo. com. br
Agenda n Manifesto Ágil § § n SCRUM § § § § n Agile Alliance Agile Modeling Valores Ágeis Princípios Ágeis Historia Filosofia Fluxo do Processo Praticas do SCRUM Gerenciamento em SCRUM Process XP x SCRUM Ferramentas Conclusões SCRUM Process 2
Agile Modeling n É uma metodologia baseada na pratica para modelagem efetiva e documentação de sistemas de software n Melhorar o esforço dos profissionais que desenvolvem software SCRUM Process 3
Agile Alliance n Grupo de pesquisadores que lançaram o manifesto ágil n Defende valores e praticas dos métodos ágeis e ajudam organizações a adotarem tais conceitos n Define valores e princípios do manifesto ágil SCRUM Process 4
Valores do Manifesto Ágil Indivíduos e Interações mais que processos e ferramentas n Software Operante mais que documentações completas n Colaboração do Cliente mais que negociações contratuais n Adaptação a mudanças mais que seguir o plano inicial n SCRUM Process 5
Princípios do Manifesto Ágil n Satisfazer o cliente n Entregas no prazo e continuamente n Receber bem mudanças de requisitos n Software funcionando n Os membros da equipe aprendem uns com os outros SCRUM Process 6
Princípios do Manifesto Ágil n Comunicação aberta e honesta n Reuniões n Equipe organizada n Criar conteúdo simples n Considerar Testabilidade n Lições aprendidas SCRUM Process 7
Métodos Ágeis n XP n SCRUM n FDD (Feature-Driven Development) n Crystal n ASD (Adaptive Software Development) SCRUM Process 8
SCRUM Process nÉ um processo para construir software incrementalmente em ambientes complexos, onde os requisitos não são claros ou mudam com muita freqüência. n É um caminho para maximizar a produção. n É um processo que controla o “caos” de interesses conflitantes e necessários. SCRUM Process 9
SCRUM - História n Jeff Sutherland aplicou primeiro a concepção do SCRUM na Easel Corporation in 1993. n Em 1995 foi apresentado para a OMG (Object Management Group), pela Advanced Development Methods – ADM e pela VMARK Software – VMARK n O SCRUM foi refinado mais tarde por Ken Schwaber. SCRUM Process 10
Filosofia do SCRUM n Processo Empírico n n Se um processo é totalmente definido, pode ser repetido e os resultados serem previsíveis, então é conhecido como processo definido e pode ser automatizado Mas, se é caótico e não repetitivo, requer constante controle e medidas, é um processo empírico SCRUM Process 11
Filosofia do SCRUM n "Scrum methodology - similar to the iterative methodology, but assumes that all requirements are not known in advance, and that the fastest path to surfacing and implementing all requirements will be discovered empirically during the development process. Careful control mechanisms are used to assure on-time delivery of a high quality product, while allowing maximum flexibility of small, tightly coupled, development teams. Requires a well motivated team and good leadership to implement effectively. Productivity gains of 600% have been seen repeatedly in well executed projects. “ § By Capers Jones SCRUM Process 12
Como o SCRUM trabalha n Foco em gerenciamento e Tracking n Pode ser combinado metodologias (Ex. : XP) com outras n Equipes pequenas (06 à 10 membros) n Uma série de Sprints (01 – 04 semanas) n Tempo limitado n Rápido desenvolvimento do produto SCRUM Process 13
Como o SCRUM trabalha n Evita trabalho desnecessário n Features que nunca serão utilizadas n Utiliza como artefatos somente documentos realmente necessários n Mantém todos os envolvidos no projeto constantemente atualizados SCRUM Process 14
Fluxo de um Processo SCRUM Process 15
Fluxo de um Processo SCRUM n Criação do Product Backlog n Product Backlog: Lista dinâmica do que é desejado ter no produto n Planejamento da Sprint n Reunião de Planejamento da Sprint : Com objetivo de definir o trabalho a ser SCRUM Process realizado. 16
Fluxo de um Processo SCRUM n Sprint n Desenvolvimento das funcionalidades. n Reuniões diárias de 15 min SCRUM Process 17
Fluxo de um Processo SCRUM n Revisão da Sprint n A nova funcionalidade é apresentada n Se mais iterações são necessárias então o Product Owner apresenta um novo Product Backlog e o processo inicia novamente. SCRUM Process 18
SCRUM Process n Planejamento da Sprint n Reunião de Planejamento da Sprint: n n 4 h com o Product Owner e o Time para definir as características de alta prioridade e o Time poder selecionar as funcionalidades para a próxima Sprint; 4 h com o Time para fazer o plano de trabalho da Sprint. Definir a arquitetura, design das funcionalidades e as tarefas para construção dessas funcionalidades; Product Owner pode redefinir o Product Backlog n O Objetivo da Sprint é definido n Estimativa do tempo baseada em Sprints anteriores n SCRUM Process 19
SCRUM Process n Sprint é o período de tempo (20 a 30 dias) para construção dos itens do Product Backlog em funcionalidades do produto n O progresso da Sprint é acompanhado pela Sprint Backlog e Sprint Burndown n Todo código desenvolvido é testado e os bugs são corrigidos antes do inicio da Revisão da Sprint. n Daily SCRUM Meeting SCRUM Process 20
SCRUM Process n Revisão da Sprint n Reunião para discutir o estava dando certo na Sprint e o que estava dando errado e quais funcionalidades são necessárias para a próxima Sprint, a partir destes fatores o curso da próxima Sprint é determinado n Preocupação em “O que” time estava desenvolvendo n Reunião de Revisão da Sprint tem duração de 1 hora e o Scrum. Master determina a quantidade de pessoas na reunião SCRUM Process 21
SCRUM Process n Retrospectiva da Sprint n Avaliam o que pode ser modificado para melhorar a produtividade da próxima Sprint n Preocupação em “Como” time estava desenvolvendo n Todos os envolvidos no projeto devem participar n Benefícios: n n Melhorias no processo a cada Sprint Elaboração de um relatório de lições aprendidas SCRUM Process 22
Práticas do SCRUM n Daily SCRUM Meeting n Questões Levantadas: n n O que foi finalizado ontem? O que é planejado para hoje? Existe algo que possa atrapalhar o trabalho? Benefícios: n n Evita duplicação de esforço; Melhor entendimento e interdependência entre os membros do Time; Comunicação do Time; Identificar riscos antes que eles ocorram; SCRUM Process 23
Práticas do SCRUM n Acompanhamento do progresso da Sprint: n Através do relato da Sprint Backlog n E de gráficos como do Product Burndown ou Sprint Burndown: A inclinação da curva dá a noção de Velocidade (Velocity) da equipe. SCRUM Process 24
Gerenciamento em SCRUM Process n Não existe um gerente de projetos como em projetos tradicionais n Gerenciado pelo Scrum. Master, Product Owner e pelo Time n Scrum. Master n n Não gerencia, mas provê liderança; Garante a aplicação das regras do SCRUM; Ensina conceitos do SCRUM; Remove obstáculos; SCRUM Process 25
Gerenciamento em SCRUM Process n Product Owner n n n Representa os stakeholders; Define os requisitos; Define as prioridades; n Time n n n Constroem as funcionalidades do produto; Organizam seu próprio trabalho; ( Gerenciam suas próprias tarefas; SCRUM Process 26
XP x SCRUM n Semelhanças: Equipes pequenas n Requisitos instáveis ou desconhecidos n Iterações curtas para fornecer melhor visibilidade do desenvolvimento n SCRUM Process 27
XP x SCRUM n Diferenças: SCRUM divide o desenvolvimento em Sprints de até 30 dias e com reuniões diárias de 15 min n Equipes formadas por pessoas de competências diferentes: projetistas, programadores, engenheiros e gerentes de qualidade n Informação de status atualizado continuamente e a divisão de tarefas é explicitas n SCRUM Process 28
XP x SCRUM n SCRUM e XP são complementares. n SCRUM fornece praticas de gerenciamento enquanto XP provê praticas integradas de engenharia de software SCRUM Process 29
Ferramentas n Ferramentas: n Scrum for Team System n n n Adicionada ao Microsoft Visual Studio Team System Desenvolvida pelo Conchango em colaboração com Ken Schwaber e a Microsoft Scrum. Works http: //danube. com/ Version One: Agile Project Planning & Management Application n http: //www. versionone. com/ n n SCRUM Process 30
Trabalham com SCRUM n Yahoo, Medtronics , Primavera SCRUM Process 31
Conclusões n n n Maior integração entre os membros da equipe Rápida solução de problemas § Compartilhamento de conhecimento Progresso medido continuamente § Minimização de Riscos Profissionais de negócios e tecnologia trabalham juntos Maior comprometimento do time devido a sua autonomia Pode haver necessidade de associação com outras metodologias (XP) SCRUM Process 32
Conclusão n SCRUM é interessante porque fornece um mecanismo de informação de status que é atualizado continuamente, e porque utiliza a divisão de tarefas dentro da equipe de forma explícita. n Qualquer metodologia de processo pode utilizar a filosofia do SCRUM e garantir boas práticas sobre o projeto. SCRUM Process 33
Referências n n n n www. agilemodeling. com. Acessado em 26/01/2007 www. agilealliance. org. Acessado em 26/01/2007 www. controlchaos. com. Acessado em 26/01/2007 www. agilemanifesto. org. Acessado em 29/01/2007. http: //scrumforteamsystem. com/. Acessado em 25/01/2007. http: //www. scrumalliance. org/. Acessado em 25/01/2007. Controlled Chaos : Living on the Edge. 1996 Advanced Development Methods SCRUM Process 34
- Slides: 34