SlideShare uma empresa Scribd logo
1 de 39
Baixar para ler offline
Experimente Programação eXtrema
Experimente Programação eXtrema
Experimente Programação eXtrema
Experimente Programação eXtrema
Experimente Programação eXtrema
Manifesto Ágil (2001).
                                  ●   Indivíduos e interações entre eles mais que
                                      processos e ferramentas;
Experimente Programação eXtrema




                                  ●   Software em funcionamento mais que
                                      documentação abrangente;
                                  ●   Colaboração com o cliente mais que
                                      negociação de contratos;
                                  ●   Responder a mudanças mais que seguir um
                                      plano.
Experimente Programação eXtrema


                                  O que XP não é
XP não é um sistema operacional
Experimente Programação eXtrema
Experimente Programação eXtrema


                                  XP não é uma banda de rock
XP não é um esporte ultra-radical
Experimente Programação eXtrema




                                                       ÉGUA!
Experimente Programação eXtrema


                                  XP não é Xarope de Pupunha
O que é XP
                                  XP é um processo de desenvolvimento de software
                                  voltado para:
Experimente Programação eXtrema




                                  ●   Projetos cujos requisitos são vagos e mudam com
                                      frequência;
                                  ●   Desenvolvimento de sistemas orientados a objeto;
                                  ●   Equipes pequenas, preferencialmente até 12
                                      desenvolvedores;
                                  ●   Desenvolvimento incremental (ou iterativo), onde o
                                      sistema começa a ser implementado logo no início do
                                      projeto e vai ganhando novas funcionalidades ao
                                      longo do tempo.
Desenvolvimento de Software
Experimente Programação eXtrema




                                  Tradicional
                                       e
                                     Ágil
Desenvolvimento Tradicional
                                                ●   Em cascata.
                                                ●   Sequêncial.
Experimente Programação eXtrema




                                                ●   Tenta mecanizar os
                                                    processos como uma
                                                    linha de produção.
                                                ●   Ex.: CMMI; MPS.BR.
Desenvolvimento Ágil
                                            ●   Em espiral.
                                            ●   Iterativo.
Experimente Programação eXtrema




                                            ●   Software é criado de
                                                uma forma
                                                incremental.
                                            ●   Ex.: DSDM, Scrum,
                                                FDD, ASD, XP,
                                                Crystal Family, Lean.
Desenvolvimento Tradicional e Ágil
                                                   ●   Tradicional: custo de
                                                       uma alteração no
                                                       projeto aumenta
Experimente Programação eXtrema




                                                       durante o tempo.
                                                   ●   Ágil: custo de
                                                       mudança é
                                                       praticamente linear
                                                       ao longo do tempo.
Surgimento do eXtreme
                                                   Programming
                                  ●   Ano de 1986.
                                  ●   Kent Beck e Ward
                                      Cunningham.
Experimente Programação eXtrema




                                  ●   Trabalhavam na Tektronixs.
                                  ●   Com a linguagem Smalltalk,
                                      totalmente orientada à
                                      objetos.
                                  ●   Praticavam: refactoring,
                                      programação em par,
                                      mudanças rápidas, feedback
                                      e testes constantes,
                                      desenvolvimento iterativo.
Surgimento do eXtreme
                                                 Programming
                                  ●   Em 1996, Kent Beck
                                      foi   chamado      para
                                      “socorrer” o projeto da
Experimente Programação eXtrema




                                      folha de pagamento
                                      da Chrysler, o C3. Foi
                                      onde XP foi colocado
                                      em prova, testado,
                                      aprimorado            e
                                      batizado.
Valores do XP
                                  Feedback            Simplicidade
Experimente Programação eXtrema




                                  Comunicação         Coragem
Experimente Programação eXtrema


                                  Práticas do XP
Práticas do XP
                                  ●   Cliente Presente      ●   Código Coletivo
                                  ●   Jogo do               ●   Código Padronizado
Experimente Programação eXtrema




                                      Planejamento          ●   Design Simples
                                  ●   Stand Up Meeting      ●   Metáfora
                                  ●   Programação em Par    ●   Ritmo Sustentável
                                  ●   Desenvolvimento       ●   Integração Contínua
                                      Guiado pelos Testes
                                                            ●   Releases Curtos
                                  ●   Refactoring
