SCRUM  Processo de Desenvolvimento de Software Camila  R.  Rocha  RA:  022247   Silvia C. M. Soares  RA: 012895   Disciplina: Engenharia de Software I Professora: Eliane Martins
Agenda Introdução  Objetivos Características Fases Aspectos de qualidade, gerenciamento e testes Conclusões
Introdução ORIGEM: ADM  (Advanced Development Methods) + VMARK Software METODOLOGIA: Gerenciamento, manutenção  e desenvolvimento de  softwares: simples e pequenos  grandes e complexos PROCESSO: Ágil Empírico Incremental BASE P/ SCRUM: Técnicas e  tools  OO
Objetivos Garantir maior flexibilidade e habilidade para tratamento  de sistemas complexos e simples;  Produzir um sistema susceptível a requerimentos iniciais e adicionais durante o projeto: Requerimentos dos clientes; Necessidades do negócio; Pressão relativa ao tempo; Competitividade do mercado;  Qualidade;  Recursos.
Características Deliverable  flexível;  Cronograma flexível; Times de desenvolvimento pequenos (por volta de 6); Revisões frequentes; Colaboração;  Orientação a Objeto.
Fases Planejamento Sprints Ciclos Encerramento
Fases  Planejamento Processo definido  Relativament e  curta Des ign  da arquitetura do sistema Estimativas de datas e custos Criação do backlog Participação de clientes e outros departamentos Levantamento dos requisitos e atribuição de prioridades Definição de equipes e seus líderes Definição de pacotes a serem desenvolvidos Backlog
Fases Sprint Processo Empírico Cada time recebe uma parte do backlog para desenvolvimento  O backlog não sofrerá modificações durante o Sprint Duração de 1 a 4 semanas Sempre apresentam um executável ao final  Fonte: Mountain Goat Software
Fases  –  Sprint Reuniões Diárias Cerca de 15 minutos de duração Gerenciada pelo líder de cada equipe Todos respondem às perguntas: O que você realizou desde a última reunião? Quais problemas você enfrentou? Em que você trabalhará até a próxima reunião?  Benefícios: Maior integração entre os membros da equipe Rápida solução de problemas P romovem o compartilhamento de conhecimento Progresso medido continuamente Minimização de riscos
Fases  –  Sprint Revisão Deve obedecer à data de entrega Permitida a diminuição de funcionalidades Apresentação do produto à clientes e/ou diretores de marketing Sugestões de mudanças são incorporadas ao backlog Produto pode até ser lançado no mercado Benefícios: Apresentar resultados concretos ao cliente  Integrar e testar uma boa parte do software Motivação da equipe
Fases Encerramento Iniciada quando todos os aspectos são satisfatórios (tempo, competitividade, requisitos, qualidade, custo) Atividades: Testes de integração Testes de sistema Documentação do usuário Preparação de material de treinamento Preparação de material de marketing
Qualidade, Gerenciamento e Testes Passos e papéis bem definidos Gerenciamento de riscos Revisões frequentes / diárias Definição de padrões Realização de testes  Elaboração de documentação Grupo QA Controles Backlog Release/ Melhoria Mudanças Problemas Soluções Issues
Divisão de responsabilidades papéis bem definidos Processo ágil e flexível  inúmeras mudanças no decorrer do projeto Foco em controles  e gerenciamento  minimiza risco  maximiza qualidade Times pequenos Colaboração Ausência de práticas de Engenharia de Software (técnicas e notações) e  tools Necessidade de associação com outras metodologias e  tools ( XP, GNATS) Dificuldade na implementação de mudanças Conclusões
Referências ADVANCED DEVELOPMENT METHODS Inc.  Controlled Chaos : Living on the Edge . 1996. Disponível em: <http://www.controlchaos.com/   ap.htm>. Acesso em 9 mar. 2003. ADVANCED DEVELOPMENT METHODS Inc.  SCRUM Software Development Process - Building The Best Possible Software . 1995. Disponível em: <http://www.controlchaos.com/scrumwp.htm>. Acesso em 9 mar. 2003.   BEETLE, Mike, et. al.  SCRUM: A extension pattern language for hyperproductive software development.  Pattern Languages of Software Design 4, 2000. Disponível em: <http://st-ww.cs.uiuc.edu/~plop/plopd4-submissions/P46.pdf>. Acesso em 14 mar 2003. MENON, Nishanth.  SCRUM: Saving Project from Failing.  2002. Disponível em: <http://www.webenable.com/industry/scrum1.asp>. Acesso em 15 mar. 2003.
Referências MOUNTAIN GOAT SOFTWARE.  Scrum . Disponível em: < http://www. mountaingoatsoftware.com/scrum/scrumpres.pdf >. Acesso em 10 mar. 2003. MOUNTAIN GOAT SOFTWARE.  The Scrum Development Process . Disponível em: < http://www.mountaingoatsoftware.com/scrum/index.html >   Acesso em 10 mar. 2003. NOYES, Bryan.  Rugby, Anyone?  2002. Disponível em: <http://www. fawcette.com/resources/managingdev/methodologies/scrum>. Acesso em 13 mar. 2003 POWER, Patrick. Overview of the Scrum Development Software Process. 2002. Disponível em: <http://www.humanetix.com/Articles/Scrum1.html>. Acesso em 15 mar. 2003.
Referências RISING, Linda; JANOFF, Norman.  The Scrum Software Development Process for Small Teams.  IEEE Software, July/August 2001. SCHWABER, Ken; MAR, Kane . Scrum with XP . 2003. Disponível em: <http://www.controlchaos.com/XPKane.htm>. Acesso em 10 mar.  SUTHERLAND, Jeff.  Jeff Sutherland SCRUM’s log . 2003. Disponível em: <http://www.jeffsutherland.org/scrum/index.html>. Acesso em 15 mar. 2003. SUTHERLAND, Jeff.  Jeff Sutherland’s COMDEX/Object World Tutorial – SCRUM. 1998 . Disponível em: <http://www.jeffsutherland.org/   objwld98/ow_scrum.html>. Acesso em 15 mar. 2003.

