SlideShare uma empresa Scribd logo
Aplicando  eXtreming Programing  ao cenário do  Borland ALM Edgar Silva Argos Tecnologia
Agenda Extreming Programing Entendendo Extreming Programing Observando seus papéis Relação entre XP e o Borland ALM
Kent Beck , criador da XP Extreme Programming é uma  Metodologia Ágil  para equipes pequenas e médias desenvolvendo software com requisitos vagos e em constante mudança.
O que é XP ? eXtreming Programing Baseada em 4 princípios: Simplicidade Comunicação Feedback Coragem
Simplicidade O coração de XP
Simplicidade Simplicidade do Início ao Fim do Projeto Modelos Simples Codificação Simples Testes simplificados
Não tendo simplicidade ... XP
Simplicidade Como garantir que as alterações não causem impacto em outras áreas? Como não alterar códigos com bases nos requisitos alterados sem alterar custos? Modelo   e Códigos Simples Códigos Simples == Refactoring Simples
Comunicação Item Imprescindível  para o funcionamento de eXtreming Programing.
Comunicação Testes Unitários  Código X Programador Pair Programing (Programação em Par)  Programador X Programador Cliente
Testes Unitários Com bases em  códigos simples , os testes serão simplificados e precisos. Oferecem o estado e comportamento da aplicação.
Pair Programing Um das maiores  Preocupações Das empresas antes de  Adotarem  XP
Pair Programing Programação em Pares Programadores trabalhando lado-a-lado, colaborando o mesmo design, algoritimo, código ou teste. Um programador, o “piloto”, tem o controle do teclado e mouse , ativamente implementa o programa. O outro, o “observador” ou co-piloto, continuamente observa o trabalho do “piloto” para identificar defeitos táticos e também pensa na direção do trabalho. Periodicamente, o par é trocado, para promover maiores vantagens.  --  Laurie Williams   North Carolina State University Computer Science
Pair Programing  Maiores Indagações Gerenciais Por que pagar 2 para fazer o trabalho de 1 ? Como? Vou ter que contar com dois programadores? Assim o prazo será o dobro? Não tenho mesas suficientes...
Dados relevantes ao Pair Programing Programador Solo Programadores (Par) Tarefa 1 – Estimativa de Tempo 57% - Mais velocidade com PP Programador Solo Programadores (Par) Tarefa 1 – Erros encontrados 2 Vezes menos erros com PP
Dados relevantes ao Pair Programing Complexidade De Códigos Velocidade no Término da Solução Programador Solo Programadores Em Par Término
E quando falamos de Custos Desenvolver Tarefa N  - Programador Solo Teste Ok Foi o que sua empresa orçou e cobrou. Início Entrega Desenvolver Tarefa N  - Programadores em Par Teste Ok Foi o que sua empresa orçou e cobrou. Início Entrega Desenvolvimento  Testes  Entrega Quem paga isso?
O que Pair Programing trás de benefícios Menos Erros Velocidade em codificação Transferência de Conhecimento Conhecimento Global do Sistema Mais produtividade (Sem ICQ, Email, ou Bloqueamento do Proxy ;) ) Integração global da Equipe
Pair Programing Moving People Around Significa não deixar os desenvolvedores em pares fixos ou em partes fixas do código. Código não fica dependente de um só programador. Todos os desenvolvedores tem noção de todo o código e de todas as funcionalidades do projeto. Treina desenvolvedores com menor skill em determinadas áreas.
Troca de Duplas 08:00 – 10:00 A A A 10:00 – 12:00 13:00 – 15:00 15:00 – 17:00 A B D A E P
Seu Pensamento deve ser: Qualitativo Quantitativo
Feedback Aprovar Seus Passos, Para chegar No Caminho certo É preciso!
Feedback Releases num espaço de tempo curto. Cliente aprova ou não estes releases. Com a aprovação ou não, você sempre sabe se seu projeto está caminhando pro  sucesso  ou  falha Os Feedbacks pro programador são seus testes unitários.
Coragem Em todas as áreas da vida... Você precisa de coragem !
Coragem Tomar decisões acertadas. Saber o que e como resolver os problemas do cliente. Saber pedir ajuda. Saber procurar auxílio. Assumir um erro e aprender com o mesmo.
Quando usar XP? Grupos de 2 a 10 programadores Projetos de 1 a 36 meses (calendário) De 1000 a 250 000 linhas de código Requisitos são alterados em grande escala.
Práticas do XP The Customer  is  Always Available   O Cliente está sempre disponível.
Práticas do XP System Metaphor Metáfora de Sistema
Práticas do XP Planning  Game Jogo de Planejamento
Jogo de Planejamento Por que ter aquelas reuniões maçantes para coletar 581717171 requisitos, se você pode fazer isto de forma divertida e funcional.
Objetivos do  Jogo de Planejamento Definir uma visão inicial do sistema. Estimar o tempo de desenvolvimento do sistema .  O que sai disso: Um conjunto de  User Stories  para usar no  Release  Planning .  Cliente: Escreve  User Stories  definindo as funcionalidades do sistema.  Programadores: Avaliam as  User Stories  em 1, 2 ou 3 semanas ideais Se a  User Story  é maior que 3 semanas, divida; se menor que 1 semana, junte com outras.
User Stories Lembra UseCases Usadas para medir tempo no Planning Game. Pode substituir aqueles documentos gigantescos de requisitos. O Cliente escreve na forma como ele preferir. Os programadores definem junto com o cliente a prioridade.
Práticas do XP Small Releases Pequenos Releases
Práticas do XP Small Releases Pequenos Releases
Práticas do XP Continuous Integration   Integração Contínua
Práticas do XP Forty Hour Week Semana de 40 Horas
Práticas do XP Forty Hour Week Semana de 40 Horas
Práticas do XP Coding Standards  Padrão de Codificação
Testes Unitários Os testes unitários garantem qualidade. E cumprimento de prazos. Crie os testes e depois o design AcceptanceTest
Refactoring Alterar e propagar as alterações de forma contínua prevenindo erros. Código Código com  Alterações O mesmo  funcionamento  Garantido
Papéis no XP GoldOwner  (Cliente)   GoalDonor  (Cliente)   Manager  (Técnico) Acceptance Tester  (Técnico)   Programmer  (Técnico)   Tracker  (Técnico)   Coach  (Técnico)
GoldOwner   – Dono do Ouro Quem paga pelo projeto.
GoalDonor   Define os requisitos do software.  É geralmente um usuário.
Manager É o escudo da equipe em relação ao problemas externos ao projeto.
Acceptance Tester Definir com o  Xp Goal Donor  os critérios de aceitação do projeto.  Escrever os  Acceptance Tests .  Executar os testes pelo menos uma vez por dia e publicar os resultados para a equipe.
Programmer Responsável pela produção do projeto. Implementação Testes Contínuos
Tracker Coleta possíveis problemas no projeto. Responsável em executar métricas e repassar para a equipe. Ter coragem de tomar decisões e informar que algo possa não estar sendo executado corretamente.
Coach Garantir que o Projeto seja XP sempre.
Algumas empresas do Brasil SEFA-SP -  (São Paulo) Brasil Telecom - (Brasília) Qualiti – Recife Objective Solutions – (SP e Curitiba) Argos Tecnologia – (Belém) Embrapa Informática Agropecuária – (Campinas) Fonte: Vinicius Magalhães Teles (site XisPe)    
Algumas empresa nos EUA Symantec, Inc.  Beaverton, OR  Motorola, Inc.  Arling. Heights, IL   IONA Technologies  Waltham, MA BoldTech Systems  Denver, CO   Fonte: Vinicius Magalhães Teles (site XisPe)    
Usando o Borland ALM em conjunto de XP A Borland está presente em todas as plataformas: Java Linux .net Você pode usar XP mais claramente em Java e .net
Borland ALM no XP Ajuda Definição de UserStories Definição de Comunicação FeedBack Acompanhamento e Gerenciamento
Borland ALM no XP Seu Código é Seu Modelo Seu Modelo é Sua Documentação Auditorias e Métricas de Código Refactoring
Borland ALM no XP Integração Contínua Java Ant http://ant.apache.org/ .net nAnt http://nant.sourceforge.net/
Teste Unitário JUnit ( http://www.junit.org/ ) Cactus ( http://jakarta.apache.org/cactus/ ) Nunit ( http://www.nunit.org/ ) NUnitAsp ( http://nunitasp.sourceforge.net/ )
Borland ALM no XP JBuilder conta com: ANT JUnit Cactus Operações de Refactoring  Além de toda a integração do ALM
Borland ALM no XP Testes de Aceitação Qualidade
Borland ALM + XP == Sucesso Borland ALM Escolha Ideal seja onde for!
Referências Internet http ://www.xispe.com.br http://www.extremingprograming.org http ://www.xprograming.com http://www.pairprograming.com http://www.c2. org http://www.agilemanifesto.org/
Referências Livros Somente eXtreming Programing Planning Extreme Programming by  Kent Beck ,  Martin  Fowler   Extreme Programming Explained: Embrace Change by  Kent Beck   Voltados a Java Java Extreming Programing Cookbook Erik Burke e Brian Coyner
Livros Imagens de Referência
Conclusões “ Supere o medo”  por (Klaus Wustefeld) O XP como a Era Punk da década de 80. =) Hoje em dia mais flexível. Aceite as mudanças.
Muito obrigado pela presença ! Perguntas? Edgar Silva [email_address] http://www.argostecnologia.com

