SCRUMInstituto de Educação Superior da Paraíba – IESPSistemas de Informação - Gerência de Projetos
SCRUMAllysson Vitor, Bruno Vinicius e Paulo André
Estamos vivendo uma tendência para o desenvolvimento ágil de aplicações devido ao ritmo acelerado de mudanças na tecnologia da informação, pressões por constantes inovações, concorrência acirrada e grande dinamismo no ambiente de negócios (BOEHM, 2006).Introdução
HIGHSMITH (2004) enfatiza que a ausência de estrutura ou estabilidade pode levar ao caos, mas que a estrutura em demasia gera rigidez.Introdução
Um grupo de 17 autores e representantes das mais variadas técnicas e metodologias ágeis se reuniu para discutir e identificar o padrão de desenvolvimento de projetos dentre as técnicas e metodologias existentes e criaram o Manifesto para Desenvolvimento Ágil de Software (AgileManifesto, 2001).AgileManifesto
O AgileManifesto é um framework comum para processos ágeis valorizando os seguintes itens:Ágeis x Tradicionais
O Scrum é uma jogada do Rugby que envolve oito jogadores de cada time, onde eles se "encaixam", para se tornar uma muralha. O grande ponto dessa jogada é a vital importância do trabalho em equipe. Se um membro falhar na formação, já era, o outro time se sobressai.O Termo Scrum
MicrosoftYahooGoogleElectronic ArtsHigh Moon StudiosLockheed MartinPhilipsSiemensNokiaCapital OneBBCIntuitNielsen MediaFirst American Real EstateBMC SoftwareIpswitchJohn DeereLexis NexisTime WarnerTurner BroadcastingC.E.S.A.R.Globo.comAbrilPowerlogicUOLLOCAWEBQuem usa Scrum?
Métodos, práticas e técnicas para o desenvolvimento ágil de projetos prometem aumentar a satisfação do cliente (BOEHM, 2003) para produzir alta qualidade de software e para acelerar os prazos de desenvolvimento de projetos (ANDERSON, 2003).Vantagens de ser ágil
Vantagens de ser ágil
Uma pesquisa recente sobre o estado do desenvolvimento ágil (VERSIONONE, 2007) indica que 70% dos entrevistados usam Scrum combinado com outras metodologias e 40% usam Scrum puro.Scrum por todos os lados
Scrum é bastante objetivo, com papéis bem definidos, de fácil adaptação e ainda, sua curva de aprendizado é relativamente baixa.Por que Scrum?
Segundo o seu autor SCHWABER (2004), o Scrum não é um processo previsível, ele não define o que fazer em toda circunstância. Ele é usado em trabalhos complexos nos quais não é possível prever tudo o que irá ocorrer e oferece um framework e um conjunto de práticas que torna tudo visível.Definição do Scrum
O conhecimento das práticas do Scrum permite a aplicação delas de forma variada e este é um dos aspectos positivos do Scrum, a adaptabilidade.Scrum é adaptável
Vale ressaltar que as práticas do Scrum podem ser aplicadas em qualquer contexto onde pessoas precisem trabalhar juntas para atingir um objetivo comum.Scrum é adaptável
Scrum é recomendado para projetos de outras áreas além de software e principalmente para projetos de pesquisa e inovação.Scrum é adaptável
Como funciona o Scrum?
O clico do Scrum tem o seu progresso baseado em um série de iterações bem definidas, cada uma com duração de 2 a 4 semanas, chamadas Sprints.O ciclo do Scrum
Antes de cada Sprint, realiza-se uma Reunião de planejamento (SprintPlanning Meeting) onde o time (equipe) de desenvolvedores tem contato com o cliente (Product Owner) para priorizar o trabalho que precisa ser feito, selecionar e estimar as tarefas que o time pode realizar dentro da Sprint.O ciclo do Scrum
A próxima fase é a Execução da Sprint (Product Increment). Durante a execução da Sprint, o time controla o andamento do desenvolvimento realizando Reuniões Diárias Rápidas (DailyMeeting), não mais que 15 minutos de duração, e observando o seu progresso usando um gráfico chamado Sprint Burndown.O ciclo do Scrum
Ao final de cada Sprint, é feita uma revisão no produto entregue para verificar se tudo realmente foi implementado.O ciclo do Scrum
Ao final da Sprint, deve-se realizar uma Reunião de Revisão (Sprint Review), onde o time demonstra o produto gerado na Sprinte valida se o objetivo foi atingido.O ciclo do Scrum
Logo em seguida, realiza-se a Reunião de Retrospectiva (Sprint Retrospective), uma reunião de lições aprendidas, com o objetivo de melhorar o processo/time e/ou produto para a próxima Sprint.O ciclo do Scrum
Papéis e Responsabilidades do ScrumProductOwnerScrum TeamScrumMaster
Scrum torna-se ideal para projetos dinâmicos e suscetíveis a mudanças de requisitos, sejam eles novos ou apenas requisitos modificados. No entanto, para aplicá-lo, é preciso entender antes os seus papéis, responsabilidades, conceitos e artefatos das fases de seu ciclo.Papéis e Responsabilidades do Scrum
O Scrum implementa um esqueleto interativo e incremental através de três papéis principais: o ProductOwner, o Scrum Team, e o ScrumMaster.Papéis e Responsabilidades do Scrum
Papéis e Responsabilidades do Scrum
Papéis e Responsabilidades do Scrum
Papéis e Responsabilidades do Scrum
Comprometimento x EnvolvimentoOs membros do Time Scrum são chamados “porcos”. Qualquer outra pessoa é chamada de “galinha”. “Galinhas” não podem dizer aos “porcos” como eles devem fazer seu trabalho.
Conceitos, Artefatos e Fases do ScrumSprintProductBacklogImpedimentBacklog
O progresso do projeto é baseado em uma série de iterações bem definidas chamadas Sprints. A recomendação é de que a duração da Sprintfique entre 2 a 4 semanas. Esse período é chamado de Time-box. Sprint
Uma entrega do produto é realizada a cada Sprint, então recomenda-se que durante o desenvolvimento do produto, exista um padrão, um mesmo time-box, para todas as Sprints. Isto é importante para se conseguir medir o progresso e a produtividade da equipe no projeto.Sprint
O ProductBacklog contém uma lista de itens priorizados que incluem tudo o que precisa ser realizado, que possa ser associado com valor de negócio, para a finalização do projeto, sejam requisitos funcionais ou não.ProductBacklog
É importante ressaltar que cada item no Backlog do produto deve ter um valor de negócio associado (Business Value), onde podemos medir o retorno do projeto e priorizar a realização dos itens.ProductBacklog
Exemplo de ProductBacklog
O ImpedimentBacklog contém todos os itens que impedem o progresso do projeto e geralmente estão associados a riscos. Estes itens não possuem uma priorização, mas estão geralmente associados a algum item de Backlog do produto ou a tarefas do item, Exemplo “instalar ambiente para desenvolvedores”, “Instalação de banco de dados do projeto”, etc. ImpedimentBacklog
O controle desses itens é muito importante e o ScrumMaster é o grande responsável pela liberação desses impedimentos, abrindo caminho para o time de desenvolvimento executar a realização dos itens do Backlog do produto.ImpedimentBacklog
Antes de iniciar a reunião de planejamento, é preciso ter o Backlog priorizado e estimado. Uma técnica muito interessante e objetiva conhecida como PlanningPoker pode ser usada onde a estimativa pode ser feita em horas/tamanho.Preparando o ProductBacklog
O Planning Poker (COHN,2006) é uma forma de estimativa em conjunto, podendo ser feita como um jogo. Todos os membros do time, inclusive o Product Owner, participam de forma democrática para chegar a um consenso de estimativa, para cada item do Backlog, de forma objetiva e divertida.PlanningPoker
A equipe seleciona itens do ProductBacklog com os quais compromete-se a concluir.OSprintBacklog é criado.Tarefas identificadas e estimadas (1 a 16 horas).De forma colaborativa, não apenas feito pelo ScrumMaster.Planejamento de alto nível é consideradoPlanejamento da Sprint
Cada indivíduo escolhe o trabalho que faráTrabalhos nunca são atribuídos.Atualização diária da estimativa do trabalho restante.Qualquer membro da equipe pode adicionar, apagar ou mudar tarefas.O trabalho aparece a partir do Sprint.Se uma tarefa não é clara, defina-a como um item com uma quantidade maior de tempo e subdivida-a depois.Atualize as coisas a serem feitas na medida em que se tornam mais conhecidas.Gerenciando o SprintBacklog
Exemplo de SprintBacklog
BurndownChartO Burndown é um gráfico muito simples que indica o consumo de horas diárias. O eixo X indica a escala de horas totalizando o valor de horas estimado para a Sprint, e o eixo Y os dias que representam o tamanho da Sprint de acordo com seu time-box.
Parâmetros.Diário.15 minutos.Todos em pé!Não é para a solução de problemas.Todo mundo é convidado.Apenas os membros da equipe, ScrumMaster, ProductOwner podem falar (porcos).Ajuda a evitar reuniões adicionais desnecessárias.Daily Scrum
Três questões, para todos
As respostas não são um “relatório” para o ScrumMaster. Elas são COMPROMISSOS perante os pares.Três questões, para todos
Equipe apresenta os resultados obtidos durante o Sprint.Tipicamente, demonstração de novas funcionalidades ou sua arquitetura.Informal.2 horas de preparaçãoSem slides.Todo o time participa.O mundo é convidado.SprintReview
Periodicamente, observe o que funciona e o que não funciona.Tipicamente de 15 a 30 minutos.Feita após cada Sprint.Toda a equipe participa.ScrumMaster.ProductOwner.Membros da equipeClientes e outrosSprintRetrospective
A equipe discute o que gostaria de: iniciar a fazer, parar de fazer e continuar fazendo.Esta é apenas uma das várias maneiras de se conduzir uma retrospectiva do Sprint.Inicia, Pára, Continua
Dúvidas?
AgileManifesto, Manifesto for Agile Software Development, 2001. Disponível em http://agilemanifesto.org/ [Novembro, 2005]. ANDERSON, D. J., Agile Management for Software Engineering, Applying the Theory of Constraints for Business Results, Prentice Hall, 2003. BOEHM, B., A View of 20th and 21st Century Software Engineering, ICSE 2006. BOEHM, B. and Turner, R., Balancing Agility and Discipline A Guide for the Perplexed, AddisonWesley, 2003. COHN, Mike, Agile Estimating and Planning, Prentice Hall, 2006, 330 p. HIGHSMITH, J., Agile Project Management, Creating innovative products, AddisonWesley, 2004. KNIBERG, Henrik., Scrum and XP from the Trenches, How we do Scrum, Nov., 2006, 90 p. MOUNTAIN Goat Software, The Scrum Development Process, Disponívelem http://www.mountaingoatsoftware.com/Scrum [Junho, 2006]. SCHWABER, K., and Beedle, M., Agile Software Development With Scrum, Prentice Hall, 2002. SCHWABER K., Agile Project Management With Scrum, Microsoft, 2004. Referências
FIM

