SlideShare une entreprise Scribd logo
1  sur  116
Télécharger pour lire hors ligne
Do Monumental ao Ágil
  Desafios de um mundo moderno
        Victor Hugo Germano
Eu ? Quem??
Victor Hugo Germano

http://malditacomedia.blogspot.com
Qual o nosso papel?
Do nada ao Monumental
Do nada ao Monumental

 Alan
Turing
30’s - 50’s
Do nada ao Monumental

 Alan
Turing
30’s - 50’s      60’s




               GOTO
              é nocivo
Do nada ao Monumental

 Alan                    Taylorismo de
Turing                     Software
30’s - 50’s      60’s         80’s




               GOTO
              é nocivo
Do nada ao Monumental

 Alan                    Taylorismo de
Turing                     Software
30’s - 50’s      60’s         80’s       90’s




               GOTO                  Ferramentas
              é nocivo                  CASE
Do nada ao Monumental

 Alan                    Taylorismo de             Boom
Turing                     Software             Tecnológico
30’s - 50’s      60’s         80’s       90’s       00’s




               GOTO                  Ferramentas
              é nocivo                  CASE
Do nada ao Monumental

 Alan                    Taylorismo de             Boom
Turing                     Software             Tecnológico

                                                              ?
30’s - 50’s      60’s         80’s       90’s       00’s




               GOTO                  Ferramentas
              é nocivo                  CASE
Do nada ao Monumental

 Alan                    Taylorismo de             Boom
Turing                     Software             Tecnológico

                                                              ?
30’s - 50’s      60’s         80’s       90’s       00’s




               GOTO                  Ferramentas
              é nocivo                  CASE
Taylorismo

    Plano bem definido
Tarefas rigidamente descritas
  Divisão total de trabalho
 Pouca comunicação verbal
eureka!
Nos tempos da
 Brilhantina


           Integração
http://flickr.com/photos/fairytalecinema/1813597118/
Projetos Falham!



                                               68%
“This year's results represent the highest failure rate in over a
decade" - Jim Crear
                                               Chaos Report - Standish Group
Nos tempos da
 Brilhantina


           Integração
Expectativa


Satisfação
Ciclo Vicioso do
Desenvolvimento de
     Software
http://www.flickr.com/photos/orangeacid/272510395/
http://www.flickr.com/photos/fulbert05/2403344636/
http://www.flickr.com/photos/danielankers/2639889958/
?
http://www.flickr.com/photos/mfakheri/2978493478/
http://www.flickr.com/photos/orangeacid/272510395/
http://www.flickr.com/photos/fulbert05/2403344636/
http://www.flickr.com/photos/danielankers/2639889958/
?
http://www.flickr.com/photos/jurvetson/3097134746/
?
?
Desenvolvimento Ágil
Manifesto Ágil
“Indivíduos e iterações, acima de processos e ferramentas
Software que funcione, acima de extensa documentação
 Colaboração com o cliente, acima de negociar contratos
    Responder à mudança, acima de seguir um plano




               www.agilemanifesto.org
Princípios
Valor de Negócio
Auto gerenciamento
Participação com o cliente
Equipes Multidisciplinares
Time-boxed
Prazo




         QUALIDADE


Escopo               Custo
Menos é mais
Teste é coisa séria!
Qualidade
“Nos dias de hoje, entregar um linha
de código sem que ela seja testada é
   Irresponsabilidade Profissional”
                           Robert Uncle Bob
TDD
Debugging
 sucks!     Testing Rules!
Por que seria diferente?
Quão Sexy é
o seu código?
// create some properties and get the default Session
Properties props = new Properties();
props.put("mail.smtp.host", _smtpHost);
Session session = Session.getDefaultInstance(props, null);
 
// create a message
Address replyToList[] = { new InternetAddress(replyTo) };
Message newMessage = new MimeMessage(session);
if (_fromName != null)
     newMessage.setFrom(new InternetAddress(from,
         _fromName + " on behalf of " + replyTo));