Mais conteúdo relacionado

Mais procurados

Extreme programming (xp)
 Extreme programming   (xp) Extreme programming   (xp)
Extreme programming (xp)
João Carlos Ottobboni
 
Cafe agil em Recife - Agile and Design
Cafe agil em Recife - Agile and DesignCafe agil em Recife - Agile and Design
Cafe agil em Recife - Agile and Design
Thoughtworks
 
eXtreme Programming (xp)
eXtreme Programming (xp)eXtreme Programming (xp)
eXtreme Programming (xp)
Renato Pina
 
TDD - A Verdadeira Face do Teste
TDD - A Verdadeira Face do TesteTDD - A Verdadeira Face do Teste
TDD - A Verdadeira Face do Teste
Aislan Fernandes
 
Testes
TestesTestes
Bate-papo com Especialista Terra XP
Bate-papo com Especialista Terra XPBate-papo com Especialista Terra XP
Bate-papo com Especialista Terra XP
Wildtech
 
IPA Conhecendo XP
IPA Conhecendo XPIPA Conhecendo XP
IPA Conhecendo XP
Wildtech
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
Ricardo Bánffy
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme Programming
Marcelo Láias
 
Extreme Programming XP
Extreme Programming XPExtreme Programming XP
Extreme Programming XP
Luis Claudio Silva Fernandes
 
Apresentando Extreme Programming
Apresentando Extreme ProgrammingApresentando Extreme Programming
Apresentando Extreme Programming
Milfont Consulting
 
Introdução ao TDD
Introdução ao TDDIntrodução ao TDD
Introdução ao TDD
gustavoferrazfontes
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
Milfont Consulting
 
Extreme Programming (XP) Metodologia Ágil
Extreme Programming (XP) Metodologia ÁgilExtreme Programming (XP) Metodologia Ágil
Extreme Programming (XP) Metodologia Ágil
Jaffer Veronezi
 