Scrum

  • 2.
    SCRUMInstituto de EducaçãoSuperior da Paraíba – IESPSistemas de Informação - Gerência de Projetos
  • 3.
    SCRUMAllysson Vitor, BrunoVinicius e Paulo André
  • 4.
    Estamos vivendo umatendência para o desenvolvimento ágil de aplicações devido ao ritmo acelerado de mudanças na tecnologia da informação, pressões por constantes inovações, concorrência acirrada e grande dinamismo no ambiente de negócios (BOEHM, 2006).Introdução
  • 5.
    HIGHSMITH (2004) enfatizaque a ausência de estrutura ou estabilidade pode levar ao caos, mas que a estrutura em demasia gera rigidez.Introdução
  • 6.
    Um grupo de17 autores e representantes das mais variadas técnicas e metodologias ágeis se reuniu para discutir e identificar o padrão de desenvolvimento de projetos dentre as técnicas e metodologias existentes e criaram o Manifesto para Desenvolvimento Ágil de Software (AgileManifesto, 2001).AgileManifesto
  • 7.
    O AgileManifesto éum framework comum para processos ágeis valorizando os seguintes itens:Ágeis x Tradicionais
  • 8.
    O Scrum éuma jogada do Rugby que envolve oito jogadores de cada time, onde eles se "encaixam", para se tornar uma muralha. O grande ponto dessa jogada é a vital importância do trabalho em equipe. Se um membro falhar na formação, já era, o outro time se sobressai.O Termo Scrum
  • 9.
    MicrosoftYahooGoogleElectronic ArtsHigh MoonStudiosLockheed MartinPhilipsSiemensNokiaCapital OneBBCIntuitNielsen MediaFirst American Real EstateBMC SoftwareIpswitchJohn DeereLexis NexisTime WarnerTurner BroadcastingC.E.S.A.R.Globo.comAbrilPowerlogicUOLLOCAWEBQuem usa Scrum?
  • 10.
    Métodos, práticas etécnicas para o desenvolvimento ágil de projetos prometem aumentar a satisfação do cliente (BOEHM, 2003) para produzir alta qualidade de software e para acelerar os prazos de desenvolvimento de projetos (ANDERSON, 2003).Vantagens de ser ágil
  • 11.
  • 12.
    Uma pesquisa recentesobre o estado do desenvolvimento ágil (VERSIONONE, 2007) indica que 70% dos entrevistados usam Scrum combinado com outras metodologias e 40% usam Scrum puro.Scrum por todos os lados
  • 13.
    Scrum é bastanteobjetivo, com papéis bem definidos, de fácil adaptação e ainda, sua curva de aprendizado é relativamente baixa.Por que Scrum?
  • 14.
    Segundo o seuautor SCHWABER (2004), o Scrum não é um processo previsível, ele não define o que fazer em toda circunstância. Ele é usado em trabalhos complexos nos quais não é possível prever tudo o que irá ocorrer e oferece um framework e um conjunto de práticas que torna tudo visível.Definição do Scrum
  • 15.
    O conhecimento daspráticas do Scrum permite a aplicação delas de forma variada e este é um dos aspectos positivos do Scrum, a adaptabilidade.Scrum é adaptável
  • 16.
    Vale ressaltar queas práticas do Scrum podem ser aplicadas em qualquer contexto onde pessoas precisem trabalhar juntas para atingir um objetivo comum.Scrum é adaptável
  • 17.
    Scrum é recomendadopara projetos de outras áreas além de software e principalmente para projetos de pesquisa e inovação.Scrum é adaptável
  • 18.
  • 19.
    O clico doScrum tem o seu progresso baseado em um série de iterações bem definidas, cada uma com duração de 2 a 4 semanas, chamadas Sprints.O ciclo do Scrum
  • 20.
    Antes de cadaSprint, realiza-se uma Reunião de planejamento (SprintPlanning Meeting) onde o time (equipe) de desenvolvedores tem contato com o cliente (Product Owner) para priorizar o trabalho que precisa ser feito, selecionar e estimar as tarefas que o time pode realizar dentro da Sprint.O ciclo do Scrum
  • 21.
    A próxima faseé a Execução da Sprint (Product Increment). Durante a execução da Sprint, o time controla o andamento do desenvolvimento realizando Reuniões Diárias Rápidas (DailyMeeting), não mais que 15 minutos de duração, e observando o seu progresso usando um gráfico chamado Sprint Burndown.O ciclo do Scrum
  • 22.
    Ao final decada Sprint, é feita uma revisão no produto entregue para verificar se tudo realmente foi implementado.O ciclo do Scrum
  • 23.
    Ao final daSprint, deve-se realizar uma Reunião de Revisão (Sprint Review), onde o time demonstra o produto gerado na Sprinte valida se o objetivo foi atingido.O ciclo do Scrum
  • 24.
    Logo em seguida,realiza-se a Reunião de Retrospectiva (Sprint Retrospective), uma reunião de lições aprendidas, com o objetivo de melhorar o processo/time e/ou produto para a próxima Sprint.O ciclo do Scrum
  • 25.
    Papéis e Responsabilidadesdo ScrumProductOwnerScrum TeamScrumMaster
  • 26.
    Scrum torna-se idealpara projetos dinâmicos e suscetíveis a mudanças de requisitos, sejam eles novos ou apenas requisitos modificados. No entanto, para aplicá-lo, é preciso entender antes os seus papéis, responsabilidades, conceitos e artefatos das fases de seu ciclo.Papéis e Responsabilidades do Scrum
  • 27.
    O Scrum implementaum esqueleto interativo e incremental através de três papéis principais: o ProductOwner, o Scrum Team, e o ScrumMaster.Papéis e Responsabilidades do Scrum
  • 28.
  • 29.
  • 30.
  • 31.
    Comprometimento x EnvolvimentoOsmembros do Time Scrum são chamados “porcos”. Qualquer outra pessoa é chamada de “galinha”. “Galinhas” não podem dizer aos “porcos” como eles devem fazer seu trabalho.
  • 32.
    Conceitos, Artefatos eFases do ScrumSprintProductBacklogImpedimentBacklog
  • 33.
    O progresso doprojeto é baseado em uma série de iterações bem definidas chamadas Sprints. A recomendação é de que a duração da Sprintfique entre 2 a 4 semanas. Esse período é chamado de Time-box. Sprint
  • 34.
    Uma entrega doproduto é realizada a cada Sprint, então recomenda-se que durante o desenvolvimento do produto, exista um padrão, um mesmo time-box, para todas as Sprints. Isto é importante para se conseguir medir o progresso e a produtividade da equipe no projeto.Sprint
  • 35.
    O ProductBacklog contémuma lista de itens priorizados que incluem tudo o que precisa ser realizado, que possa ser associado com valor de negócio, para a finalização do projeto, sejam requisitos funcionais ou não.ProductBacklog
  • 36.
    É importante ressaltarque cada item no Backlog do produto deve ter um valor de negócio associado (Business Value), onde podemos medir o retorno do projeto e priorizar a realização dos itens.ProductBacklog
  • 37.
  • 38.
    O ImpedimentBacklog contémtodos os itens que impedem o progresso do projeto e geralmente estão associados a riscos. Estes itens não possuem uma priorização, mas estão geralmente associados a algum item de Backlog do produto ou a tarefas do item, Exemplo “instalar ambiente para desenvolvedores”, “Instalação de banco de dados do projeto”, etc. ImpedimentBacklog
  • 39.
    O controle dessesitens é muito importante e o ScrumMaster é o grande responsável pela liberação desses impedimentos, abrindo caminho para o time de desenvolvimento executar a realização dos itens do Backlog do produto.ImpedimentBacklog
  • 40.
    Antes de iniciara reunião de planejamento, é preciso ter o Backlog priorizado e estimado. Uma técnica muito interessante e objetiva conhecida como PlanningPoker pode ser usada onde a estimativa pode ser feita em horas/tamanho.Preparando o ProductBacklog
  • 41.
    O Planning Poker(COHN,2006) é uma forma de estimativa em conjunto, podendo ser feita como um jogo. Todos os membros do time, inclusive o Product Owner, participam de forma democrática para chegar a um consenso de estimativa, para cada item do Backlog, de forma objetiva e divertida.PlanningPoker
  • 42.
    A equipe selecionaitens do ProductBacklog com os quais compromete-se a concluir.OSprintBacklog é criado.Tarefas identificadas e estimadas (1 a 16 horas).De forma colaborativa, não apenas feito pelo ScrumMaster.Planejamento de alto nível é consideradoPlanejamento da Sprint
  • 43.
    Cada indivíduo escolheo trabalho que faráTrabalhos nunca são atribuídos.Atualização diária da estimativa do trabalho restante.Qualquer membro da equipe pode adicionar, apagar ou mudar tarefas.O trabalho aparece a partir do Sprint.Se uma tarefa não é clara, defina-a como um item com uma quantidade maior de tempo e subdivida-a depois.Atualize as coisas a serem feitas na medida em que se tornam mais conhecidas.Gerenciando o SprintBacklog
  • 44.
  • 45.
    BurndownChartO Burndown éum gráfico muito simples que indica o consumo de horas diárias. O eixo X indica a escala de horas totalizando o valor de horas estimado para a Sprint, e o eixo Y os dias que representam o tamanho da Sprint de acordo com seu time-box.
  • 46.
    Parâmetros.Diário.15 minutos.Todos empé!Não é para a solução de problemas.Todo mundo é convidado.Apenas os membros da equipe, ScrumMaster, ProductOwner podem falar (porcos).Ajuda a evitar reuniões adicionais desnecessárias.Daily Scrum
  • 47.
  • 48.
    As respostas nãosão um “relatório” para o ScrumMaster. Elas são COMPROMISSOS perante os pares.Três questões, para todos
  • 49.
    Equipe apresenta osresultados obtidos durante o Sprint.Tipicamente, demonstração de novas funcionalidades ou sua arquitetura.Informal.2 horas de preparaçãoSem slides.Todo o time participa.O mundo é convidado.SprintReview
  • 50.
    Periodicamente, observe oque funciona e o que não funciona.Tipicamente de 15 a 30 minutos.Feita após cada Sprint.Toda a equipe participa.ScrumMaster.ProductOwner.Membros da equipeClientes e outrosSprintRetrospective
  • 51.
    A equipe discuteo que gostaria de: iniciar a fazer, parar de fazer e continuar fazendo.Esta é apenas uma das várias maneiras de se conduzir uma retrospectiva do Sprint.Inicia, Pára, Continua
  • 52.
  • 53.
    AgileManifesto, Manifesto forAgile Software Development, 2001. Disponível em http://agilemanifesto.org/ [Novembro, 2005]. ANDERSON, D. J., Agile Management for Software Engineering, Applying the Theory of Constraints for Business Results, Prentice Hall, 2003. BOEHM, B., A View of 20th and 21st Century Software Engineering, ICSE 2006. BOEHM, B. and Turner, R., Balancing Agility and Discipline A Guide for the Perplexed, AddisonWesley, 2003. COHN, Mike, Agile Estimating and Planning, Prentice Hall, 2006, 330 p. HIGHSMITH, J., Agile Project Management, Creating innovative products, AddisonWesley, 2004. KNIBERG, Henrik., Scrum and XP from the Trenches, How we do Scrum, Nov., 2006, 90 p. MOUNTAIN Goat Software, The Scrum Development Process, Disponívelem http://www.mountaingoatsoftware.com/Scrum [Junho, 2006]. SCHWABER, K., and Beedle, M., Agile Software Development With Scrum, Prentice Hall, 2002. SCHWABER K., Agile Project Management With Scrum, Microsoft, 2004. Referências
  • 54.