SCRUM Processo de Desenvolvimento de Software

  • 1.
    SCRUM Processode Desenvolvimento de Software Camila R. Rocha RA: 022247 Silvia C. M. Soares RA: 012895 Disciplina: Engenharia de Software I Professora: Eliane Martins
  • 2.
    Agenda Introdução Objetivos Características Fases Aspectos de qualidade, gerenciamento e testes Conclusões
  • 3.
    Introdução ORIGEM: ADM (Advanced Development Methods) + VMARK Software METODOLOGIA: Gerenciamento, manutenção e desenvolvimento de softwares: simples e pequenos grandes e complexos PROCESSO: Ágil Empírico Incremental BASE P/ SCRUM: Técnicas e tools OO
  • 4.
    Objetivos Garantir maiorflexibilidade e habilidade para tratamento de sistemas complexos e simples; Produzir um sistema susceptível a requerimentos iniciais e adicionais durante o projeto: Requerimentos dos clientes; Necessidades do negócio; Pressão relativa ao tempo; Competitividade do mercado; Qualidade; Recursos.
  • 5.
    Características Deliverable flexível; Cronograma flexível; Times de desenvolvimento pequenos (por volta de 6); Revisões frequentes; Colaboração; Orientação a Objeto.
  • 6.
    Fases Planejamento SprintsCiclos Encerramento
  • 7.
    Fases PlanejamentoProcesso definido Relativament e curta Des ign da arquitetura do sistema Estimativas de datas e custos Criação do backlog Participação de clientes e outros departamentos Levantamento dos requisitos e atribuição de prioridades Definição de equipes e seus líderes Definição de pacotes a serem desenvolvidos Backlog
  • 8.
    Fases Sprint ProcessoEmpírico Cada time recebe uma parte do backlog para desenvolvimento O backlog não sofrerá modificações durante o Sprint Duração de 1 a 4 semanas Sempre apresentam um executável ao final Fonte: Mountain Goat Software
  • 9.
    Fases – Sprint Reuniões Diárias Cerca de 15 minutos de duração Gerenciada pelo líder de cada equipe Todos respondem às perguntas: O que você realizou desde a última reunião? Quais problemas você enfrentou? Em que você trabalhará até a próxima reunião? Benefícios: Maior integração entre os membros da equipe Rápida solução de problemas P romovem o compartilhamento de conhecimento Progresso medido continuamente Minimização de riscos
  • 10.
    Fases – Sprint Revisão Deve obedecer à data de entrega Permitida a diminuição de funcionalidades Apresentação do produto à clientes e/ou diretores de marketing Sugestões de mudanças são incorporadas ao backlog Produto pode até ser lançado no mercado Benefícios: Apresentar resultados concretos ao cliente Integrar e testar uma boa parte do software Motivação da equipe
  • 11.
    Fases Encerramento Iniciadaquando todos os aspectos são satisfatórios (tempo, competitividade, requisitos, qualidade, custo) Atividades: Testes de integração Testes de sistema Documentação do usuário Preparação de material de treinamento Preparação de material de marketing
  • 12.
    Qualidade, Gerenciamento eTestes Passos e papéis bem definidos Gerenciamento de riscos Revisões frequentes / diárias Definição de padrões Realização de testes Elaboração de documentação Grupo QA Controles Backlog Release/ Melhoria Mudanças Problemas Soluções Issues
  • 13.
    Divisão de responsabilidadespapéis bem definidos Processo ágil e flexível inúmeras mudanças no decorrer do projeto Foco em controles e gerenciamento minimiza risco maximiza qualidade Times pequenos Colaboração Ausência de práticas de Engenharia de Software (técnicas e notações) e tools Necessidade de associação com outras metodologias e tools ( XP, GNATS) Dificuldade na implementação de mudanças Conclusões
  • 14.
    Referências ADVANCED DEVELOPMENTMETHODS Inc. Controlled Chaos : Living on the Edge . 1996. Disponível em: <http://www.controlchaos.com/ ap.htm>. Acesso em 9 mar. 2003. ADVANCED DEVELOPMENT METHODS Inc. SCRUM Software Development Process - Building The Best Possible Software . 1995. Disponível em: <http://www.controlchaos.com/scrumwp.htm>. Acesso em 9 mar. 2003. BEETLE, Mike, et. al. SCRUM: A extension pattern language for hyperproductive software development. Pattern Languages of Software Design 4, 2000. Disponível em: <http://st-ww.cs.uiuc.edu/~plop/plopd4-submissions/P46.pdf>. Acesso em 14 mar 2003. MENON, Nishanth. SCRUM: Saving Project from Failing. 2002. Disponível em: <http://www.webenable.com/industry/scrum1.asp>. Acesso em 15 mar. 2003.
  • 15.
    Referências MOUNTAIN GOATSOFTWARE. Scrum . Disponível em: < http://www. mountaingoatsoftware.com/scrum/scrumpres.pdf >. Acesso em 10 mar. 2003. MOUNTAIN GOAT SOFTWARE. The Scrum Development Process . Disponível em: < http://www.mountaingoatsoftware.com/scrum/index.html > Acesso em 10 mar. 2003. NOYES, Bryan. Rugby, Anyone? 2002. Disponível em: <http://www. fawcette.com/resources/managingdev/methodologies/scrum>. Acesso em 13 mar. 2003 POWER, Patrick. Overview of the Scrum Development Software Process. 2002. Disponível em: <http://www.humanetix.com/Articles/Scrum1.html>. Acesso em 15 mar. 2003.
  • 16.
    Referências RISING, Linda;JANOFF, Norman. The Scrum Software Development Process for Small Teams. IEEE Software, July/August 2001. SCHWABER, Ken; MAR, Kane . Scrum with XP . 2003. Disponível em: <http://www.controlchaos.com/XPKane.htm>. Acesso em 10 mar. SUTHERLAND, Jeff. Jeff Sutherland SCRUM’s log . 2003. Disponível em: <http://www.jeffsutherland.org/scrum/index.html>. Acesso em 15 mar. 2003. SUTHERLAND, Jeff. Jeff Sutherland’s COMDEX/Object World Tutorial – SCRUM. 1998 . Disponível em: <http://www.jeffsutherland.org/ objwld98/ow_scrum.html>. Acesso em 15 mar. 2003.