Extreme programming (xp) - Resumo
Extreme programming (xp) - ResumoExtreme programming (xp) - Resumo
Extreme programming (xp) - Resumo
Daniel Brandão
 
Apresentação do Workshop BDD (Desenvolvimento Guiado por Comportamento) com V...
Apresentação do Workshop BDD (Desenvolvimento Guiado por Comportamento) com V...Apresentação do Workshop BDD (Desenvolvimento Guiado por Comportamento) com V...
Apresentação do Workshop BDD (Desenvolvimento Guiado por Comportamento) com V...
Developer Academy
 
Programacao Extrema
Programacao ExtremaProgramacao Extrema
Programacao Extrema
Robson Silva Espig
 
Conhecendo o eXtreme Programming
Conhecendo o eXtreme ProgrammingConhecendo o eXtreme Programming
Conhecendo o eXtreme Programming
Daniel Wildt
 
Introducao
IntroducaoIntroducao
Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)
Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)
Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)
Joao Galdino Mello de Souza
 

Mais procurados (20)

Extreme programming (xp)
 Extreme programming   (xp) Extreme programming   (xp)
Extreme programming (xp)
 
Cafe agil em Recife - Agile and Design
Cafe agil em Recife - Agile and DesignCafe agil em Recife - Agile and Design
Cafe agil em Recife - Agile and Design
 
eXtreme Programming (xp)
eXtreme Programming (xp)eXtreme Programming (xp)
eXtreme Programming (xp)
 
TDD - A Verdadeira Face do Teste
TDD - A Verdadeira Face do TesteTDD - A Verdadeira Face do Teste
TDD - A Verdadeira Face do Teste
 
Testes
TestesTestes
Testes
 
Bate-papo com Especialista Terra XP
Bate-papo com Especialista Terra XPBate-papo com Especialista Terra XP
Bate-papo com Especialista Terra XP
 
IPA Conhecendo XP
IPA Conhecendo XPIPA Conhecendo XP
IPA Conhecendo XP
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme Programming
 
Extreme Programming XP
Extreme Programming XPExtreme Programming XP
Extreme Programming XP
 
Apresentando Extreme Programming
Apresentando Extreme ProgrammingApresentando Extreme Programming
Apresentando Extreme Programming
 
Introdução ao TDD
Introdução ao TDDIntrodução ao TDD
Introdução ao TDD
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
Extreme Programming (XP) Metodologia Ágil
Extreme Programming (XP) Metodologia ÁgilExtreme Programming (XP) Metodologia Ágil
Extreme Programming (XP) Metodologia Ágil
 
Extreme programming (xp) - Resumo
Extreme programming (xp) - ResumoExtreme programming (xp) - Resumo
Extreme programming (xp) - Resumo
 
Apresentação do Workshop BDD (Desenvolvimento Guiado por Comportamento) com V...
Apresentação do Workshop BDD (Desenvolvimento Guiado por Comportamento) com V...Apresentação do Workshop BDD (Desenvolvimento Guiado por Comportamento) com V...
Apresentação do Workshop BDD (Desenvolvimento Guiado por Comportamento) com V...
 
Programacao Extrema
Programacao ExtremaProgramacao Extrema
Programacao Extrema
 
Conhecendo o eXtreme Programming
Conhecendo o eXtreme ProgrammingConhecendo o eXtreme Programming
Conhecendo o eXtreme Programming
 
Introducao
IntroducaoIntroducao
Introducao
 
Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)
Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)
Qualidade no desenvolvimento de Sistemas por Anderson Augustinho (Celepar)
 

Destaque

Libere seus serviços! Transformando serviços existentes em APIs gerenciadas
Libere seus serviços! Transformando serviços existentes em APIs gerenciadasLibere seus serviços! Transformando serviços existentes em APIs gerenciadas
Libere seus serviços! Transformando serviços existentes em APIs gerenciadas
WSO2
 
WSO2 - Portfólio de Produtos, Soluções e Suportes
WSO2 - Portfólio de Produtos, Soluções e SuportesWSO2 - Portfólio de Produtos, Soluções e Suportes
WSO2 - Portfólio de Produtos, Soluções e Suportes
Edgar Silva
 
WSO2 Micro Services Server - Basic Workshop Part 1
WSO2 Micro Services Server - Basic Workshop Part 1WSO2 Micro Services Server - Basic Workshop Part 1
WSO2 Micro Services Server - Basic Workshop Part 1
Edgar Silva
 
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
OpenShift: NoSQL  "a la carte"  num PaaS 100% Open SourceOpenShift: NoSQL  "a la carte"  num PaaS 100% Open Source
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
Edgar Silva
 
Aeolus - Visão Geral
Aeolus - Visão GeralAeolus - Visão Geral
Aeolus - Visão Geral
Edgar Silva
 
WSO2 Application Server como Alternativa ao Tomcat
WSO2 Application Server como Alternativa ao TomcatWSO2 Application Server como Alternativa ao Tomcat
WSO2 Application Server como Alternativa ao Tomcat
Edgar Silva
 
KVM, Aeolus, DeltaCloud, Openshift e JBoss - Edgar Silva
KVM, Aeolus, DeltaCloud, Openshift e JBoss - Edgar Silva KVM, Aeolus, DeltaCloud, Openshift e JBoss - Edgar Silva
KVM, Aeolus, DeltaCloud, Openshift e JBoss - Edgar Silva
Edgar Silva
 
WSO2 - Visão Geral - Update 2015
WSO2 - Visão Geral - Update 2015WSO2 - Visão Geral - Update 2015
WSO2 - Visão Geral - Update 2015
Edgar Silva
 

Destaque (8)

