Ir para o conteúdo principal
Extreme Programming
Comunicação, comprometimento mútuo e
qualidade com agilidade
Hélio Medeiros
   Analista de Sistemas
     SINFO - UFRN
Hélio Medeiros
                      Analista de Sistemas
                        SINFO - UFRN




Blog: http://heliomedeiros.com
Email: helio.cabralmedeiros@gmail.com
COMO ESTÃO NOSSOS
  PROJETOS ?!?!
JÁ SABEMOS
LIDERAR...COLABORAR...
      ESTIMAR...
MAS AINDA NÃO ESTAMOS
 OBTENDO QUALIDADE...
Scrum Flácido !!
Scrum Flácido !!

                                                           descuido com a qualidade

                                                                          débito técnico

                                                               técnicas de gerência


                                                                   falta prática técnica


http://www.flickr.com/photos/adewale_oshineye/2933030620/
COMO MELHORAR ?!?!
Nossa Aula

• Parte 1 - Autores e obra o XP
• Parte 2 - Problema Básico
• Parte 3 - Programação quotidiana
• Parte 4 - Economia e desenvolvimento
• Parte 5 - Quatro Valores
1   Autores e obra o XP
80’s
                                               Tektronixs



        Kent Beck
Criador do Extreme Programming




                            Ward Cunningham
                         Criador do Extreme Programming e
                                  do primeiro Wiki
80’s
                                               Tektronixs

                                                                            feedback
                                                            quick changes
                                                                                       tests
        Kent Beck
Criador do Extreme Programming
                                       par programming                Smalltalk
                                                                               quick changes
                                                             refactoring




                            Ward Cunningham
                         Criador do Extreme Programming e
                                  do primeiro Wiki
1996




        Kent Beck
                                             C3
                                      Sistema de Compensação
Criador do Extreme Programming
                                         Abrangente Chrysler




                            Ward Cunningham
                         Criador do Extreme Programming e
                                  do primeiro Wiki
1996




        Kent Beck
                                             C3
                                      Sistema de Compensação
Criador do Extreme Programming
                                         Abrangente Chrysler




                            Ward Cunningham
                         Criador do Extreme Programming e
                                  do primeiro Wiki
2   Problema básico
Deslizes no cronograma
Deslizes no cronograma


prioridades    feedback
               XP     aguarde e confie
  release
              ciclos curtos



                                        http://www.flickr.com/photos/pinkuiro/173581499/
Projeto cancelado
Projeto cancelado


    menos erros
                        mais valor
                 XP
menor escopo
               cliente define



                                     http://www.flickr.com/photos/alexharries/2615962049/
“Azedou”
“Azedou”


Integração contínua
                XP sem redundância
automatização
                testes



                                 http://www.flickr.com/photos/amandaboucinhas/2367208579/
Taxa de erros
Taxa de erros


   foco do cliente nos testes
               XP
foco do desenvolvedor nos testes



                                   http://www.flickr.com/photos/ultra_violet/3667163079/
Negócio mal
compreendido
Negócio mal
   compreendido

              aprendizado aplicado
especificação refinada
                       XP

    cliente integrante do time



                                     http://www.flickr.com/photos/byspice/4083185848/
Modificações no negócio
Modificações no negócio


           a equipe não difere

o cliente aprende    XP

            encurta o ciclo


                                 http://www.flickr.com/photos/marcde/2606717947/
Falsa riqueza de funções
Falsa riqueza de funções



o cliente define    XP

           só priorizado


                           http://www.flickr.com/photos/68888883@N00/136864018/
Rotatividade da equipe
Rotatividade da equipe


               troca de experiências
      reduz o isolamento

retorno estimativa   XP

          equipe responsável


                                       http://www.flickr.com/photos/photomishdan/3528281481/
3   Programação
    quotidiana
Ciclo de Vida XP ?
Ciclo de Vida XP ?
EXPLORAÇÃO




Histórias
 Histórias
  Histórias
Ciclo de Vida XP ?
EXPLORAÇÃO    PLANEJAMENTO




               Histórias para a
               próxima Iteração

Histórias
 Histórias
  Histórias
Ciclo de Vida XP ?
EXPLORAÇÃO    PLANEJAMENTO           ITERAÇÕES ATÉ A ENTREGA           ENTREGA




                                     Programação em Par
               Histórias para a                     Planejar
               próxima Iteração   Analise Design               teste
                                                     teste
Histórias
 Histórias
  Histórias               FeedBack
                                              Integração                Release
                                  Teste        Continua


                                                                        Entrega
                                                                        Semanal
                                     Repositório
                                     de Código