Práticas do XP
                                                 Cliente Presente
                                  ●   O cliente deve
                                      participar e conduzir
                                      o desenvolvimento a
Experimente Programação eXtrema




                                      partir do feedback
                                      que recebe do
                                      sistema.
                                  ●   Viabiliza a
                                      comunicação direta
                                      com a equipe.
Práticas do XP
                                             Jogo do Planejamento
                                  ●   Se dá no início de
                                      cada iteração
                                      (semanas) para
Experimente Programação eXtrema




                                      priorizar as estórias
                                      (cartões das
                                      funcionalidades) que
                                      serão desenvolvidas.
Práticas do XP
                                                Stand Up Meeting
                                  ●   Reunião em pé
                                      realizada a cada
                                      manhã para avaliar o
Experimente Programação eXtrema




                                      trabalho do dia
                                      anterior e priorizar o
                                      que será
                                      implementado no dia
                                      que se inicia.
                                  ●   Dura em torno de 10
                                      minutos.
Práticas do XP
                                             Programação em Par
                                  ●   Permite que o código
                                      seja revisado
                                      permanentemente,
Experimente Programação eXtrema




                                      enquanto é
                                      construído.
                                  ●   Excelente maneira de
                                      distribuir
                                      conhecimento entre a
                                      equipe.
Práticas do XP
                                       Desenvolvimento Guiado pelos
                                                  Testes
                                  ●   Escreve-se classes
                                      de testes para cada
                                      funcionalidade antes
Experimente Programação eXtrema




                                      de codificá-la.
                                  ●   Cria-se somente
                                      funcionalidades que
                                      serão utilizadas.
                                  ●   São armazenados
                                      para testar o sistema
                                      quando for
                                      necessário.
Práticas do XP
                                                   Refactoring
                                  ●   É o ato de alterar o
                                      código sem afetar a
                                      funcionalidade que
Experimente Programação eXtrema




                                      ele implementa.
                                  ●   Os testes unitários
                                      são utilizados para
                                      verificar se o sistema
                                      continua funcionando.
Práticas do XP
                                                 Código Coletivo
                                  ●   Os desenvolvedores
                                      têm acesso a todas
                                      as partes do código e
Experimente Programação eXtrema




                                      podem modificá-lo
                                      (refactoring) se
                                      necessário, sem pedir
                                      permissão a outras
                                      pessoas.
Práticas do XP
                                              Código Padronizado
                                  ●   A equipe deve
                                      estabelecer padrões
                                      de codificação.
Experimente Programação eXtrema




                                  ●   Identação de código;
                                  ●   Comentários;
                                  ●   Variáveis e métodos
                                      estilo camelCase.
                                  ●   Etc.
Práticas do XP
                                                  Design Simples
                                  ●   Não criar
                                      generalizações, ou
                                      seja, não tente prever
Experimente Programação eXtrema




                                      o futuro.
                                  ●   Codificar o suficiente
                                      para a funcionalidade
                                      ser implementada.
Práticas do XP
                                                    Metáfora
                                  ●   Metáforas têm o
                                      poder de transmitir
                                      idéias complexas de
Experimente Programação eXtrema




                                      forma simples.
                                  ●   Facilita a
                                      comunicação entre a
                                      equipe e o cliente.
Práticas do XP
                                                Ritmo Sustentável
                                  ●   Trabalhar com
                                      satisfação até oito
                                      horas por dia.
Experimente Programação eXtrema




                                  ●   Evitar horas-extras.
                                  ●   Não levar trabalho
                                      para casa.
                                  ●   Realizar uma coisa
                                      de cada vez.
                                  ●   Fim de semana para
                                      lazer.
Práticas do XP
                                              Integração Contínua
                                  ●   Os pares devem
                                      integrar seus códigos
                                      com o restante do
Experimente Programação eXtrema




                                      sistema diversas
                                      vezes ao dia.
                                  ●   Para assegurar que
                                      ele continue
                                      funcionando,
                                      executam-se os
                                      testes unitários em
                                      busca de falhas.