Libere seus serviços! Transformando serviços existentes em APIs gerenciadas
Libere seus serviços! Transformando serviços existentes em APIs gerenciadasLibere seus serviços! Transformando serviços existentes em APIs gerenciadas
Libere seus serviços! Transformando serviços existentes em APIs gerenciadas
 
WSO2 - Portfólio de Produtos, Soluções e Suportes
WSO2 - Portfólio de Produtos, Soluções e SuportesWSO2 - Portfólio de Produtos, Soluções e Suportes
WSO2 - Portfólio de Produtos, Soluções e Suportes
 
WSO2 Micro Services Server - Basic Workshop Part 1
WSO2 Micro Services Server - Basic Workshop Part 1WSO2 Micro Services Server - Basic Workshop Part 1
WSO2 Micro Services Server - Basic Workshop Part 1
 
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
OpenShift: NoSQL  "a la carte"  num PaaS 100% Open SourceOpenShift: NoSQL  "a la carte"  num PaaS 100% Open Source
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
 
Aeolus - Visão Geral
Aeolus - Visão GeralAeolus - Visão Geral
Aeolus - Visão Geral
 
WSO2 Application Server como Alternativa ao Tomcat
WSO2 Application Server como Alternativa ao TomcatWSO2 Application Server como Alternativa ao Tomcat
WSO2 Application Server como Alternativa ao Tomcat
 
KVM, Aeolus, DeltaCloud, Openshift e JBoss - Edgar Silva
KVM, Aeolus, DeltaCloud, Openshift e JBoss - Edgar Silva KVM, Aeolus, DeltaCloud, Openshift e JBoss - Edgar Silva
KVM, Aeolus, DeltaCloud, Openshift e JBoss - Edgar Silva
 
WSO2 - Visão Geral - Update 2015
WSO2 - Visão Geral - Update 2015WSO2 - Visão Geral - Update 2015
WSO2 - Visão Geral - Update 2015
 

Semelhante a Aplicando eXtreming Programing ao cenário do Borland ALM - BorCon 2003

O XP não é contra Design com Paulo Caroli, Café Ágil em Recife
O XP não é contra Design com Paulo Caroli, Café Ágil em RecifeO XP não é contra Design com Paulo Caroli, Café Ágil em Recife
O XP não é contra Design com Paulo Caroli, Café Ágil em Recife
Paulo Caroli
 
Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013
Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013
Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013
Gabriel Rubens
 
Utilizando metologias ágeis com VSTS: Scrum e XP, YES WE CAN! (ALM204)
Utilizando metologias ágeis com VSTS: Scrum e XP, YES WE CAN! (ALM204)Utilizando metologias ágeis com VSTS: Scrum e XP, YES WE CAN! (ALM204)
Utilizando metologias ágeis com VSTS: Scrum e XP, YES WE CAN! (ALM204)
André Dias
 
XP Programming
XP ProgrammingXP Programming
XP Programming
CJR, UnB
 
Test-Driven Development with PHP
Test-Driven Development with PHPTest-Driven Development with PHP
Test-Driven Development with PHP
Cezar Souza
 
Aula 4- Engenharia de Software
Aula 4- Engenharia de SoftwareAula 4- Engenharia de Software
Aula 4- Engenharia de Software
Rudson Kiyoshi Souza Carvalho
 
Pesquisa em Métodos Ágeis para o Desenvolvimento de Software
Pesquisa em Métodos Ágeis para o Desenvolvimento de SoftwarePesquisa em Métodos Ágeis para o Desenvolvimento de Software
Pesquisa em Métodos Ágeis para o Desenvolvimento de Software
Adolfo Neto
 
Desenvolvimento de Software
Desenvolvimento de SoftwareDesenvolvimento de Software
Desenvolvimento de Software
Adilmar Dantas
 
Metodologias Ágeis de Desenvolvimento de Software
Metodologias Ágeis de Desenvolvimento de SoftwareMetodologias Ágeis de Desenvolvimento de Software
Metodologias Ágeis de Desenvolvimento de Software
Emerson Henrique
 
Metodologias Ágeis de Desenvolvimento de Software
Metodologias Ágeis de Desenvolvimento de SoftwareMetodologias Ágeis de Desenvolvimento de Software
Metodologias Ágeis de Desenvolvimento de Software
Luciano Almeida
 
Qualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMQualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALM
Adriano Bertucci
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2a
Leonardo Molinari
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
ceife
 
Profissão programador práticas para melhoria contínua fatec pg setembro 2013
Profissão programador práticas para melhoria contínua fatec pg setembro 2013Profissão programador práticas para melhoria contínua fatec pg setembro 2013
Profissão programador práticas para melhoria contínua fatec pg setembro 2013
Gabriel Rubens
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
Elaine Cecília Gatto
 
5 dicas para estruturar seu teste de performance
5 dicas para estruturar seu teste de performance5 dicas para estruturar seu teste de performance
5 dicas para estruturar seu teste de performance
Ariane Izac
 
Métodos Ágeis para Desenvolvimento de Software
Métodos Ágeis para Desenvolvimento de SoftwareMétodos Ágeis para Desenvolvimento de Software
Métodos Ágeis para Desenvolvimento de Software
alexandre_malaquias
 
Sobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaSobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis Uberlândia
Rogerio Fontes
 
Instituto Stela S&T#001, Projeto de software com testes unitários
Instituto Stela S&T#001, Projeto de software com testes unitáriosInstituto Stela S&T#001, Projeto de software com testes unitários
Instituto Stela S&T#001, Projeto de software com testes unitários
Instituto Stela (Florianópolis-SC, Brasil)
 
A Carreira de Desenvolvedor: do Jr ao Sênior
A Carreira de Desenvolvedor: do Jr ao SêniorA Carreira de Desenvolvedor: do Jr ao Sênior
A Carreira de Desenvolvedor: do Jr ao Sênior
Marcos Pereira
 