else
     newMessage.setFrom(new InternetAddress(from));
     newMessage.setReplyTo(replyToList);
     newMessage.setRecipients(Message.RecipientType.BCC,
             _toList);
     newMessage.setSubject(subject);
     newMessage.setSentDate(sentDate);
 
// send newMessage
Transport transport = session.getTransport(SMTP_MAIL);
transport.connect(_smtpHost, _user, _password);
transport.sendMessage(newMessage, _toList);
new EmailMessage( )
  .from("teste@localhost.net")
  .to("destination@address.com")
  .withSubject("Fluent Mail Example")
  .withBody("What a nice code!")
  .send();



           http://guilherme.pro/2009/04/05/why-i-dont-write-code-comments/
What is a Clean Code?
What is a Clean Code?

“Quando você olha para o código, percebe que
  ele faz exatamente o que você esperava”
                                Howard Cunningham




                           http://railsconf.blip.tv/file/2089545/
Como medir?
Como medir?

cleanCode = WTF / sec
Agile
Agile
TDD
Integração
 Contínua
             Agile
             TDD
BDD




Integração
 Contínua
             Agile
             TDD
BDD




Integração
 Contínua
             Agile
                   Reunião Diária
             TDD
Escopo Negociável          BDD




Integração
 Contínua
             Agile
                     Reunião Diária
             TDD
Escopo Negociável          BDD
             Cliente Presente


Integração
 Contínua
             Agile
                     Reunião Diária
             TDD
Escopo Negociável          BDD
             Cliente Presente


             Agile
                        Retrospectiva
Integração
 Contínua

                     Reunião Diária
             TDD
Escopo Negociável          BDD
  Agile      Cliente Presente
 Modeling

             Agile
                        Retrospectiva
Integração
 Contínua

                     Reunião Diária
             TDD
Escopo Negociável          BDD
  Agile      Cliente Presente
 Modeling

             Agile
                        Retrospectiva
Integração
 Contínua
 Simplicidade
                     Reunião Diária
             TDD
Escopo Negociável          BDD
  Agile      Cliente Presente
 Modeling

             Agile
                        Retrospectiva
Integração
 Contínua
                   Pair Programming
 Simplicidade
                     Reunião Diária
             TDD
Presentation Backlog
     Scrum em 5 minutos
     Integração Contínua
             (. . .)
Scrum em 5 minutos
       (talvez 10)
Product Owner
Scrum Master
A equipe




Scrum Master
Integração Contínua




http://malditacomedia.blogspot.com/search/label/IntegraçãoContínua
Tester
Testes
Test all the Fucking
        time!
Inspeção
Documentação
Feedback
Tester
Agiles 2009




   6 a 9 de Outubro de 2009
www.agiles2009.org
Obrigado!

victorhg@gmail.com


     / victorhg
Quão Sexy é o
 seu código?

Contenu connexe

Similaire à Do Monumental Ao Agil

Seguranca para desenvolvedores
Seguranca para desenvolvedoresSeguranca para desenvolvedores
Seguranca para desenvolvedoresCristiano Cunha
 
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...Marcio Miyamoto
 
TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...
TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...
TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...tdc-globalcode
 
Implantando Scrum, experiências de um Agile Coach
Implantando Scrum, experiências de um Agile CoachImplantando Scrum, experiências de um Agile Coach
Implantando Scrum, experiências de um Agile CoachRodrigo Yoshima
 
Fábrica de Testes de Software na era da Indústria 4.0
Fábrica de Testes de Software na era da Indústria 4.0Fábrica de Testes de Software na era da Indústria 4.0
Fábrica de Testes de Software na era da Indústria 4.0Ivan Luizio Magalhães
 
Como usar IA para melhorar a qualidade do seu código
Como usar IA para melhorar a qualidade do seu códigoComo usar IA para melhorar a qualidade do seu código
Como usar IA para melhorar a qualidade do seu códigoEvandro da Silva Amparo
 
