SlideShare a Scribd company logo
1 of 38
Download to read offline
Paulo Moura
Web Developer
studiosecret.com.br/blog
tasafo.wordpres.com
Extreme Programming
Por quê?
Projetos que não são
entregues no prazo.

Gastos que superam
orçamento.
Funcionalidades que não
ajudam o usuário.

Baixa qualidade dos
sistemas.
Isso a 40 anos atrás
Não há um único
desenvolvimento, sendo
em tecnologia ou
metodologias de
gerenciamento que
prometa uma melhoria de
uma ordem de grandeza em
uma década de
produtividade.
NO SILVER BULLET
Complexidade

   Essência do software
   “programar não é apenas
   um comportamento humano;
    é comportamento humano
   complexo.” Gerald Weinberg
Conformidade

     sistemas de software não
     costumam existir em
     conformidade com
     princípios fundamentais
     e estáveis.
Maleabilidade

  “Software, por sua vez, é apenas
  pensamento, o que o torna
  infinitamente maleável.”
  Fred Brooks
Invisibilidade

   “Esta falta não apenas retarda o
   processo de design dentro de
   uma mente, como também
   prejudica severamente a
   comunicação entre mentes
   diferentes.” Fred Brooks
Inexistência de
princípios básicos
Rápida evolução
  tecnológica
Baixo custo de
  manufatura
METÁFORAS
Fábricas de software
Frederick Taylor
Trabalhador do
           conhecimento
 Permitir que os próprios trabalhadores
    se auto-gerenciem;
   Assegurar que os trabalhadores tenham
    a oportunidade de inovar;
   Aprendizado e ensino contínuo;
   Qualidade é um fator tão o mais
    importante que a quantidade;
   Os trabalhadores do conhecimento
    precisam ser tratados como “ativos” e
   não como “custo”;
Motivação para um
        programador
 A satisfação de montar coisas;
 A satisfação de montar coisas que são
  úteis para outras pessoas;
 O fascínio de montar objetos que se
  assemelham a quebra-cabeças;
 A satisfação de estar sempre
  aprendendo coisas não repetitivas;
 O prazer de trabalhar em um meio tão
  maleável – pensamento puro – que,
  apesar de maleável, existe, se move e
  trabalha de uma forma diferente dos
  objetos do mundo físico;
Lean

 Eliminar desperdícios;
 Amplificar o aprendizado;
 Adiar decisões ao máximo;
 Entregar o mais rapidamente
  possível;
 Delegar poder à equipe;
 Incorporar integridade;
 Ver o todo;
RUP
Manifesto Ágil

Indivíduos e interações ao invés de
processos e ferramentas;
Software funcionando ao invés de
documentação abrangente;
Colaboração com o cliente ao invés
de negociação de contratos e
Responder a mudanças ao invés de
seguir um plano.
Extreme Programming

Refatoração
Programação em par
Mudanças rápidas
Feedback constatante do cliente
Testes automatizados
Programação em Par
TDD
Refactoring
TDD
Cliente Presente
Design Iterativo e
    Incremental
Stand up meeting
Código Coletivo
Integração Contínua
Coragem
Coragem
Obrigado

      @paulociecomp
 paulociecomp@gmail.com
studiosecret.com.br/blog

 Links interessantes:
http://improveit.com.br/xp
       tasafo.org

More Related Content

What's hot

Palestra PUC-RIo - Gestão Ágil de Projetos
Palestra PUC-RIo - Gestão Ágil de ProjetosPalestra PUC-RIo - Gestão Ágil de Projetos
Palestra PUC-RIo - Gestão Ágil de ProjetosRafael Targino
 
Gerenciamento de equipes no desenvolvimento de software
Gerenciamento de equipes no desenvolvimento de softwareGerenciamento de equipes no desenvolvimento de software
Gerenciamento de equipes no desenvolvimento de softwareRoberto Brandini
 
Designer na sprint: um mal necessário
Designer na sprint: um mal necessário Designer na sprint: um mal necessário
Designer na sprint: um mal necessário Rafael Coronel
 
[CEFETMG] [ESw] Aula 3 - Processos tradicionais x metodologia ágil
[CEFETMG] [ESw] Aula 3 - Processos tradicionais x metodologia ágil[CEFETMG] [ESw] Aula 3 - Processos tradicionais x metodologia ágil
[CEFETMG] [ESw] Aula 3 - Processos tradicionais x metodologia ágilUniversidade Federal de Minas Gerais
 