Semelhante a Aplicando eXtreming Programing ao cenário do Borland ALM - BorCon 2003 (20)

O XP não é contra Design com Paulo Caroli, Café Ágil em Recife
O XP não é contra Design com Paulo Caroli, Café Ágil em RecifeO XP não é contra Design com Paulo Caroli, Café Ágil em Recife
O XP não é contra Design com Paulo Caroli, Café Ágil em Recife
 
Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013
Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013
Profissoa programador-praticas-para-melhoria-continua-fatec-santos-outubro-2013
 
Utilizando metologias ágeis com VSTS: Scrum e XP, YES WE CAN! (ALM204)
Utilizando metologias ágeis com VSTS: Scrum e XP, YES WE CAN! (ALM204)Utilizando metologias ágeis com VSTS: Scrum e XP, YES WE CAN! (ALM204)
Utilizando metologias ágeis com VSTS: Scrum e XP, YES WE CAN! (ALM204)
 
XP Programming
XP ProgrammingXP Programming
XP Programming
 
Test-Driven Development with PHP
Test-Driven Development with PHPTest-Driven Development with PHP
Test-Driven Development with PHP
 
Aula 4- Engenharia de Software
Aula 4- Engenharia de SoftwareAula 4- Engenharia de Software
Aula 4- Engenharia de Software
 
Pesquisa em Métodos Ágeis para o Desenvolvimento de Software
Pesquisa em Métodos Ágeis para o Desenvolvimento de SoftwarePesquisa em Métodos Ágeis para o Desenvolvimento de Software
Pesquisa em Métodos Ágeis para o Desenvolvimento de Software
 
Desenvolvimento de Software
Desenvolvimento de SoftwareDesenvolvimento de Software
Desenvolvimento de Software
 
Metodologias Ágeis de Desenvolvimento de Software
Metodologias Ágeis de Desenvolvimento de SoftwareMetodologias Ágeis de Desenvolvimento de Software
Metodologias Ágeis de Desenvolvimento de Software
 
Metodologias Ágeis de Desenvolvimento de Software
Metodologias Ágeis de Desenvolvimento de SoftwareMetodologias Ágeis de Desenvolvimento de Software
Metodologias Ágeis de Desenvolvimento de Software
 
Qualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMQualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALM
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2a
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
Profissão programador práticas para melhoria contínua fatec pg setembro 2013
Profissão programador práticas para melhoria contínua fatec pg setembro 2013Profissão programador práticas para melhoria contínua fatec pg setembro 2013
Profissão programador práticas para melhoria contínua fatec pg setembro 2013
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
5 dicas para estruturar seu teste de performance
5 dicas para estruturar seu teste de performance5 dicas para estruturar seu teste de performance
5 dicas para estruturar seu teste de performance
 
Métodos Ágeis para Desenvolvimento de Software
Métodos Ágeis para Desenvolvimento de SoftwareMétodos Ágeis para Desenvolvimento de Software
Métodos Ágeis para Desenvolvimento de Software
 
Sobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaSobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis Uberlândia
 
Instituto Stela S&T#001, Projeto de software com testes unitários
Instituto Stela S&T#001, Projeto de software com testes unitáriosInstituto Stela S&T#001, Projeto de software com testes unitários
Instituto Stela S&T#001, Projeto de software com testes unitários
 
A Carreira de Desenvolvedor: do Jr ao Sênior
A Carreira de Desenvolvedor: do Jr ao SêniorA Carreira de Desenvolvedor: do Jr ao Sênior
A Carreira de Desenvolvedor: do Jr ao Sênior
 

Mais de Edgar Silva

API Methodology by Skalena
API Methodology by SkalenaAPI Methodology by Skalena
API Methodology by Skalena
Edgar Silva
 
Flyweigth - Arquitetura de Referência para Open Banking Brasil Fase 1
Flyweigth - Arquitetura de Referência para Open Banking Brasil Fase 1Flyweigth - Arquitetura de Referência para Open Banking Brasil Fase 1
Flyweigth - Arquitetura de Referência para Open Banking Brasil Fase 1
Edgar Silva
 
Skalena - Finance Business Unit
Skalena - Finance Business UnitSkalena - Finance Business Unit
Skalena - Finance Business Unit
Edgar Silva
 
Plataforma de Consentimento (LGDP) Skalena
Plataforma de Consentimento (LGDP) SkalenaPlataforma de Consentimento (LGDP) Skalena
Plataforma de Consentimento (LGDP) Skalena
Edgar Silva
 
Casos de Sucesso WSO2 no Governo Brasileiro
Casos de Sucesso WSO2 no Governo BrasileiroCasos de Sucesso WSO2 no Governo Brasileiro
Casos de Sucesso WSO2 no Governo Brasileiro
Edgar Silva
 
DevOps Tour SP 2019
DevOps Tour SP 2019DevOps Tour SP 2019
DevOps Tour SP 2019
Edgar Silva
 
Skalena - Overview de Soluções
Skalena - Overview de Soluções Skalena - Overview de Soluções
Skalena - Overview de Soluções
Edgar Silva
 
WSO2 Governance Registry 5.4.0 - Overview
WSO2 Governance Registry 5.4.0 - OverviewWSO2 Governance Registry 5.4.0 - Overview
WSO2 Governance Registry 5.4.0 - Overview
Edgar Silva
 
WSO2 Enterprise Integrator 6.1 - Integração na Era da Transformação
WSO2 Enterprise Integrator 6.1 - Integração na Era da TransformaçãoWSO2 Enterprise Integrator 6.1 - Integração na Era da Transformação
WSO2 Enterprise Integrator 6.1 - Integração na Era da Transformação
Edgar Silva
 
