ScrumUma breve apresentaçãoEmerson HenriqueMárcio LinsLuciano AlmeidaWWW.SCRUMPB.ORG
2ScrumDefinição informal:Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através de trabalho em  equipe.
3Origens de ScrumJeff Suttherland - jeffsutherland.comKen Schwaber - www.controlchaos.comMike Beedle - www.mikebeedle.comConferênciasOOPSLA 96, PLoP 98InspiraçãoDesenvolvimento Iterativo e Incremental em empresas  (DuPont) nos anos 80
4Scrum
5Origens de ScrumDesenvolvimento de software    a partir de padrões de projeto   (design patterns)
6O quê são padrões ?No final dos anos 70, o arquiteto Christopher Alexander escreveu dois livros com a idéia.Cada padrão descreve um problema recorrente no nosso ambiente e, em seguida, o princípio de sua solução. A solução pode ser aplicada diversas vezes, nunca da mesma maneira.Um exemplo: escritório com janela.
7Fundamentos de ScrumDesenvolvimento de software depende muito de criatividade e de trabalhoLogo, não é um bom candidato a processos pré-definidos modelo de controle de processo empíricoO desenvolvimento nem sempre será repetitivo e bem definidoMas existem padrões que podem ser usados
8História (processos)Processo definidoFunciona em ambientes controladosProcesso empíricoProcessos de controle industrialBabatunde "Tunde" OgannaikeProcess Dynamics, Modeling and Control, 94Funciona para processosComplexos e ImprevisíveisPrincípios: Visibilidade, Inspeção e Adaptabilidade
9ÊnfasesComunicaçãoTrabalho em equipeFlexibilidadeFornecer software funcionando incrementalmente
10Principais PadrõesBacklogEquipesSprintsEncontros Scrum Revisões Scrum/Demos
11BacklogLista de todas as funcionalidades desejadasÉ gerada incrementalmenteComeça pelo básico, o extra aparece com o tempoPode conterTarefas diretas, casos de uso e histórias (a la XP)A lista é priorizada pelo dono do projetoCliente, depto de marketing, ...
12O Backlog InicialDeve conter características que agreguem algum valor de negócio ao produtoNovos requisitos aparecem quando o cliente vê o produtoA arquitetura do sistema surge enquanto o projeto surge e é refatorado
13EquipesSem nível hierárquico nem papéisMas com várias especialidadesEstão todos no mesmo barcoGeralmente equipes pequenas (até 10)Existem casos com equipes maiores (800 !)Usa-se também Scrum hierárquicoComunicação é essencialEncontro Scrum diário
14SprintUnidades básicas de tempo (até 30 dias)Começa com um encontro SprintTarefas do Backlog são priorizadasA equipe seleciona tarefas que podem ser completadas durante o próximo SprintAs mesmas podem ser quebradas para o Backlog do SprintCada tarefa recebe um responsável na equipeNão há mudança nas tarefas durante o Sprint
15Encontro Scrum 1/2Pequenos encontros diários da equipegeralmente pela manhãgalinhas e porcos (só os porcos falam)todos os porcos devem participarQuestões que aparecem devem ser resolvidas durante o dia e não na reuniãoOs encontros iniciais são geralmente mais longos
16Encontro Scrum 2/2Questões que devem ser respondidas por cada porco:1) O quê você fez ontem?2) O quê você vai fazer hoje?3) Quais os problemas encontrados?Ajuda a manter as promessasEvita: Como um projeto atrasa um ano?Um dia por vez ...Qualquer deslize pode ser corrigido de imediato
17Local do EncontroSempre o mesmo local e horaPode ser o local de desenvolvimentoPessoas sentadas ao redor de uma mesaA sala já deve estar arrumada antesPunições (atrasos/faltas)Todos devem participarGalinhas ficam na periferiaPode ser em péSala bem equipada, quadro branco, etc.
18Revisão do SprintNo final de cada Sprint é feita uma reunião com todos os interessadosGeralmenteNa forma de demonstraçãoInformal (preparação rápida, sem projetor,..)Deve ser o resultado natural de um SprintO projeto é comparado com os objetivos iniciais do Sprint
19Scrum Master
20Scrum Master 1/2Faz com que a equipe viva os valores e práticas de ScrumProtege a equipe de:Riscos  e interferências externosExcesso de otimismoResolve os problemas que apareceremlogísticosde conhecimento/habilidade
21Scrum Master 2/2Mantém o Backlog do SprintTarefas completadasIdentifica eventuais problemasMantém um gráfico de “quanto falta”
22Exemplo real
23Scrum de Forma Gráfica
24Scrum FinalNão faz parte do Scrum padrão, mas é bem usado na práticaUm último Sprint para “fechar” o produtoO objetivo é:Preparar a versão de produçãoO foco é a eliminação de erros
25Scrum DistribuídoPara grandes sistemas e grandes equipesÉ atualmente um tema em discussão  (Jeff Sutherland – Agile2006)Possui novas dificuldades
26Principais DificuldadesIndependência de equipes Problemas de comunicaçãoBarreiras CulturaisModo de TrabalhoPráticas de Scrum são para equipes reunidas
27Práticas DistribuídasParticionar o trabalho eliminando dependênciasFortalecer a comunicaçãoEstabelecer Padrões
28Tipos de Scrum Distribuído
29Práticas AdicionaisReunião diária com todos do desenvolvedoresReunião diária com o dono do produtoBuilds automáticos a cada horaPradronização dos desenvolvedores Inserção de práticas de XP
Mais InformaçõesAgille Alliance - www.agilealliance.orgÓtima fonte sobre métodos ágeisScrum Alliance - www.scrumalliance.org/Mountain Goat Softwarewww.mountaingoatsoftware.comSite de um treinador de Scrum MastersSite do Ken Schwaber - www.controlchaos.com30
31Perguntas?www.scrumpb.org
ContatosE-mail: marcio@marciolins.com.brblog: blog.marciolins.com.brtwitter: @marciolinsE-mail: falecom@lucianohenrique.comblog: www.lucianohenrique.comtwitter: @lucianohenriqueE-mail: emerson.hss@gmail.comblog: http://emersonhss.wordpress.com/twitter: @emersonhss32