Práticas do XP
                                                 Releases Curtos
                                  ●   Release é um
                                      conjunto reduzido de
                                      funcionalidades que a
Experimente Programação eXtrema




                                      equipe coloca em
                                      produção
                                      rapidamente,
                                      geralmente em
                                      meses, para o cliente
                                      utilizar.
                                  ●   O cliente não espera
                                      o fim do projeto para
                                      utilizar o sistema.
Características da Equipe
                                  ●   Gerente de Projeto: é responsável pelos
                                      assuntos administrativos do projeto.
Experimente Programação eXtrema




                                  ●   Coach: é o responsável técnico do projeto.
                                  ●   Analista de Teste: é responsável por ajudar o
                                      cliente a escrever os testes de aceitação,
                                      detectar defeitos no sistema.
                                  ●   Redator Técnico: Ajuda a equipe de
                                      desenvolvimento a documentar o sistema.
                                  ●   Desenvolvedor: é a pessoa que analisa,
                                      projeta e codifica o sistema.
Quando o XP não deve ser utilizado
                                  ●   Sistema baseado em premiação indivídual;
                                  ●   Contratos de escopo fechado;
Experimente Programação eXtrema




                                  ●   Clientes que fazem questão de um grande
                                      número de artefatos;
                                  ●   Escritório não adequados às práticas;
                                  ●   Empresa que não aceita mudanças;
                                  ●   Falta de apoio da diretoria;
                                  ●   Avaliação da cultura organizacional;
Experimente Programação eXtrema


                                  Empresas que experimentam ágil
Experimente Programação eXtrema


                                  Referências
Experimente Programação eXtrema




EM MAIO/2009

Mais conteúdo relacionado

Semelhante a Experimente Programação eXtrema

SCRUM e XP - Desenvolvimento Ágil de Software - Experiências e relatos
SCRUM e XP - Desenvolvimento Ágil de Software - Experiências e relatosSCRUM e XP - Desenvolvimento Ágil de Software - Experiências e relatos
SCRUM e XP - Desenvolvimento Ágil de Software - Experiências e relatosPaulo César M Jeveaux
 
Pesquisa científica - Benchmark
Pesquisa científica - BenchmarkPesquisa científica - Benchmark
Pesquisa científica - BenchmarkFernando Sobrenome
 
A linguagem de programação Erlang
A linguagem de programação ErlangA linguagem de programação Erlang
A linguagem de programação Erlangelliando dias
 
Scrum e o Ambiente de Desenvolvimento Ágil
Scrum e o Ambiente de Desenvolvimento ÁgilScrum e o Ambiente de Desenvolvimento Ágil
Scrum e o Ambiente de Desenvolvimento Ágilabacrazy
 
Encontro Locaweb
Encontro  LocawebEncontro  Locaweb
Encontro LocawebFabio Akita
 
Encontro Locaweb Curitiba
Encontro  Locaweb CuritibaEncontro  Locaweb Curitiba
Encontro Locaweb CuritibaFabio Akita
 
IPA Conhecendo XP
IPA Conhecendo XPIPA Conhecendo XP
IPA Conhecendo XPWildtech
 
Metodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de SoftwareMetodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de SoftwareAdolfo Neto
 
Não deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do frameworkNão deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do frameworkGiuseppe Lopes
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programmingceife
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aLeonardo Molinari
 
Gestão de Projeto de Desenvolvimento Agil(XP)
Gestão de Projeto de Desenvolvimento Agil(XP)Gestão de Projeto de Desenvolvimento Agil(XP)
Gestão de Projeto de Desenvolvimento Agil(XP)elliando dias
 
UnP Eng. Software - Aula 12
UnP Eng. Software - Aula 12UnP Eng. Software - Aula 12
UnP Eng. Software - Aula 12Hélio Medeiros
 
Contr avali engenharia de software-introdução
Contr avali   engenharia de software-introduçãoContr avali   engenharia de software-introdução
Contr avali engenharia de software-introduçãoFelipe Lyra
 