Transformação Digital de Forma Pragmatica WSO2
Transformação Digital de Forma Pragmatica WSO2Transformação Digital de Forma Pragmatica WSO2
Transformação Digital de Forma Pragmatica WSO2
Edgar Silva
 
WSO2 Novo Modelo de Subscrições e Produtos 2017
WSO2 Novo Modelo de Subscrições e Produtos 2017WSO2 Novo Modelo de Subscrições e Produtos 2017
WSO2 Novo Modelo de Subscrições e Produtos 2017
Edgar Silva
 
WSO2 API Manager 2.0 - Overview
WSO2 API Manager 2.0 - Overview WSO2 API Manager 2.0 - Overview
WSO2 API Manager 2.0 - Overview
Edgar Silva
 
Workshop WSO2 BPS 3.5.x - BPMN
Workshop WSO2 BPS 3.5.x - BPMN Workshop WSO2 BPS 3.5.x - BPMN
Workshop WSO2 BPS 3.5.x - BPMN
Edgar Silva
 
WSO2 Telco MCX
WSO2 Telco MCXWSO2 Telco MCX
WSO2 Telco MCX
Edgar Silva
 
Workshop MSF4J - Getting Started with Microservices and Java
Workshop MSF4J - Getting Started with Microservices and JavaWorkshop MSF4J - Getting Started with Microservices and Java
Workshop MSF4J - Getting Started with Microservices and Java
Edgar Silva
 
WSO2 API Manager : Going beyond the just API Management
WSO2 API Manager : Going beyond the just API ManagementWSO2 API Manager : Going beyond the just API Management
WSO2 API Manager : Going beyond the just API Management
Edgar Silva
 
Workshop/Tutorial WSO2 Micro Services Server
Workshop/Tutorial WSO2 Micro Services ServerWorkshop/Tutorial WSO2 Micro Services Server
Workshop/Tutorial WSO2 Micro Services Server
Edgar Silva
 
Conectando Turismo e Viagens - Plataforma WSO2
Conectando Turismo e Viagens - Plataforma WSO2Conectando Turismo e Viagens - Plataforma WSO2
Conectando Turismo e Viagens - Plataforma WSO2
Edgar Silva
 
WSO2 para o Governo Brasileiro
WSO2 para o  Governo BrasileiroWSO2 para o  Governo Brasileiro
WSO2 para o Governo Brasileiro
Edgar Silva
 
Introdução aos Conceitos do WSO2 ESB
Introdução aos Conceitos do WSO2 ESBIntrodução aos Conceitos do WSO2 ESB
Introdução aos Conceitos do WSO2 ESB
Edgar Silva
 

Mais de Edgar Silva (20)

API Methodology by Skalena
API Methodology by SkalenaAPI Methodology by Skalena
API Methodology by Skalena
 
Flyweigth - Arquitetura de Referência para Open Banking Brasil Fase 1
Flyweigth - Arquitetura de Referência para Open Banking Brasil Fase 1Flyweigth - Arquitetura de Referência para Open Banking Brasil Fase 1
Flyweigth - Arquitetura de Referência para Open Banking Brasil Fase 1
 
Skalena - Finance Business Unit
Skalena - Finance Business UnitSkalena - Finance Business Unit
Skalena - Finance Business Unit
 
Plataforma de Consentimento (LGDP) Skalena
Plataforma de Consentimento (LGDP) SkalenaPlataforma de Consentimento (LGDP) Skalena
Plataforma de Consentimento (LGDP) Skalena
 
Casos de Sucesso WSO2 no Governo Brasileiro
Casos de Sucesso WSO2 no Governo BrasileiroCasos de Sucesso WSO2 no Governo Brasileiro
Casos de Sucesso WSO2 no Governo Brasileiro
 
DevOps Tour SP 2019
DevOps Tour SP 2019DevOps Tour SP 2019
DevOps Tour SP 2019
 
Skalena - Overview de Soluções
Skalena - Overview de Soluções Skalena - Overview de Soluções
Skalena - Overview de Soluções
 
WSO2 Governance Registry 5.4.0 - Overview
WSO2 Governance Registry 5.4.0 - OverviewWSO2 Governance Registry 5.4.0 - Overview
WSO2 Governance Registry 5.4.0 - Overview
 
WSO2 Enterprise Integrator 6.1 - Integração na Era da Transformação
WSO2 Enterprise Integrator 6.1 - Integração na Era da TransformaçãoWSO2 Enterprise Integrator 6.1 - Integração na Era da Transformação
WSO2 Enterprise Integrator 6.1 - Integração na Era da Transformação
 
Transformação Digital de Forma Pragmatica WSO2
Transformação Digital de Forma Pragmatica WSO2Transformação Digital de Forma Pragmatica WSO2
Transformação Digital de Forma Pragmatica WSO2
 
WSO2 Novo Modelo de Subscrições e Produtos 2017
WSO2 Novo Modelo de Subscrições e Produtos 2017WSO2 Novo Modelo de Subscrições e Produtos 2017
WSO2 Novo Modelo de Subscrições e Produtos 2017
 
WSO2 API Manager 2.0 - Overview
WSO2 API Manager 2.0 - Overview WSO2 API Manager 2.0 - Overview
WSO2 API Manager 2.0 - Overview
 
Workshop WSO2 BPS 3.5.x - BPMN
Workshop WSO2 BPS 3.5.x - BPMN Workshop WSO2 BPS 3.5.x - BPMN
Workshop WSO2 BPS 3.5.x - BPMN
 
WSO2 Telco MCX
WSO2 Telco MCXWSO2 Telco MCX
WSO2 Telco MCX
 