Standing meeting

   Episódio XP
                                                 alguém falou na reunião ?




                                                                               http://www.flickr.com/photos/mytripsmypics/3735005877/




                                                pode me ajudar ? CLARO

http://www.flickr.com/photos/elsvo/3043903654/




                                                                             http://www.flickr.com/photos/jeffclow/307254654/
#1                                  #2

                classes                                testes ?
 O QUE FOI FEITO!                O QUE PRECISA SER FEITO!
                testes                                campos?


           #3                                #4
ALGO SEMELHANTE?
                      sim!                         deu certo ?
                                   NOVOS TESTES!
                    refatorar!                   implementar!
                     testar!                       novas idéias!
Episódio XP
           #1                                  #2

                classes                                testes ?
 O QUE FOI FEITO!                O QUE PRECISA SER FEITO!
                testes                                campos?


           #3                                #4
ALGO SEMELHANTE?
                      sim!                         deu certo ?
                                   NOVOS TESTES!
                    refatorar!                   implementar!
                     testar!                       novas idéias!
Episódio XP
                                                        integrando




                                                                                      http://nvie.com/wp-content/




                                                      TUDO CERTO

http://www.flickr.com/photos/robbyrussell/2674833047




                                                                     http://www.flickr.com/photos/pcalcado/4132421818/
4   Economia e
    desenvolvimento
Software mais valioso
Software mais valioso




              http://www.flickr.com/photos/wcampelo/115847668/
Software mais valioso


Entradas - Saídas = $$
   gastando menos
       ganhando mais
           ganhando mais tarde
      mantendo o projeto vivo

                                 http://www.flickr.com/photos/wcampelo/115847668/
Software mais valioso
Software mais valioso


         OPÇÕES
Ganhar mesmo abandonando
        Ganhar trocando
               Ganhar adiando
          Ganhar crescendo

                                http://www.flickr.com/photos/werdinsel/3970430829
INCERTEZAS!!
investimento inicial menor



oportunidade para mudar   XP!!        avançar mais rapidamente



              feedback do progresso
5   Quatro Valores
Valores
Valores

                    COMUNICAÇÃO

 muitas práticas




muita comunicação


  menos falhas

                          http://www.improveit.com.br/xp
Valores
• Simplicidade: O XP e suas equipes utilizam o conceito de
  simplicidade em inúmeros aspectos do projeto para assegurar a
  concentração na realização, primeiro, em apenas aquilo que é
  CLARAMENTE NECESSÁRIO, em detrimento do que PODERIA vir a ser
  NECESSÁRIO, mas ainda não se provou como tal.



                                                      45 %
                                     +            Jamais são usadas


                                          19 %
                                    Raramente são usadas



                                         64 %
                            Não precisavam ser implementadas
Valores
     • Simplicidade: O XP e suas equipes utilizam o conceito de
          simplicidade em inúmeros aspectos do projeto para assegurar a
          concentração na realização, primeiro, em apenas aquilo que é
          CLARAMENTE NECESSÁRIO, em detrimento do que PODERIA vir a ser
          NECESSÁRIO, mas ainda não se provou como tal.



                                                                            45 %
                                                           +            Jamais são usadas


                                                                19 %
                                                          Raramente são usadas



                                                               64 %
                                                  Não precisavam ser implementadas
http://www.flickr.com/photos/nopipno/1256874374/
Valores
Valores

                                                          FEEDBACK




http://www.flickr.com/photos/pcalcado/4132421818/




                                                   http://www.flickr.com/photos/pcalcado/4132421644/
Valores
Valores


               Usuários
         - Não obter oque pediram
            - Pedir a coisa errada
      - Pagar demais por muito pouco
      - Jamais ver um plano relevante
    - Não saber oque está acontecendo
- Não serem capazes de reagir as mudanças
Valores

                                                  CORAGEM
               Usuários
         - Não obter oque pediram
            - Pedir a coisa errada
      - Pagar demais por muito pouco
      - Jamais ver um plano relevante
    - Não saber oque está acontecendo
- Não serem capazes de reagir as mudanças
                                                 Desenvolvedores
                                          - Serem solicitados a mais do que sabem
                                       - Realizar solicitações que não façam sentido
                                              - Ficarem tecnicamente defasados
                                        - Não receber com clareza as necessidades
                                         - Sacrificar qualidade em função do tempo
                                           - Não ter tempo para fazer bom trabalho
Valores
Valores




RESPEITO




           http://www.flickr.com/photos/shoot-art/4285855885/