Software Livre e Novas Formas de Trabalho - InfoUNEB 2016
Software Livre e Novas Formas de Trabalho - InfoUNEB 2016Software Livre e Novas Formas de Trabalho - InfoUNEB 2016
Software Livre e Novas Formas de Trabalho - InfoUNEB 2016Sandro Andrade
 
Slides-Prontos-Powerpoint-Status-de-Projeto.pptx
Slides-Prontos-Powerpoint-Status-de-Projeto.pptxSlides-Prontos-Powerpoint-Status-de-Projeto.pptx
Slides-Prontos-Powerpoint-Status-de-Projeto.pptxWendson Santos Fonseca
 
Desenvolvendo mvp com python
Desenvolvendo mvp com pythonDesenvolvendo mvp com python
Desenvolvendo mvp com pythonBruno Rocha
 
Feature Injection - Descobrindo e entregando valor testável
Feature Injection - Descobrindo e entregando valor testávelFeature Injection - Descobrindo e entregando valor testável
Feature Injection - Descobrindo e entregando valor testávelHélio Medeiros
 
Programação Orientada a Testes
Programação Orientada a TestesProgramação Orientada a Testes
Programação Orientada a TestesGregorio Melo
 
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Sérgio Souza Costa
 
Encontro Locaweb
Encontro  LocawebEncontro  Locaweb
Encontro LocawebFabio Akita
 
Encontro Locaweb Curitiba
Encontro  Locaweb CuritibaEncontro  Locaweb Curitiba
Encontro Locaweb CuritibaFabio Akita
 
[DevDay2018] Arquitetura de Software num cenário de incertezas - Arquitetura ...
[DevDay2018] Arquitetura de Software num cenário de incertezas - Arquitetura ...[DevDay2018] Arquitetura de Software num cenário de incertezas - Arquitetura ...
[DevDay2018] Arquitetura de Software num cenário de incertezas - Arquitetura ...André Paulovich
 

Similaire à Do Monumental Ao Agil (20)

Seguranca para desenvolvedores
Seguranca para desenvolvedoresSeguranca para desenvolvedores
Seguranca para desenvolvedores
 
Divida tecnica
Divida tecnicaDivida tecnica
Divida tecnica
 
Lean adicionando valor ao cliente
Lean adicionando valor ao clienteLean adicionando valor ao cliente
Lean adicionando valor ao cliente
 
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
 
TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...
TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...
TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...
 
Developer 0.0 - Tiago Pascoal
Developer 0.0 - Tiago PascoalDeveloper 0.0 - Tiago Pascoal
Developer 0.0 - Tiago Pascoal
 
Info2017
Info2017Info2017
Info2017
 
Implantando Scrum, experiências de um Agile Coach
Implantando Scrum, experiências de um Agile CoachImplantando Scrum, experiências de um Agile Coach
Implantando Scrum, experiências de um Agile Coach
 
Fábrica de Testes de Software na era da Indústria 4.0
Fábrica de Testes de Software na era da Indústria 4.0Fábrica de Testes de Software na era da Indústria 4.0
Fábrica de Testes de Software na era da Indústria 4.0
 
Como usar IA para melhorar a qualidade do seu código
Como usar IA para melhorar a qualidade do seu códigoComo usar IA para melhorar a qualidade do seu código
Como usar IA para melhorar a qualidade do seu código
 
Software Livre e Novas Formas de Trabalho - InfoUNEB 2016
Software Livre e Novas Formas de Trabalho - InfoUNEB 2016Software Livre e Novas Formas de Trabalho - InfoUNEB 2016
Software Livre e Novas Formas de Trabalho - InfoUNEB 2016
 
Slides-Prontos-Powerpoint-Status-de-Projeto.pptx
Slides-Prontos-Powerpoint-Status-de-Projeto.pptxSlides-Prontos-Powerpoint-Status-de-Projeto.pptx
Slides-Prontos-Powerpoint-Status-de-Projeto.pptx
 
