Metodologias Ágeis – Scrum ou eXtreme Programming (XP)?

Está na moda e a cada congresso, reunião com clientes e grupos de usuários que participo vejo mais e mais arquitetos, desenvolvedores, gerentes de projetos e outros profissionais da área de tecnologia interessados por Metodologias Ágeis. Atualmente temos uma variedade de metodologias, sendo Scrum e Extreme Programming (XP) as mais conhecidas. Considero Scrum e XP muito práticos e nada burocráticos, se você está buscando melhorar o seu processo de desenvolvimento, sem dúvida é bom começar a pesquisa sobre ambos.

Muitos acham que Scrum e XP conflintam no mundo Agile, pelo contrário eles se complementam. Scrum atua no lado gerencial do projeto fazendo com que o produto especificado seja entregue ao final da iteração. Já o XP atua nas práticas de engenharia de software a serem aplicadas no projeto  como: test-driven development, refactoring, pair programming, simple design, etc. Além disso Scrum pode ser aplicado além dos projetos de software, pois ele não especifica prática como pair programming ou test driven development, mas especifica como gerenciar os requisitos ou novos recursos solicitados pelo cliente.

Eu não vou detalhar ambas as metodologias neste post, existe muita informação na Internet que lhe trará uma rápida introdução sobre as duas, Google é seu amigo.

Scrum e Extreme Programming sem dúvida estão bem alinhados, se você conhece equipes que utilizam uma das duas metodologias certamente seria difícil decidir por qual delas optar. As diferenças existem e são pequenas, mas são importantes.

  • Equipes Scrum tipicamente trabalham em iterações (sprints) que vão de 2 semanas até 1 mês. As equipes XP também trabalham em iterações que vão de 1 a 2 semanas.
  • Equipes Scrum não permitem alterações em seus sprints, uma vez definido o sprint na reunião de planejamento e acordado os itens do backlog a serem entregues, estes itens não serão alterados até o final do sprint. XP é mais flexível em relação a mudanças no sprint, desde que o time não tenha começado a trabalhar em um dos itens anteriormente definidos, este item pode ser trocado por outro item de período de implementação equivalente.
  • Equipes XP trabalham em ordem de prioridade, recursos a serem desenvolvidos são priorizados pelo cliente e o time é obrigado a seguir esta ordem. Ao contrário do Scrum o product owner define a prioridade do product backlog, mas o time irá definir a sequência de implementação dos itens do backlog.
  • Scrum não estabelece quaisquer práticas de engenharia de software, XP sim. Estas práticas são extremamente importantes no desenvolvimento de software e algo que eu particularmente gosto bastante, particularmente desenvolvimento dirigido por testes, foco em testes automatizados design simples, refactoring e outros.

São pequenos detalhes que podem fazer uma grande diferença na sua equipe de desenvolvimento.

Sempre queremos melhorar nosso processo de desenvolvimento, mas não sabemos por onde começar, tantas siglas, metodologias, processos, etc. que achamos tudo muito complicado e isso acaba desestimulando. Minha recomendação é começar com Scrum, simples, efetivo, fácil de implementar, envolve os membros da sua equipe e os resultados aparecem em pouco tempo.

Depois vá para o XP, dependendo do que você tem hoje no seu processo vai descobrir que algumas partes do XP já são utilizadas pela sua equipe, isso irá ajudar no processo de implementação, pois sua equipe não se sentira mandada a fazer algo, lembre-se acima de tudo estamos lidando com pessoas.

Nos meus próximos posts sobre metodologias ágeis vou abordar alguns pontos do Scrum e como complementá-lo na gestão de projetos, também vou falar sobre a utilização prática das “práticas do XP”, coloco entre aspas porque as práticas não são exclusivas ou foram inventadas pelo XP e sim fazem parte da sua metodologia.

Até a próxima.

7 respostas
  1. Rubem Azenha
    Rubem Azenha says:

    Na minha opinião o Scrum é uma versão meio covarde do Scrum. Quem leu o livro Extreme Programming Explained tem uma idéia de desenvolvimento ágil completamente diferente de quem estudou Scrum, principalmente pela parte de valores e principios.

    O bom do Scrum é que da pra entender o basico Scrum numa conversinha de 30 minutos. Mas os verdadeiros ganhos do desenvolvimento ágil se dá quando se segue alguns dos valores e principios do XP. O Scrum ficou popular por que qualquer mané sem um pingo de conhecimento técnico ou conhecimentos de engenharia de software consegue entender e aplicar. Já o XP é mais complexo justamente por ser mais completo. Não acho que falta nada no XP que seja coberto pelo Scrum.

    Mas eu gostei da sua dica de começar a aplicar XP em ambientes que aplicaram Scrum.

    Responder
  2. Nelson Lima
    Nelson Lima says:

    E a afinal a embarcadero utiliza qual metodologia? um misto das duas? Embora a sistematização fazer o software se desenvolver ao longo do tempo, acredito que grandes ideias não surgem sempre na reunião do planejamento.

    Responder
    • Andreano Lanusse
      Andreano Lanusse says:

      Nos utilizamos Scrum, justamente porque novas idéias aparecem no meio do caminho, claro que temos um planejamento inicial, mas as coisas mudam no meio e isso não quer dizer falta de planejamento, ainda mais no nosso seguimento.

      Responder
  3. Daniel Braz de Oliveira
    Daniel Braz de Oliveira says:

    Bom dia Andreano. Participei do Delphi Metting em Curitiba. Ja tenho uma licença do delphi4php 1.0.
    Reiniciei o aprendizado com o radphp, mas meu amigo, tem algo errado, pois os exemplos mais simples não funcionam.
    Especialmente os que acessam banco de dados. O form é apresentado, botoes, outros componentes, mas quando tento executar, simplesmente nada acontece.
    Onde eu poderia conseguir um auxilio?
    Tem alguma configuração especifica ?
    Tenho salvo e feito o deploy na pasta httdocs do apache. Uso a versão trial e W7
    Fico no aguardo e ja agradeço a sua atenção.

    Daniel.

    Responder

Trackbacks & Pingbacks

  1. [...] This post was mentioned on Twitter by Elvis Fusco, Lucas Simões. Lucas Simões said: Metodologias Ágeis – #Scrum ou eXtreme Programming (#XP)? http://trunc.it/a0xl7 [...]

  2. [...] This post was mentioned on Twitter by Andreano Lanusse, F. Gustavo Flôres. F. Gustavo Flôres said: RT @andreanolanusse: Blog post: Metodologias Ágeis – Scrum ou eXtreme Programming (XP)? http://bit.ly/9Kf7Px [...]

Deixe uma resposta

Quer participar da discussão?
Fique a vontade para contribuir!

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>