Workshop MSF4J - Getting Started with Microservices and Java
Workshop MSF4J - Getting Started with Microservices and JavaWorkshop MSF4J - Getting Started with Microservices and Java
Workshop MSF4J - Getting Started with Microservices and Java
 
WSO2 API Manager : Going beyond the just API Management
WSO2 API Manager : Going beyond the just API ManagementWSO2 API Manager : Going beyond the just API Management
WSO2 API Manager : Going beyond the just API Management
 
Workshop/Tutorial WSO2 Micro Services Server
Workshop/Tutorial WSO2 Micro Services ServerWorkshop/Tutorial WSO2 Micro Services Server
Workshop/Tutorial WSO2 Micro Services Server
 
Conectando Turismo e Viagens - Plataforma WSO2
Conectando Turismo e Viagens - Plataforma WSO2Conectando Turismo e Viagens - Plataforma WSO2
Conectando Turismo e Viagens - Plataforma WSO2
 
WSO2 para o Governo Brasileiro
WSO2 para o  Governo BrasileiroWSO2 para o  Governo Brasileiro
WSO2 para o Governo Brasileiro
 
Introdução aos Conceitos do WSO2 ESB
Introdução aos Conceitos do WSO2 ESBIntrodução aos Conceitos do WSO2 ESB
Introdução aos Conceitos do WSO2 ESB
 