Desenvolvendo mvp com python
Desenvolvendo mvp com pythonDesenvolvendo mvp com python
Desenvolvendo mvp com python
 
Feature Injection - Descobrindo e entregando valor testável
Feature Injection - Descobrindo e entregando valor testávelFeature Injection - Descobrindo e entregando valor testável
Feature Injection - Descobrindo e entregando valor testável
 
Programação Orientada a Testes
Programação Orientada a TestesProgramação Orientada a Testes
Programação Orientada a Testes
 
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
 
Encontro Locaweb
Encontro  LocawebEncontro  Locaweb
Encontro Locaweb
 
Encontro Locaweb Curitiba
Encontro  Locaweb CuritibaEncontro  Locaweb Curitiba
Encontro Locaweb Curitiba
 
[DevDay2018] Arquitetura de Software num cenário de incertezas - Arquitetura ...
[DevDay2018] Arquitetura de Software num cenário de incertezas - Arquitetura ...[DevDay2018] Arquitetura de Software num cenário de incertezas - Arquitetura ...
[DevDay2018] Arquitetura de Software num cenário de incertezas - Arquitetura ...
 
Scrum, Agilismo e Boas Práticas
Scrum, Agilismo e Boas PráticasScrum, Agilismo e Boas Práticas
Scrum, Agilismo e Boas Práticas
 

Plus de Victor Hugo Germano

Expectativa ágil - Caipira Ágil 2017
Expectativa ágil - Caipira Ágil 2017Expectativa ágil - Caipira Ágil 2017
Expectativa ágil - Caipira Ágil 2017Victor Hugo Germano
 
O que não te contaram sobre entregar projetos Ágeis - TDC2017
O que não te contaram sobre entregar projetos Ágeis - TDC2017O que não te contaram sobre entregar projetos Ágeis - TDC2017
O que não te contaram sobre entregar projetos Ágeis - TDC2017Victor Hugo Germano
 
Agile coaching competency framework - TDC
Agile coaching competency framework - TDCAgile coaching competency framework - TDC
Agile coaching competency framework - TDCVictor Hugo Germano
 
5 disfunções de um time Scrum Day
5 disfunções de um time   Scrum Day5 disfunções de um time   Scrum Day
5 disfunções de um time Scrum DayVictor Hugo Germano
 
5 disfunções de um time - Devops Summit Brasil
5 disfunções de um time  - Devops Summit Brasil5 disfunções de um time  - Devops Summit Brasil
5 disfunções de um time - Devops Summit BrasilVictor Hugo Germano
 
Direto ao Ponto - DevOpsSummit Brasil
Direto ao Ponto - DevOpsSummit BrasilDireto ao Ponto - DevOpsSummit Brasil
Direto ao Ponto - DevOpsSummit BrasilVictor Hugo Germano
 
Métricas que importam Agile Brazil 2016
Métricas que importam   Agile Brazil 2016Métricas que importam   Agile Brazil 2016
Métricas que importam Agile Brazil 2016Victor Hugo Germano
 
Auto-gestão, negócios e produtividade - Agile Floripa 2016
Auto-gestão, negócios e produtividade - Agile Floripa 2016Auto-gestão, negócios e produtividade - Agile Floripa 2016
Auto-gestão, negócios e produtividade - Agile Floripa 2016Victor Hugo Germano
 
Democracia Organizacional - Linguagil 2015
Democracia Organizacional - Linguagil 2015Democracia Organizacional - Linguagil 2015
Democracia Organizacional - Linguagil 2015Victor Hugo Germano
 
Trilha management 3.0 - arbejdsglaede v2 (1)
Trilha   management 3.0 - arbejdsglaede v2 (1)Trilha   management 3.0 - arbejdsglaede v2 (1)
Trilha management 3.0 - arbejdsglaede v2 (1)Victor Hugo Germano
 
Democracia organizacional TDC 2013
Democracia organizacional TDC 2013Democracia organizacional TDC 2013
Democracia organizacional TDC 2013Victor Hugo Germano
 