Todasexta

  • 1.
    ScrumUma breve apresentaçãoEmersonHenriqueMárcio LinsLuciano AlmeidaWWW.SCRUMPB.ORG
  • 2.
    2ScrumDefinição informal:Estratégia emum jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através de trabalho em equipe.
  • 3.
    3Origens de ScrumJeffSuttherland - jeffsutherland.comKen Schwaber - www.controlchaos.comMike Beedle - www.mikebeedle.comConferênciasOOPSLA 96, PLoP 98InspiraçãoDesenvolvimento Iterativo e Incremental em empresas (DuPont) nos anos 80
  • 4.
  • 5.
    5Origens de ScrumDesenvolvimentode software a partir de padrões de projeto (design patterns)
  • 6.
    6O quê sãopadrões ?No final dos anos 70, o arquiteto Christopher Alexander escreveu dois livros com a idéia.Cada padrão descreve um problema recorrente no nosso ambiente e, em seguida, o princípio de sua solução. A solução pode ser aplicada diversas vezes, nunca da mesma maneira.Um exemplo: escritório com janela.
  • 7.
    7Fundamentos de ScrumDesenvolvimentode software depende muito de criatividade e de trabalhoLogo, não é um bom candidato a processos pré-definidos modelo de controle de processo empíricoO desenvolvimento nem sempre será repetitivo e bem definidoMas existem padrões que podem ser usados
  • 8.
    8História (processos)Processo definidoFuncionaem ambientes controladosProcesso empíricoProcessos de controle industrialBabatunde "Tunde" OgannaikeProcess Dynamics, Modeling and Control, 94Funciona para processosComplexos e ImprevisíveisPrincípios: Visibilidade, Inspeção e Adaptabilidade
  • 9.
  • 10.
  • 11.
    11BacklogLista de todasas funcionalidades desejadasÉ gerada incrementalmenteComeça pelo básico, o extra aparece com o tempoPode conterTarefas diretas, casos de uso e histórias (a la XP)A lista é priorizada pelo dono do projetoCliente, depto de marketing, ...
  • 12.
    12O Backlog InicialDeveconter características que agreguem algum valor de negócio ao produtoNovos requisitos aparecem quando o cliente vê o produtoA arquitetura do sistema surge enquanto o projeto surge e é refatorado
  • 13.
    13EquipesSem nível hierárquiconem papéisMas com várias especialidadesEstão todos no mesmo barcoGeralmente equipes pequenas (até 10)Existem casos com equipes maiores (800 !)Usa-se também Scrum hierárquicoComunicação é essencialEncontro Scrum diário
  • 14.
    14SprintUnidades básicas detempo (até 30 dias)Começa com um encontro SprintTarefas do Backlog são priorizadasA equipe seleciona tarefas que podem ser completadas durante o próximo SprintAs mesmas podem ser quebradas para o Backlog do SprintCada tarefa recebe um responsável na equipeNão há mudança nas tarefas durante o Sprint
  • 15.
    15Encontro Scrum 1/2Pequenosencontros diários da equipegeralmente pela manhãgalinhas e porcos (só os porcos falam)todos os porcos devem participarQuestões que aparecem devem ser resolvidas durante o dia e não na reuniãoOs encontros iniciais são geralmente mais longos
  • 16.
    16Encontro Scrum 2/2Questõesque devem ser respondidas por cada porco:1) O quê você fez ontem?2) O quê você vai fazer hoje?3) Quais os problemas encontrados?Ajuda a manter as promessasEvita: Como um projeto atrasa um ano?Um dia por vez ...Qualquer deslize pode ser corrigido de imediato
  • 17.
    17Local do EncontroSempreo mesmo local e horaPode ser o local de desenvolvimentoPessoas sentadas ao redor de uma mesaA sala já deve estar arrumada antesPunições (atrasos/faltas)Todos devem participarGalinhas ficam na periferiaPode ser em péSala bem equipada, quadro branco, etc.
  • 18.
    18Revisão do SprintNofinal de cada Sprint é feita uma reunião com todos os interessadosGeralmenteNa forma de demonstraçãoInformal (preparação rápida, sem projetor,..)Deve ser o resultado natural de um SprintO projeto é comparado com os objetivos iniciais do Sprint
  • 19.
  • 20.
    20Scrum Master 1/2Fazcom que a equipe viva os valores e práticas de ScrumProtege a equipe de:Riscos e interferências externosExcesso de otimismoResolve os problemas que apareceremlogísticosde conhecimento/habilidade
  • 21.
    21Scrum Master 2/2Mantémo Backlog do SprintTarefas completadasIdentifica eventuais problemasMantém um gráfico de “quanto falta”
  • 22.
  • 23.
  • 24.
    24Scrum FinalNão fazparte do Scrum padrão, mas é bem usado na práticaUm último Sprint para “fechar” o produtoO objetivo é:Preparar a versão de produçãoO foco é a eliminação de erros
  • 25.
    25Scrum DistribuídoPara grandessistemas e grandes equipesÉ atualmente um tema em discussão (Jeff Sutherland – Agile2006)Possui novas dificuldades
  • 26.
    26Principais DificuldadesIndependência deequipes Problemas de comunicaçãoBarreiras CulturaisModo de TrabalhoPráticas de Scrum são para equipes reunidas
  • 27.
    27Práticas DistribuídasParticionar otrabalho eliminando dependênciasFortalecer a comunicaçãoEstabelecer Padrões
  • 28.
    28Tipos de ScrumDistribuído
  • 29.
    29Práticas AdicionaisReunião diáriacom todos do desenvolvedoresReunião diária com o dono do produtoBuilds automáticos a cada horaPradronização dos desenvolvedores Inserção de práticas de XP
  • 30.
    Mais InformaçõesAgille Alliance- www.agilealliance.orgÓtima fonte sobre métodos ágeisScrum Alliance - www.scrumalliance.org/Mountain Goat Softwarewww.mountaingoatsoftware.comSite de um treinador de Scrum MastersSite do Ken Schwaber - www.controlchaos.com30
  • 31.
  • 32.
    ContatosE-mail: marcio@marciolins.com.brblog: blog.marciolins.com.brtwitter:@marciolinsE-mail: falecom@lucianohenrique.comblog: www.lucianohenrique.comtwitter: @lucianohenriqueE-mail: emerson.hss@gmail.comblog: http://emersonhss.wordpress.com/twitter: @emersonhss32