Desenvolvimento Ágil de Software com SCRUM
Desenvolvimento Ágil de Software com SCRUM Desenvolvimento Ágil de Software com SCRUM
Desenvolvimento Ágil de Software com SCRUM codebits
 

Semelhante a Experimente Programação eXtrema (20)

SCRUM e XP - Desenvolvimento Ágil de Software - Experiências e relatos
SCRUM e XP - Desenvolvimento Ágil de Software - Experiências e relatosSCRUM e XP - Desenvolvimento Ágil de Software - Experiências e relatos
SCRUM e XP - Desenvolvimento Ágil de Software - Experiências e relatos
 
Metodologias Ágeis
Metodologias ÁgeisMetodologias Ágeis
Metodologias Ágeis
 
Scrum
ScrumScrum
Scrum
 
Pesquisa científica - Benchmark
Pesquisa científica - BenchmarkPesquisa científica - Benchmark
Pesquisa científica - Benchmark
 
A linguagem de programação Erlang
A linguagem de programação ErlangA linguagem de programação Erlang
A linguagem de programação Erlang
 
Scrum e o Ambiente de Desenvolvimento Ágil
Scrum e o Ambiente de Desenvolvimento ÁgilScrum e o Ambiente de Desenvolvimento Ágil
Scrum e o Ambiente de Desenvolvimento Ágil
 
Programacao Extrema
Programacao ExtremaProgramacao Extrema
Programacao Extrema
 
Encontro Locaweb
Encontro  LocawebEncontro  Locaweb
Encontro Locaweb
 
Encontro Locaweb Curitiba
Encontro  Locaweb CuritibaEncontro  Locaweb Curitiba
Encontro Locaweb Curitiba
 
IPA Conhecendo XP
IPA Conhecendo XPIPA Conhecendo XP
IPA Conhecendo XP
 
Metodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de SoftwareMetodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de Software
 
Não deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do frameworkNão deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do framework
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2a
 
Gestão de Projeto de Desenvolvimento Agil(XP)
Gestão de Projeto de Desenvolvimento Agil(XP)Gestão de Projeto de Desenvolvimento Agil(XP)
Gestão de Projeto de Desenvolvimento Agil(XP)
 
UnP Eng. Software - Aula 12
UnP Eng. Software - Aula 12UnP Eng. Software - Aula 12
UnP Eng. Software - Aula 12
 
Contr avali engenharia de software-introdução
Contr avali   engenharia de software-introduçãoContr avali   engenharia de software-introdução
Contr avali engenharia de software-introdução
 
Aula1.pdf
Aula1.pdfAula1.pdf
Aula1.pdf
 
Desenvolvimento Ágil de Software com SCRUM
Desenvolvimento Ágil de Software com SCRUM Desenvolvimento Ágil de Software com SCRUM
Desenvolvimento Ágil de Software com SCRUM
 
Palestra Testes De Unidade Com JUnit
Palestra Testes De Unidade Com JUnitPalestra Testes De Unidade Com JUnit
Palestra Testes De Unidade Com JUnit
 

Mais de s4nx

Pra não dizer que não falei de devops
Pra não dizer que não falei de devopsPra não dizer que não falei de devops
Pra não dizer que não falei de devopss4nx
 
Além das big techs
Além das big techsAlém das big techs
Além das big techss4nx
 
Alem do google
Alem do googleAlem do google
Alem do googles4nx
 
Trabalhe de onde você quiser
Trabalhe de onde você quiserTrabalhe de onde você quiser
Trabalhe de onde você quisers4nx
 
Jenkins, o CI ao seu dispor
Jenkins, o CI ao seu disporJenkins, o CI ao seu dispor
Jenkins, o CI ao seu dispors4nx
 
Uma análise sobre gestão de pessoas baseada nos métodos ágeis
Uma análise sobre gestão de pessoas baseada nos métodos ágeisUma análise sobre gestão de pessoas baseada nos métodos ágeis
Uma análise sobre gestão de pessoas baseada nos métodos ágeiss4nx
 
Aplicação das abordagens Scrum e XP
Aplicação das abordagens Scrum e XPAplicação das abordagens Scrum e XP
Aplicação das abordagens Scrum e XPs4nx
 