Trust - Diana Larsen at Agiles 2009
Trust - Diana Larsen at Agiles 2009Trust - Diana Larsen at Agiles 2009
Trust - Diana Larsen at Agiles 2009Victor Hugo Germano
 

Plus de Victor Hugo Germano (20)

Expectativa ágil - Caipira Ágil 2017
Expectativa ágil - Caipira Ágil 2017Expectativa ágil - Caipira Ágil 2017
Expectativa ágil - Caipira Ágil 2017
 
O que não te contaram sobre entregar projetos Ágeis - TDC2017
O que não te contaram sobre entregar projetos Ágeis - TDC2017O que não te contaram sobre entregar projetos Ágeis - TDC2017
O que não te contaram sobre entregar projetos Ágeis - TDC2017
 
Agile coaching competency framework - TDC
Agile coaching competency framework - TDCAgile coaching competency framework - TDC
Agile coaching competency framework - TDC
 
5 disfunções de um time Scrum Day
5 disfunções de um time   Scrum Day5 disfunções de um time   Scrum Day
5 disfunções de um time Scrum Day
 
5 disfunções de um time - Devops Summit Brasil
5 disfunções de um time  - Devops Summit Brasil5 disfunções de um time  - Devops Summit Brasil
5 disfunções de um time - Devops Summit Brasil
 
Direto ao Ponto - DevOpsSummit Brasil
Direto ao Ponto - DevOpsSummit BrasilDireto ao Ponto - DevOpsSummit Brasil
Direto ao Ponto - DevOpsSummit Brasil
 
Métricas que importam Agile Brazil 2016
Métricas que importam   Agile Brazil 2016Métricas que importam   Agile Brazil 2016
Métricas que importam Agile Brazil 2016
 
Auto-gestão, negócios e produtividade - Agile Floripa 2016
Auto-gestão, negócios e produtividade - Agile Floripa 2016Auto-gestão, negócios e produtividade - Agile Floripa 2016
Auto-gestão, negócios e produtividade - Agile Floripa 2016
 
O Mundo dos OKRs
O Mundo dos OKRsO Mundo dos OKRs
O Mundo dos OKRs
 
Além da gestão tradicional
Além da gestão tradicionalAlém da gestão tradicional
Além da gestão tradicional
 
Democracia Organizacional - Linguagil 2015
Democracia Organizacional - Linguagil 2015Democracia Organizacional - Linguagil 2015
Democracia Organizacional - Linguagil 2015
 
Trilha management 3.0 - arbejdsglaede v2 (1)
Trilha   management 3.0 - arbejdsglaede v2 (1)Trilha   management 3.0 - arbejdsglaede v2 (1)
Trilha management 3.0 - arbejdsglaede v2 (1)
 
Democracia organizacional TDC 2013
Democracia organizacional TDC 2013Democracia organizacional TDC 2013
Democracia organizacional TDC 2013
 
Largamos o cucumber
Largamos o cucumberLargamos o cucumber
Largamos o cucumber
 
O futuro do agile - TDC 2011
O futuro do agile - TDC 2011O futuro do agile - TDC 2011
O futuro do agile - TDC 2011
 
O futuro do agile
O futuro do agileO futuro do agile
O futuro do agile
 
Minicurso groovy grails
Minicurso groovy grailsMinicurso groovy grails
Minicurso groovy grails
 
Having fun with jabber bots
Having fun with jabber botsHaving fun with jabber bots
Having fun with jabber bots
 
Voce Tem Orgulho Do Seu Codigo
Voce Tem Orgulho Do Seu CodigoVoce Tem Orgulho Do Seu Codigo
Voce Tem Orgulho Do Seu Codigo
 
Trust - Diana Larsen at Agiles 2009
Trust - Diana Larsen at Agiles 2009Trust - Diana Larsen at Agiles 2009
Trust - Diana Larsen at Agiles 2009
 

Do Monumental Ao Agil