Formação de Equipes de Alto Desempenho para Desenvolvimento de Software: O Pa...
Formação de Equipes de Alto Desempenho para Desenvolvimento de Software: O Pa...Formação de Equipes de Alto Desempenho para Desenvolvimento de Software: O Pa...
Formação de Equipes de Alto Desempenho para Desenvolvimento de Software: O Pa...Alejandro Olchik
 
Engenharia de Software I - Aula 8
Engenharia de Software I - Aula 8Engenharia de Software I - Aula 8
Engenharia de Software I - Aula 8Alessandro Almeida
 
Product Discovery: envolvendo o time e cliente para co-criar soluções asserti...
Product Discovery: envolvendo o time e cliente para co-criar soluções asserti...Product Discovery: envolvendo o time e cliente para co-criar soluções asserti...
Product Discovery: envolvendo o time e cliente para co-criar soluções asserti...Glauber Lænder
 
Eduardo Rocha - Criando produtos invisíveis
Eduardo Rocha - Criando produtos invisíveis   Eduardo Rocha - Criando produtos invisíveis
Eduardo Rocha - Criando produtos invisíveis Agile Trends
 
Trabalho pds libre office 2
Trabalho pds libre office 2Trabalho pds libre office 2
Trabalho pds libre office 2Edinaldo Mendes
 
Criando times ágeis
Criando times ágeisCriando times ágeis
Criando times ágeisFabio Witt
 
Princípios ágeis - UFRGS 2013
Princípios ágeis - UFRGS 2013Princípios ágeis - UFRGS 2013
Princípios ágeis - UFRGS 2013Lourenco P Soares
 

What's hot (19)

Palestra PUC-RIo - Gestão Ágil de Projetos
Palestra PUC-RIo - Gestão Ágil de ProjetosPalestra PUC-RIo - Gestão Ágil de Projetos
Palestra PUC-RIo - Gestão Ágil de Projetos
 
Manifesto Agil
Manifesto AgilManifesto Agil
Manifesto Agil
 
Gerenciamento de equipes no desenvolvimento de software
Gerenciamento de equipes no desenvolvimento de softwareGerenciamento de equipes no desenvolvimento de software
Gerenciamento de equipes no desenvolvimento de software
 
Designer na sprint: um mal necessário
Designer na sprint: um mal necessário Designer na sprint: um mal necessário
Designer na sprint: um mal necessário
 
Ferramentas e ritos
Ferramentas e ritosFerramentas e ritos
Ferramentas e ritos
 
[CEFETMG] [ESw] Aula 3 - Processos tradicionais x metodologia ágil
[CEFETMG] [ESw] Aula 3 - Processos tradicionais x metodologia ágil[CEFETMG] [ESw] Aula 3 - Processos tradicionais x metodologia ágil
[CEFETMG] [ESw] Aula 3 - Processos tradicionais x metodologia ágil
 
Formação de Equipes de Alto Desempenho para Desenvolvimento de Software: O Pa...
Formação de Equipes de Alto Desempenho para Desenvolvimento de Software: O Pa...Formação de Equipes de Alto Desempenho para Desenvolvimento de Software: O Pa...
Formação de Equipes de Alto Desempenho para Desenvolvimento de Software: O Pa...
 
Design sprint - Herói ou Vilão?
Design sprint - Herói ou Vilão?Design sprint - Herói ou Vilão?
Design sprint - Herói ou Vilão?
 
Engenharia de Software I - Aula 8
Engenharia de Software I - Aula 8Engenharia de Software I - Aula 8
Engenharia de Software I - Aula 8
 
Manifesto Ágil
Manifesto ÁgilManifesto Ágil
Manifesto Ágil
 
Metodos Ageis
Metodos AgeisMetodos Ageis
Metodos Ageis
 
Product Discovery: envolvendo o time e cliente para co-criar soluções asserti...
Product Discovery: envolvendo o time e cliente para co-criar soluções asserti...Product Discovery: envolvendo o time e cliente para co-criar soluções asserti...
Product Discovery: envolvendo o time e cliente para co-criar soluções asserti...
 
Vantagens agil 3
Vantagens agil 3Vantagens agil 3
Vantagens agil 3
 
Eduardo Rocha - Criando produtos invisíveis
Eduardo Rocha - Criando produtos invisíveis   Eduardo Rocha - Criando produtos invisíveis
Eduardo Rocha - Criando produtos invisíveis
 
Trabalho pds libre office 2
Trabalho pds libre office 2Trabalho pds libre office 2
Trabalho pds libre office 2
 