Entregando software com DevOps Tools
Entregando software com DevOps ToolsEntregando software com DevOps Tools
Entregando software com DevOps Toolss4nx
 
Explicando DevOps
Explicando DevOpsExplicando DevOps
Explicando DevOpss4nx
 
Migrando de Shell para Ruby script
Migrando de Shell para Ruby scriptMigrando de Shell para Ruby script
Migrando de Shell para Ruby scripts4nx
 
Técnicas e ferramentas para manter a sanidade em uma startup
Técnicas e ferramentas para manter a sanidade em uma startupTécnicas e ferramentas para manter a sanidade em uma startup
Técnicas e ferramentas para manter a sanidade em uma startups4nx
 
Como manter um Ambiente Sustentável em Times Ágeis
Como manter um Ambiente Sustentável em Times ÁgeisComo manter um Ambiente Sustentável em Times Ágeis
Como manter um Ambiente Sustentável em Times Ágeiss4nx
 
Sistemas Operacionais *nix
Sistemas Operacionais *nixSistemas Operacionais *nix
Sistemas Operacionais *nixs4nx
 
Desenvolvimento de produtos web com ruby on rails
Desenvolvimento de produtos web com ruby on railsDesenvolvimento de produtos web com ruby on rails
Desenvolvimento de produtos web com ruby on railss4nx
 
A linguagem Ruby e o framework Rails
A linguagem Ruby e o framework RailsA linguagem Ruby e o framework Rails
A linguagem Ruby e o framework Railss4nx
 
Compartilhe!
Compartilhe!Compartilhe!
Compartilhe!s4nx
 
Ruby and Rails for womens
Ruby and Rails for womensRuby and Rails for womens
Ruby and Rails for womenss4nx
 
Mais humano que exato
Mais humano que exatoMais humano que exato
Mais humano que exatos4nx
 
Ruby e Rails
Ruby e RailsRuby e Rails
Ruby e Railss4nx
 
Bem antes de 2001
Bem antes de 2001Bem antes de 2001
Bem antes de 2001s4nx
 

Mais de s4nx (20)

Pra não dizer que não falei de devops
Pra não dizer que não falei de devopsPra não dizer que não falei de devops
Pra não dizer que não falei de devops
 
Além das big techs
Além das big techsAlém das big techs
Além das big techs
 
Alem do google
Alem do googleAlem do google
Alem do google
 
Trabalhe de onde você quiser
Trabalhe de onde você quiserTrabalhe de onde você quiser
Trabalhe de onde você quiser
 
Jenkins, o CI ao seu dispor
Jenkins, o CI ao seu disporJenkins, o CI ao seu dispor
Jenkins, o CI ao seu dispor
 
Uma análise sobre gestão de pessoas baseada nos métodos ágeis
Uma análise sobre gestão de pessoas baseada nos métodos ágeisUma análise sobre gestão de pessoas baseada nos métodos ágeis
Uma análise sobre gestão de pessoas baseada nos métodos ágeis
 
Aplicação das abordagens Scrum e XP
Aplicação das abordagens Scrum e XPAplicação das abordagens Scrum e XP
Aplicação das abordagens Scrum e XP
 
Entregando software com DevOps Tools
Entregando software com DevOps ToolsEntregando software com DevOps Tools
Entregando software com DevOps Tools
 
Explicando DevOps
Explicando DevOpsExplicando DevOps
Explicando DevOps
 
Migrando de Shell para Ruby script
Migrando de Shell para Ruby scriptMigrando de Shell para Ruby script
Migrando de Shell para Ruby script
 
Técnicas e ferramentas para manter a sanidade em uma startup
Técnicas e ferramentas para manter a sanidade em uma startupTécnicas e ferramentas para manter a sanidade em uma startup
Técnicas e ferramentas para manter a sanidade em uma startup
 
Como manter um Ambiente Sustentável em Times Ágeis
Como manter um Ambiente Sustentável em Times ÁgeisComo manter um Ambiente Sustentável em Times Ágeis
Como manter um Ambiente Sustentável em Times Ágeis
 