Aplicando eXtreming Programing ao cenário do Borland ALM - BorCon 2003

  • 1. Aplicando eXtreming Programing ao cenário do Borland ALM Edgar Silva Argos Tecnologia
  • 2. Agenda Extreming Programing Entendendo Extreming Programing Observando seus papéis Relação entre XP e o Borland ALM
  • 3. Kent Beck , criador da XP Extreme Programming é uma Metodologia Ágil para equipes pequenas e médias desenvolvendo software com requisitos vagos e em constante mudança.
  • 4. O que é XP ? eXtreming Programing Baseada em 4 princípios: Simplicidade Comunicação Feedback Coragem
  • 6. Simplicidade Simplicidade do Início ao Fim do Projeto Modelos Simples Codificação Simples Testes simplificados
  • 8. Simplicidade Como garantir que as alterações não causem impacto em outras áreas? Como não alterar códigos com bases nos requisitos alterados sem alterar custos? Modelo e Códigos Simples Códigos Simples == Refactoring Simples
  • 9. Comunicação Item Imprescindível para o funcionamento de eXtreming Programing.
  • 10. Comunicação Testes Unitários Código X Programador Pair Programing (Programação em Par) Programador X Programador Cliente
  • 11. Testes Unitários Com bases em códigos simples , os testes serão simplificados e precisos. Oferecem o estado e comportamento da aplicação.
  • 12. Pair Programing Um das maiores Preocupações Das empresas antes de Adotarem XP
  • 13. Pair Programing Programação em Pares Programadores trabalhando lado-a-lado, colaborando o mesmo design, algoritimo, código ou teste. Um programador, o “piloto”, tem o controle do teclado e mouse , ativamente implementa o programa. O outro, o “observador” ou co-piloto, continuamente observa o trabalho do “piloto” para identificar defeitos táticos e também pensa na direção do trabalho. Periodicamente, o par é trocado, para promover maiores vantagens. -- Laurie Williams North Carolina State University Computer Science
  • 14. Pair Programing Maiores Indagações Gerenciais Por que pagar 2 para fazer o trabalho de 1 ? Como? Vou ter que contar com dois programadores? Assim o prazo será o dobro? Não tenho mesas suficientes...
  • 15. Dados relevantes ao Pair Programing Programador Solo Programadores (Par) Tarefa 1 – Estimativa de Tempo 57% - Mais velocidade com PP Programador Solo Programadores (Par) Tarefa 1 – Erros encontrados 2 Vezes menos erros com PP
  • 16. Dados relevantes ao Pair Programing Complexidade De Códigos Velocidade no Término da Solução Programador Solo Programadores Em Par Término
  • 17. E quando falamos de Custos Desenvolver Tarefa N - Programador Solo Teste Ok Foi o que sua empresa orçou e cobrou. Início Entrega Desenvolver Tarefa N - Programadores em Par Teste Ok Foi o que sua empresa orçou e cobrou. Início Entrega Desenvolvimento Testes Entrega Quem paga isso?
  • 18. O que Pair Programing trás de benefícios Menos Erros Velocidade em codificação Transferência de Conhecimento Conhecimento Global do Sistema Mais produtividade (Sem ICQ, Email, ou Bloqueamento do Proxy ;) ) Integração global da Equipe
  • 19. Pair Programing Moving People Around Significa não deixar os desenvolvedores em pares fixos ou em partes fixas do código. Código não fica dependente de um só programador. Todos os desenvolvedores tem noção de todo o código e de todas as funcionalidades do projeto. Treina desenvolvedores com menor skill em determinadas áreas.
  • 20. Troca de Duplas 08:00 – 10:00 A A A 10:00 – 12:00 13:00 – 15:00 15:00 – 17:00 A B D A E P
  • 21. Seu Pensamento deve ser: Qualitativo Quantitativo
  • 22. Feedback Aprovar Seus Passos, Para chegar No Caminho certo É preciso!
  • 23. Feedback Releases num espaço de tempo curto. Cliente aprova ou não estes releases. Com a aprovação ou não, você sempre sabe se seu projeto está caminhando pro sucesso ou falha Os Feedbacks pro programador são seus testes unitários.
  • 24. Coragem Em todas as áreas da vida... Você precisa de coragem !
  • 25. Coragem Tomar decisões acertadas. Saber o que e como resolver os problemas do cliente. Saber pedir ajuda. Saber procurar auxílio. Assumir um erro e aprender com o mesmo.
  • 26. Quando usar XP? Grupos de 2 a 10 programadores Projetos de 1 a 36 meses (calendário) De 1000 a 250 000 linhas de código Requisitos são alterados em grande escala.
  • 27. Práticas do XP The Customer is Always Available O Cliente está sempre disponível.
  • 28. Práticas do XP System Metaphor Metáfora de Sistema
  • 29. Práticas do XP Planning Game Jogo de Planejamento
  • 30. Jogo de Planejamento Por que ter aquelas reuniões maçantes para coletar 581717171 requisitos, se você pode fazer isto de forma divertida e funcional.
  • 31. Objetivos do Jogo de Planejamento Definir uma visão inicial do sistema. Estimar o tempo de desenvolvimento do sistema . O que sai disso: Um conjunto de User Stories para usar no Release Planning . Cliente: Escreve User Stories definindo as funcionalidades do sistema. Programadores: Avaliam as User Stories em 1, 2 ou 3 semanas ideais Se a User Story é maior que 3 semanas, divida; se menor que 1 semana, junte com outras.
  • 32. User Stories Lembra UseCases Usadas para medir tempo no Planning Game. Pode substituir aqueles documentos gigantescos de requisitos. O Cliente escreve na forma como ele preferir. Os programadores definem junto com o cliente a prioridade.
  • 33. Práticas do XP Small Releases Pequenos Releases
  • 34. Práticas do XP Small Releases Pequenos Releases
  • 35. Práticas do XP Continuous Integration Integração Contínua
  • 36. Práticas do XP Forty Hour Week Semana de 40 Horas
  • 37. Práticas do XP Forty Hour Week Semana de 40 Horas
  • 38. Práticas do XP Coding Standards Padrão de Codificação
  • 39. Testes Unitários Os testes unitários garantem qualidade. E cumprimento de prazos. Crie os testes e depois o design AcceptanceTest
  • 40. Refactoring Alterar e propagar as alterações de forma contínua prevenindo erros. Código Código com Alterações O mesmo funcionamento Garantido
  • 41. Papéis no XP GoldOwner (Cliente) GoalDonor (Cliente) Manager (Técnico) Acceptance Tester (Técnico) Programmer (Técnico) Tracker (Técnico) Coach (Técnico)
  • 42. GoldOwner – Dono do Ouro Quem paga pelo projeto.
  • 43. GoalDonor Define os requisitos do software. É geralmente um usuário.
  • 44. Manager É o escudo da equipe em relação ao problemas externos ao projeto.
  • 45. Acceptance Tester Definir com o Xp Goal Donor os critérios de aceitação do projeto. Escrever os Acceptance Tests . Executar os testes pelo menos uma vez por dia e publicar os resultados para a equipe.
  • 46. Programmer Responsável pela produção do projeto. Implementação Testes Contínuos
  • 47. Tracker Coleta possíveis problemas no projeto. Responsável em executar métricas e repassar para a equipe. Ter coragem de tomar decisões e informar que algo possa não estar sendo executado corretamente.
  • 48. Coach Garantir que o Projeto seja XP sempre.
  • 49. Algumas empresas do Brasil SEFA-SP - (São Paulo) Brasil Telecom - (Brasília) Qualiti – Recife Objective Solutions – (SP e Curitiba) Argos Tecnologia – (Belém) Embrapa Informática Agropecuária – (Campinas) Fonte: Vinicius Magalhães Teles (site XisPe)    
  • 50. Algumas empresa nos EUA Symantec, Inc.  Beaverton, OR Motorola, Inc.  Arling. Heights, IL   IONA Technologies  Waltham, MA BoldTech Systems  Denver, CO   Fonte: Vinicius Magalhães Teles (site XisPe)    
  • 51. Usando o Borland ALM em conjunto de XP A Borland está presente em todas as plataformas: Java Linux .net Você pode usar XP mais claramente em Java e .net
  • 52. Borland ALM no XP Ajuda Definição de UserStories Definição de Comunicação FeedBack Acompanhamento e Gerenciamento
  • 53. Borland ALM no XP Seu Código é Seu Modelo Seu Modelo é Sua Documentação Auditorias e Métricas de Código Refactoring
  • 54. Borland ALM no XP Integração Contínua Java Ant http://ant.apache.org/ .net nAnt http://nant.sourceforge.net/
  • 55. Teste Unitário JUnit ( http://www.junit.org/ ) Cactus ( http://jakarta.apache.org/cactus/ ) Nunit ( http://www.nunit.org/ ) NUnitAsp ( http://nunitasp.sourceforge.net/ )
  • 56. Borland ALM no XP JBuilder conta com: ANT JUnit Cactus Operações de Refactoring Além de toda a integração do ALM
  • 57. Borland ALM no XP Testes de Aceitação Qualidade
  • 58. Borland ALM + XP == Sucesso Borland ALM Escolha Ideal seja onde for!
  • 59. Referências Internet http ://www.xispe.com.br http://www.extremingprograming.org http ://www.xprograming.com http://www.pairprograming.com http://www.c2. org http://www.agilemanifesto.org/
  • 60. Referências Livros Somente eXtreming Programing Planning Extreme Programming by Kent Beck , Martin Fowler Extreme Programming Explained: Embrace Change by Kent Beck Voltados a Java Java Extreming Programing Cookbook Erik Burke e Brian Coyner
  • 61. Livros Imagens de Referência
  • 62. Conclusões “ Supere o medo” por (Klaus Wustefeld) O XP como a Era Punk da década de 80. =) Hoje em dia mais flexível. Aceite as mudanças.
  • 63. Muito obrigado pela presença ! Perguntas? Edgar Silva [email_address] http://www.argostecnologia.com