Criando times ágeis
Criando times ágeisCriando times ágeis
Criando times ágeis
 
Carreira2 0
Carreira2 0Carreira2 0
Carreira2 0
 
Agile explicacao 18
Agile explicacao 18Agile explicacao 18
Agile explicacao 18
 
Princípios ágeis - UFRGS 2013
Princípios ágeis - UFRGS 2013Princípios ágeis - UFRGS 2013
Princípios ágeis - UFRGS 2013
 

Similar to Extreme Programming: Uma abordagem ágil para entregar valor ao cliente

Lean Thinking e Agile para desenvolvimento de software
Lean Thinking e Agile para desenvolvimento de softwareLean Thinking e Agile para desenvolvimento de software
Lean Thinking e Agile para desenvolvimento de softwareTiago França
 
DevOps.pdf
DevOps.pdfDevOps.pdf
DevOps.pdfPyCaxias
 
Palestra Geinfo 2011 - Desenvolvimento ágil no governo
Palestra Geinfo 2011 - Desenvolvimento ágil no governoPalestra Geinfo 2011 - Desenvolvimento ágil no governo
Palestra Geinfo 2011 - Desenvolvimento ágil no governoDextra
 
Introdução Metodologias áGeis Para Desenvolvimento De Software
Introdução  Metodologias áGeis Para Desenvolvimento De SoftwareIntrodução  Metodologias áGeis Para Desenvolvimento De Software
Introdução Metodologias áGeis Para Desenvolvimento De SoftwareMarcos Cardoso
 
Desmitificando o ágil e o scrum
Desmitificando o ágil e o scrumDesmitificando o ágil e o scrum
Desmitificando o ágil e o scrumScumpb
 
Agilidade - Palestra -Prodabel
Agilidade - Palestra -ProdabelAgilidade - Palestra -Prodabel
Agilidade - Palestra -ProdabelYoris Linhares
 
Desenvolvimento de Software na Myfreecomm
Desenvolvimento de Software na MyfreecommDesenvolvimento de Software na Myfreecomm
Desenvolvimento de Software na MyfreecommRafael Lima
 
Desenvolvimento ágil de software
Desenvolvimento ágil de softwareDesenvolvimento ágil de software
Desenvolvimento ágil de softwarediogenes.araujo
 
The Mythical Man-Month
The Mythical Man-MonthThe Mythical Man-Month
The Mythical Man-Monthpizzol
 
The Mythical Man-Month
The Mythical Man-MonthThe Mythical Man-Month
The Mythical Man-Monthpizzol
 
SeminarioGerenciamentoAgil (1).ppt
SeminarioGerenciamentoAgil (1).pptSeminarioGerenciamentoAgil (1).ppt
SeminarioGerenciamentoAgil (1).pptDavidMaciel34
 
Analise de gerenciamento_de_projeto_de_software_utilizando_metodologia_agil_x...
Analise de gerenciamento_de_projeto_de_software_utilizando_metodologia_agil_x...Analise de gerenciamento_de_projeto_de_software_utilizando_metodologia_agil_x...
Analise de gerenciamento_de_projeto_de_software_utilizando_metodologia_agil_x...Elisangela Paulino
 

Similar to Extreme Programming: Uma abordagem ágil para entregar valor ao cliente (20)

Agile User Experience
Agile User ExperienceAgile User Experience
Agile User Experience
 
Métodos Ágeis - Aula02
Métodos Ágeis - Aula02Métodos Ágeis - Aula02
Métodos Ágeis - Aula02
 
Lean Thinking e Agile para desenvolvimento de software
Lean Thinking e Agile para desenvolvimento de softwareLean Thinking e Agile para desenvolvimento de software
Lean Thinking e Agile para desenvolvimento de software
 
DevOps.pdf
DevOps.pdfDevOps.pdf
DevOps.pdf
 
Feature Driven Development
Feature Driven DevelopmentFeature Driven Development
Feature Driven Development
 
Princípios Ágeis
Princípios ÁgeisPrincípios Ágeis
Princípios Ágeis
 
Manifesto Ágil.pdf
Manifesto Ágil.pdfManifesto Ágil.pdf
Manifesto Ágil.pdf
 
Palestra Geinfo 2011 - Desenvolvimento ágil no governo
Palestra Geinfo 2011 - Desenvolvimento ágil no governoPalestra Geinfo 2011 - Desenvolvimento ágil no governo
Palestra Geinfo 2011 - Desenvolvimento ágil no governo
 