Sistemas Operacionais *nix
Sistemas Operacionais *nixSistemas Operacionais *nix
Sistemas Operacionais *nix
 
Desenvolvimento de produtos web com ruby on rails
Desenvolvimento de produtos web com ruby on railsDesenvolvimento de produtos web com ruby on rails
Desenvolvimento de produtos web com ruby on rails
 
A linguagem Ruby e o framework Rails
A linguagem Ruby e o framework RailsA linguagem Ruby e o framework Rails
A linguagem Ruby e o framework Rails
 
Compartilhe!
Compartilhe!Compartilhe!
Compartilhe!
 
Ruby and Rails for womens
Ruby and Rails for womensRuby and Rails for womens
Ruby and Rails for womens
 
Mais humano que exato
Mais humano que exatoMais humano que exato
Mais humano que exato
 
Ruby e Rails
Ruby e RailsRuby e Rails
Ruby e Rails
 
Bem antes de 2001
Bem antes de 2001Bem antes de 2001
Bem antes de 2001
 

Experimente Programação eXtrema

  • 6. Manifesto Ágil (2001). ● Indivíduos e interações entre eles mais que processos e ferramentas; Experimente Programação eXtrema ● Software em funcionamento mais que documentação abrangente; ● Colaboração com o cliente mais que negociação de contratos; ● Responder a mudanças mais que seguir um plano.
  • 8. XP não é um sistema operacional Experimente Programação eXtrema
  • 9. Experimente Programação eXtrema XP não é uma banda de rock
  • 10. XP não é um esporte ultra-radical Experimente Programação eXtrema ÉGUA!
  • 11. Experimente Programação eXtrema XP não é Xarope de Pupunha
  • 12. O que é XP XP é um processo de desenvolvimento de software voltado para: Experimente Programação eXtrema ● Projetos cujos requisitos são vagos e mudam com frequência; ● Desenvolvimento de sistemas orientados a objeto; ● Equipes pequenas, preferencialmente até 12 desenvolvedores; ● Desenvolvimento incremental (ou iterativo), onde o sistema começa a ser implementado logo no início do projeto e vai ganhando novas funcionalidades ao longo do tempo.
  • 13. Desenvolvimento de Software Experimente Programação eXtrema Tradicional e Ágil
  • 14. Desenvolvimento Tradicional ● Em cascata. ● Sequêncial. Experimente Programação eXtrema ● Tenta mecanizar os processos como uma linha de produção. ● Ex.: CMMI; MPS.BR.
  • 15. Desenvolvimento Ágil ● Em espiral. ● Iterativo. Experimente Programação eXtrema ● Software é criado de uma forma incremental. ● Ex.: DSDM, Scrum, FDD, ASD, XP, Crystal Family, Lean.
  • 16. Desenvolvimento Tradicional e Ágil ● Tradicional: custo de uma alteração no projeto aumenta Experimente Programação eXtrema durante o tempo. ● Ágil: custo de mudança é praticamente linear ao longo do tempo.
  • 17. Surgimento do eXtreme Programming ● Ano de 1986. ● Kent Beck e Ward Cunningham. Experimente Programação eXtrema ● Trabalhavam na Tektronixs. ● Com a linguagem Smalltalk, totalmente orientada à objetos. ● Praticavam: refactoring, programação em par, mudanças rápidas, feedback e testes constantes, desenvolvimento iterativo.
  • 18. Surgimento do eXtreme Programming ● Em 1996, Kent Beck foi chamado para “socorrer” o projeto da Experimente Programação eXtrema folha de pagamento da Chrysler, o C3. Foi onde XP foi colocado em prova, testado, aprimorado e batizado.
  • 19. Valores do XP Feedback Simplicidade Experimente Programação eXtrema Comunicação Coragem
  • 21. Práticas do XP ● Cliente Presente ● Código Coletivo ● Jogo do ● Código Padronizado Experimente Programação eXtrema Planejamento ● Design Simples ● Stand Up Meeting ● Metáfora ● Programação em Par ● Ritmo Sustentável ● Desenvolvimento ● Integração Contínua Guiado pelos Testes ● Releases Curtos ● Refactoring
  • 22. Práticas do XP Cliente Presente ● O cliente deve participar e conduzir o desenvolvimento a Experimente Programação eXtrema partir do feedback que recebe do sistema. ● Viabiliza a comunicação direta com a equipe.
  • 23. Práticas do XP Jogo do Planejamento ● Se dá no início de cada iteração (semanas) para Experimente Programação eXtrema priorizar as estórias (cartões das funcionalidades) que serão desenvolvidas.
  • 24. Práticas do XP Stand Up Meeting ● Reunião em pé realizada a cada manhã para avaliar o Experimente Programação eXtrema trabalho do dia anterior e priorizar o que será implementado no dia que se inicia. ● Dura em torno de 10 minutos.
  • 25. Práticas do XP Programação em Par ● Permite que o código seja revisado permanentemente, Experimente Programação eXtrema enquanto é construído. ● Excelente maneira de distribuir conhecimento entre a equipe.
  • 26. Práticas do XP Desenvolvimento Guiado pelos Testes ● Escreve-se classes de testes para cada funcionalidade antes Experimente Programação eXtrema de codificá-la. ● Cria-se somente funcionalidades que serão utilizadas. ● São armazenados para testar o sistema quando for necessário.
  • 27. Práticas do XP Refactoring ● É o ato de alterar o código sem afetar a funcionalidade que Experimente Programação eXtrema ele implementa. ● Os testes unitários são utilizados para verificar se o sistema continua funcionando.
  • 28. Práticas do XP Código Coletivo ● Os desenvolvedores têm acesso a todas as partes do código e Experimente Programação eXtrema podem modificá-lo (refactoring) se necessário, sem pedir permissão a outras pessoas.
  • 29. Práticas do XP Código Padronizado ● A equipe deve estabelecer padrões de codificação. Experimente Programação eXtrema ● Identação de código; ● Comentários; ● Variáveis e métodos estilo camelCase. ● Etc.
  • 30. Práticas do XP Design Simples ● Não criar generalizações, ou seja, não tente prever Experimente Programação eXtrema o futuro. ● Codificar o suficiente para a funcionalidade ser implementada.
  • 31. Práticas do XP Metáfora ● Metáforas têm o poder de transmitir idéias complexas de Experimente Programação eXtrema forma simples. ● Facilita a comunicação entre a equipe e o cliente.
  • 32. Práticas do XP Ritmo Sustentável ● Trabalhar com satisfação até oito horas por dia. Experimente Programação eXtrema ● Evitar horas-extras. ● Não levar trabalho para casa. ● Realizar uma coisa de cada vez. ● Fim de semana para lazer.
  • 33. Práticas do XP Integração Contínua ● Os pares devem integrar seus códigos com o restante do Experimente Programação eXtrema sistema diversas vezes ao dia. ● Para assegurar que ele continue funcionando, executam-se os testes unitários em busca de falhas.
  • 34. Práticas do XP Releases Curtos ● Release é um conjunto reduzido de funcionalidades que a Experimente Programação eXtrema equipe coloca em produção rapidamente, geralmente em meses, para o cliente utilizar. ● O cliente não espera o fim do projeto para utilizar o sistema.
  • 35. Características da Equipe ● Gerente de Projeto: é responsável pelos assuntos administrativos do projeto. Experimente Programação eXtrema ● Coach: é o responsável técnico do projeto. ● Analista de Teste: é responsável por ajudar o cliente a escrever os testes de aceitação, detectar defeitos no sistema. ● Redator Técnico: Ajuda a equipe de desenvolvimento a documentar o sistema. ● Desenvolvedor: é a pessoa que analisa, projeta e codifica o sistema.
  • 36. Quando o XP não deve ser utilizado ● Sistema baseado em premiação indivídual; ● Contratos de escopo fechado; Experimente Programação eXtrema ● Clientes que fazem questão de um grande número de artefatos; ● Escritório não adequados às práticas; ● Empresa que não aceita mudanças; ● Falta de apoio da diretoria; ● Avaliação da cultura organizacional;
  • 37. Experimente Programação eXtrema Empresas que experimentam ágil