Lean software
Lean software Lean software
Lean software
 
Introdução Metodologias áGeis Para Desenvolvimento De Software
Introdução  Metodologias áGeis Para Desenvolvimento De SoftwareIntrodução  Metodologias áGeis Para Desenvolvimento De Software
Introdução Metodologias áGeis Para Desenvolvimento De Software
 
Desmitificando o ágil e o scrum
Desmitificando o ágil e o scrumDesmitificando o ágil e o scrum
Desmitificando o ágil e o scrum
 
Refactoring
RefactoringRefactoring
Refactoring
 
Agilidade - Palestra -Prodabel
Agilidade - Palestra -ProdabelAgilidade - Palestra -Prodabel
Agilidade - Palestra -Prodabel
 
Princípios Ágeis
Princípios ÁgeisPrincípios Ágeis
Princípios Ágeis
 
Desenvolvimento de Software na Myfreecomm
Desenvolvimento de Software na MyfreecommDesenvolvimento de Software na Myfreecomm
Desenvolvimento de Software na Myfreecomm
 
Desenvolvimento ágil de software
Desenvolvimento ágil de softwareDesenvolvimento ágil de software
Desenvolvimento ágil de software
 
The Mythical Man-Month
The Mythical Man-MonthThe Mythical Man-Month
The Mythical Man-Month
 
The Mythical Man-Month
The Mythical Man-MonthThe Mythical Man-Month
The Mythical Man-Month
 
SeminarioGerenciamentoAgil (1).ppt
SeminarioGerenciamentoAgil (1).pptSeminarioGerenciamentoAgil (1).ppt
SeminarioGerenciamentoAgil (1).ppt
 
Analise de gerenciamento_de_projeto_de_software_utilizando_metodologia_agil_x...
Analise de gerenciamento_de_projeto_de_software_utilizando_metodologia_agil_x...Analise de gerenciamento_de_projeto_de_software_utilizando_metodologia_agil_x...
Analise de gerenciamento_de_projeto_de_software_utilizando_metodologia_agil_x...
 

More from Paulo Moura

Segurança em aplicações web
Segurança em aplicações webSegurança em aplicações web
Segurança em aplicações webPaulo Moura
 
Desktop, Web e Mobile
Desktop, Web e MobileDesktop, Web e Mobile
Desktop, Web e MobilePaulo Moura
 
Orientação a Objetos na prática
Orientação a Objetos na práticaOrientação a Objetos na prática
Orientação a Objetos na práticaPaulo Moura
 
Skills de um dev agil
Skills de um dev agilSkills de um dev agil
Skills de um dev agilPaulo Moura
 
Praticas Ágeis para desenvolvimento de Software
Praticas Ágeis para desenvolvimento de SoftwarePraticas Ágeis para desenvolvimento de Software
Praticas Ágeis para desenvolvimento de SoftwarePaulo Moura
 
Safo rico safo pobre
Safo rico safo pobreSafo rico safo pobre
Safo rico safo pobrePaulo Moura
 
Qualidade de Software - Uma visão de desenvolvedor
Qualidade de Software - Uma visão de desenvolvedorQualidade de Software - Uma visão de desenvolvedor
Qualidade de Software - Uma visão de desenvolvedorPaulo Moura
 

More from Paulo Moura (8)

Segurança em aplicações web
Segurança em aplicações webSegurança em aplicações web
Segurança em aplicações web
 
Desktop, Web e Mobile
Desktop, Web e MobileDesktop, Web e Mobile
Desktop, Web e Mobile
 
Orientação a Objetos na prática
Orientação a Objetos na práticaOrientação a Objetos na prática
Orientação a Objetos na prática
 
Skills de um dev agil
Skills de um dev agilSkills de um dev agil
Skills de um dev agil
 
Praticas Ágeis para desenvolvimento de Software
Praticas Ágeis para desenvolvimento de SoftwarePraticas Ágeis para desenvolvimento de Software
Praticas Ágeis para desenvolvimento de Software
 
Software art
Software artSoftware art
Software art
 
Safo rico safo pobre
Safo rico safo pobreSafo rico safo pobre
Safo rico safo pobre
 
Qualidade de Software - Uma visão de desenvolvedor
Qualidade de Software - Uma visão de desenvolvedorQualidade de Software - Uma visão de desenvolvedor
Qualidade de Software - Uma visão de desenvolvedor
 

Extreme Programming: Uma abordagem ágil para entregar valor ao cliente