SlideShare ist ein Scribd-Unternehmen logo
1 von 90
 Desenvolvimento de Software
 Métodos Àgeis de          Tradicional
Desenvolvimento de
                           • Problemas do Desenvolvimento
     Software
                             Tradicional
                          Métodos Ágeis de Desenvolvimento
                           • Manifesto Àgil
                           • Princípios
                          Práticas Ágeis
                          XP
                          Scrum
                          Outras Metoologias



16/9/2012        ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   2
    http://www.agilcoop.org.br/curso_de_verao_2010
    http://www.scrumalliance.org/
    http://www.extremeprogramming.org/
    http://improveit.com.br/scrum
    http://visaoagil.wordpress.com/
    http://amagno.blogspot.com/
    http://www.infoq.com/br/




16/9/2012         ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   3
    Sociedade demanda
     • Grande quantidade de sistemas/aplicações
     • Software complexo, distribuído, heterogêneo
     • Requisitos mutantes(todo ano, todo mês, toda
         semana, todo dia)




    16/9/2012       ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   5
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   6
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   7
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   8
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   9
    Supõem que é possivel prever o futuro.
    Pouca interação com os clientes.
    Ênfase em burocracias.
     • (documentos, formulários, processos, controles
        rígidos, etc...)
    Avaliação do progresso baseado na evolução
     da burocracia e não do código
    Grande quantidade de erros
    Falta de flexibilidade no software
     desenvolvido
16/9/2012          ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   10
    Melhores tecnologias
     • Padrões de projeto (reutilização de idéias)
     • Componentes (reutilização de código)
     • Middleware/frameworks (aumenta a abstração)


    Melhores metodologias
     • Métodos Àgeis



16/9/2012        ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   11
    Movimento iniciado por programadores
     experientes e consultores em desenvolvimento de
     software.
    Questionam e se opõem a uma série de mitos
     práticas adotadas em abordagens tradicionais de
     Engenharia de Software e Gerência de Projetos.
    Manifesto Ágil: Assinado por 17 desenvolvedores
     em Utah em fevereiro/2001.
     • http://agilemanifesto.org

    16/9/2012      ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   13
    Indivíduos e interações são mais importantes do
     que processos e ferramentas
    Software funcionando é mais importante do que
     documentação detalhada
    Colaboração com o cliente é mais importante do
     que negociação de contratos
    Adaptação às mudanças é mais importante do que
     seguir um plano inicial

    16/9/2012    ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   14
    Prioridade máxima: satisfazer o usuário através de
     entrega rápida e contínua de software com valor.
    Receber bem requisitos mutantes, mesmo tarde no
     desenvolvimento. Processos ágeis aguentam
     mudanças para a vantagem competitiva do
     consumidor.
    Entregar software em funcionamento com
     frequência, de algumas semanas a alguns meses,
     dando preferência à menor periodicidade.

    16/9/2012    ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   15
    Pessoas de negócio e desenvolvedores devem
     trabalhar diariamente durante o projeto.

    Construa projetos em volta de indivíduos
     motivados. Dê a eles o ambiente e o suporte de que
     eles precisam, e confie que eles farão o serviço.

    O método mais eficiente de passar informação para
     e entre uma equipe de desenvolvimento é conversa
     cara-a-cara.

    16/9/2012    ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   16
    Software rodando é a principal medida de
     progresso.

    Processos ágeis precisam de desenvolvimento
     sustentável. Patrocinadores, desenvolvedores e
     usuários devem aguentar manter um ritmo
     constante indefinidamente.

    Atenção contínua à excelência técnica e bom
     projeto melhora a agilidade.
    16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   17
   Simplicidade -- a arte de maximizar a quantidade
    de trabalho não realizado -- é essencial.

   As melhores arquiteturas, requisitos e projetos
    emergem de equipes auto-organizadas.

   Em intervalos regulares, a equipe reflete sobre
    como se tornar mais eficiente, e deve ajustar seu
    comportamento de acordo.
16/9/2012      ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   18
    Comunicação
    Negociação
    Ciclo de Vida Iterativo
    Gerenciamento Ágil
    Modelagem Ágil
    Visibilidade do Projeto

16/9/2012       ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   20
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   21
    Evitar telefone sem fio
    Desenvolvedores diretamente com o cliente




    16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   22
4 variáveis do desenvolvimento de Software


      Escop             Prazo                      Custo                    Qualidade
      o
            Fixo                                                                  Variável


                      Abordagem tradicional

16/9/2012          ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA              23
4 variáveis do desenvolvimento de Software


      Escop                 Prazo                      Custo                   Qualidade
      o
            Variável             Fixo


                                Abordagem Ágil
16/9/2012              ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA        24
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   25
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   26
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   27
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   28
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   29
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   30
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   31
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   32
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   33
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   34
http://www.extremeprogramming.org/




 http://www.scrumalliance.org/




16/9/2012           ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   35
Kent Beck Estados Unidos 1999

                                                            XP é leve
                                               XP é focado no
                                           desenvolvimento de
                                                     software
                                   XP funciona em times de
                                         qualquer tamanho
                               XP se adapta bem a requisitos
                                                     vagos e que mudam
16/9/2012
                                                                   rapidamente
            ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA         37
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   38
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   39
Ciclo Trimestral                               Releases


            Ciclo Semanal                                        Iterações




16/9/2012          ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   40
Cliente escreve estórias                          Jogo do
                                                                                        Planejamento


             Retrospectiva
                                                                          Desenvolvedores Estimam




Cliente aprova o resultado
                                                                               Cliente Prioriza as estórias




                                                              Desenvolvedores constroem
            Desenvolvedores Implementam
                                                                       tarefas


16/9/2012                ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA                   41
    Estórias exprimem o comportamento de uma
     funcionalidade geral

    Estórias são escritas na linguagem natural

    Formato: Who – What - Why

    Ex:
     • No papel de administrador do sistema eu quero
        realizar o cadastro de usuários, para armazenar
        informações de contato: nome, telefone e e-mail.
16/9/2012         ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   42
    Objetivo: Estimar custo de desenvolvimento
     das estórias.
    Características:

      Cartas
      Todos fazem estimativas para
     todas as estórias
      As estimativas são individuais
      Tempo (horas/dias)

16/9/2012       ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   43
   Responsabilidade nas mãos do cliente

   “Aguarde e Confie”

   Conceito Chave no XP

   Limite máximo


16/9/2012      ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   44
    Ex:
     • Estória: No papel de administrador do sistema eu quero
       realizar o cadastro de usuários, para armazenar
       informações de contato: nome, telefone e e-mail.

     • Tarefas:
            ▪ Modelagem do banco de dados
            ▪ Criar Interface
            ▪ Implementar cadastro



16/9/2012            ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   45
    Programação em par

     • Todo o código
     • Um digita, outro revisa
     • Redução de bugs
     • Disseminação do conhecimento
     • Pressão do par
     • Simplicidade
     • Velocidade


16/9/2012           ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   46
   Desenvolvimento dirigido a testes

     Propriedade coletiva do código

     Base de código unificada

     Sentar-se junto

     Refatoração

16/9/2012      ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   47
“Se você não tiver um ambiente razoável para trabalhar, seu projeto não terá
                                sucesso” (Kent Beck)


   Quadro(s) brancos
   Post-it
   Cadeiras giratórias
   Jogos
   Comida e café
   Folhas em branco
   Privacidade

16/9/2012               ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   48
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   49
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   50
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   51
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   52
•Comunicação
                                                       •Simplicidade
                                                       •Coragem
              Valores                                  •Feedback
                                                       •Respeito


            Princípios



              Práticas



16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   53
•Auto-semelhança (Self-Similarity)
                                               • Benefício Mútuo (Mutal Benefit)
             Valores                           •Diversidade (Diversity)
                                               •Economia (Economics)
                                               • Falha (Failure)
                                               • Fluidez (Flow)
                                               • Humanismo (Humanity)
            Princípios                         • Melhoria (Improvement)
                                               •Oportunidade (Opportunity)
                                               •Passos de Bebê (Baby Steps)
                                               •Qualidade (Quality)
                                               • Redundância (Redundancy)
             Práticas                          • Reflexão (Reflection)
                                               •Responsabilidade Aceita (Accepted Responsa


16/9/2012               ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   54
Práticas Primárias
                                            •Ambiente Informativo (Informative workspace)
             Valores                        •Build de dez minutos (Ten-MinuteBuild)
                                            •Ciclo Semanal (Weekly Cycle)
                                            •Ciclo Trimestral (Quarterly Cycle)
                                            •Desenvolvimento Orientado a Testes
                                            (Test-First Programming)
            Princípios                      •Design Incremental (Incremental Desing)
                                            •Equipe Integral (Whole Team)
                                            •Folga (Slack)
                                            •Histórias (Stories)
                                            •Integração Contínua (Continuous Integration)
            Práticas                        •Programação em Par (Pair Programming)
                                            •Sentar-se junto (Sit together)
                                            •Trabalho Energizado (Energized Work)

16/9/2012              ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA    55
Práticas Corolárias
                                            • Análise da Raiz do Problema (Root-Cause Analysis)
                                            • Base de Código Unificada (Single Code Base)
             Valores                        • Código Coletivo (Shared Code)
                                            • Código e testes (Code and Tests)
                                            • Continuidade da equipe (Team Continuity)
                                            • Contrato de Escopo Negociável
                                            (Negotiated12 Scope Contract)
            Princípios                      • Envolvimento do cliente Real
                                            (Real Custumer Involvement)
                                            • Equipes que encolhem (Shrinking Teams)
                                            • Implantação diária (Daily Deployment)
                                            • Implantação incremental (Incremental Deployment)
            Práticas                        • Pagar por uso (Pay-Per-Use)




16/9/2012              ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA          56
• Pequenos ciclos de pedidos
       • Escopo limitado
       • Implementação das características prioritárias ao
            negócio primeiro




16/9/2012           ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   58
• XP pede ao cliente que escolha a funcionalidade
            que faça maior diferença economicamente.




16/9/2012           ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   59
• Muitos testes são feitos
         ▪ Desenvolvedores testam função por função
         ▪ Clientes testam funcionalidade por funcionalidade




16/9/2012          ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   60
• O cliente vira parte integral do time




16/9/2012         ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   61
• Implementação em ciclos




16/9/2012       ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   62
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   64
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   65
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   66
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   67
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   68
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   69
   FDD – Feature Driven Development
    Crystal Family
    DSDM (Dynamic Systems Development
     Method)
    ASD (Adaptative Software Development)




16/9/2012     ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   71
    Estória 0:
       No papel de administrador do sistema eu quero realizar o cadastro de
            usuários, para armazenar informações de contato: nome, telefone e
            e-mail.

     Estória 1:
      • O sistema deverá permitir aos usuários cadastrarem notícias. A
            notícia deve ter manchete, descrição e conteúdo. O sistema deverá
            listar todas as notícias.

     Estória 2:
      • A partir da listagem das notícias, o sistema deverá permitir ao usuário
            enviar uma notícia para o e-mail de um usuário cadastrado.



16/9/2012               ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   73
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   74
    Seus princípios e práticas proporcionam um
     equilíbrio entre as filosofias tradicionais e as
     mais extremas, proporcionando uma
     transição mais suave para organizações mais
     conservadoras, e a retomada da
     responsabilidade para as organizações que se
     desiludiram com as propostas mais radicais.


16/9/2012       ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   76
  1997-1998, Singapura
  Contexto: Desenvolvimento de um grande sistema de
  empréstimos para um banco internacional
 Anteriormente, após 2 anos de consultoria, 3.500
  páginas de casos de (in)uso e um modelo de objetos
  com centenas de classes, foi avaliado como
  impossível
 Decisão: Implantação das metodologias de OOAD de
  Peter Coad e de gerência de projetos de Jeff De Luca
 Resultado: 15 meses após a contratação da dupla,
  2.000 features entregues por uma equipe de 50
  pessoas
16/9/2012    ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   77
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   78
   Característica ou funcionalidade
   Pequena o suficiente para ser implementada no
    máximo em 2 semanas
   Oferece valor para o cliente
   Mapeia passos em uma atividade de negócio
     Pode ser um passo de um caso de uso
     Às vezes pode ser o próprio caso de uso
 Conceito muito próximo ao de um requisito
  funcional
 Modelo: <ação> <resultado> <objeto>
     Calcular o total de uma venda
     Autorizar uma transação com cartão de um cliente
16/9/2012        ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   79
   Desenvolver um Modelo Abrangente
     Modelagem dos Processos de Negócio (BPM)
     Análise Orientada por Objetos (OOA)
   Construir a Lista de Features
      Decomposição Funcional
   Planejar por Feature
     Plano de Desenvolvimento
     Prioridade, Dependência, Distribuição de Trabalho
   Detalhar por Feature
     Projeto OO (OOD), Estudo Detalhado
   Construir por Feature
     Programação OO (OOP)
     Inspeção, Testes, Integração

                  ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   80
©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   81
©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   82
©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   83
©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   84
©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   85
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   86
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   87
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   88
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   89
16/9/2012   ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA   90

Weitere ähnliche Inhalte

Was ist angesagt?

Apresentação pdca
Apresentação pdcaApresentação pdca
Apresentação pdca
emc5714
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento web
Rodrigo Rodrigues
 

Was ist angesagt? (20)

Apresentação pdca
Apresentação pdcaApresentação pdca
Apresentação pdca
 
Metodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareMetodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de Software
 
Modelagem de dados
Modelagem de dadosModelagem de dados
Modelagem de dados
 
Gerenciamento de Projetos
Gerenciamento de ProjetosGerenciamento de Projetos
Gerenciamento de Projetos
 
Aula 1 - Introdução a Engenharia de Software
Aula 1 -  Introdução a Engenharia de SoftwareAula 1 -  Introdução a Engenharia de Software
Aula 1 - Introdução a Engenharia de Software
 
Lógica de programação em ppt
Lógica de programação em pptLógica de programação em ppt
Lógica de programação em ppt
 
Aula 1 - Gestão de Projetos
Aula 1 - Gestão de ProjetosAula 1 - Gestão de Projetos
Aula 1 - Gestão de Projetos
 
Scrum
ScrumScrum
Scrum
 
Gerenciamento de projetos apostila completa
Gerenciamento de projetos   apostila completaGerenciamento de projetos   apostila completa
Gerenciamento de projetos apostila completa
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }
 
Scrum - Fundamentos, teorias e práticas!
Scrum - Fundamentos, teorias e práticas!Scrum - Fundamentos, teorias e práticas!
Scrum - Fundamentos, teorias e práticas!
 
Gerenciamento de Projetos - Aula01 - Uma Introdução ao Gerenciamento de Projetos
Gerenciamento de Projetos - Aula01 - Uma Introdução ao Gerenciamento de ProjetosGerenciamento de Projetos - Aula01 - Uma Introdução ao Gerenciamento de Projetos
Gerenciamento de Projetos - Aula01 - Uma Introdução ao Gerenciamento de Projetos
 
Kanban
KanbanKanban
Kanban
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento web
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
Prototipação
PrototipaçãoPrototipação
Prototipação
 
Metodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de SoftwareMetodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de Software
 
Aula01 - Logica de Programação
Aula01 - Logica de ProgramaçãoAula01 - Logica de Programação
Aula01 - Logica de Programação
 
Gestão Ágil de Projetos com Scrum
Gestão Ágil de Projetos com ScrumGestão Ágil de Projetos com Scrum
Gestão Ágil de Projetos com Scrum
 
Introdução a gerenciamento de projetos e PMBoK®
Introdução a gerenciamento de projetos e PMBoK®Introdução a gerenciamento de projetos e PMBoK®
Introdução a gerenciamento de projetos e PMBoK®
 

Andere mochten auch

Apresenta+º+úo csi pull system (1) (cópia em conflito de paulo keglevich 20...
Apresenta+º+úo csi   pull system (1) (cópia em conflito de paulo keglevich 20...Apresenta+º+úo csi   pull system (1) (cópia em conflito de paulo keglevich 20...
Apresenta+º+úo csi pull system (1) (cópia em conflito de paulo keglevich 20...
Rodrigo Costa
 
Gestão à vista logical
Gestão à vista logicalGestão à vista logical
Gestão à vista logical
Hiroaki Kokudai
 
Gestão a vista semanal
Gestão a vista semanalGestão a vista semanal
Gestão a vista semanal
Ythia Karla
 
Gestão Visual e Manutenção
Gestão Visual e ManutençãoGestão Visual e Manutenção
Gestão Visual e Manutenção
Luis Fernandes
 
Kaizen kanban-lean manufacturing
Kaizen kanban-lean manufacturingKaizen kanban-lean manufacturing
Kaizen kanban-lean manufacturing
institutocarvalho
 
Lean manufacturing slides
Lean manufacturing slidesLean manufacturing slides
Lean manufacturing slides
Moises Ribeiro
 

Andere mochten auch (20)

Apresenta+º+úo csi pull system (1) (cópia em conflito de paulo keglevich 20...
Apresenta+º+úo csi   pull system (1) (cópia em conflito de paulo keglevich 20...Apresenta+º+úo csi   pull system (1) (cópia em conflito de paulo keglevich 20...
Apresenta+º+úo csi pull system (1) (cópia em conflito de paulo keglevich 20...
 
Gestão à vista logical
Gestão à vista logicalGestão à vista logical
Gestão à vista logical
 
MCK Help Chain
MCK Help ChainMCK Help Chain
MCK Help Chain
 
Apresentacao da Comunidade
Apresentacao da ComunidadeApresentacao da Comunidade
Apresentacao da Comunidade
 
PROCERGS 2015-03-25: Bad Smells em Bancos de Dados
PROCERGS 2015-03-25: Bad Smells em Bancos de DadosPROCERGS 2015-03-25: Bad Smells em Bancos de Dados
PROCERGS 2015-03-25: Bad Smells em Bancos de Dados
 
Kanban, elementos visuais para gestão de impacto
Kanban, elementos visuais para gestão de impactoKanban, elementos visuais para gestão de impacto
Kanban, elementos visuais para gestão de impacto
 
Implementando o Desenvolvimento Lean de Software - Do conceito ao dinheiro
Implementando o Desenvolvimento Lean de Software - Do conceito ao dinheiroImplementando o Desenvolvimento Lean de Software - Do conceito ao dinheiro
Implementando o Desenvolvimento Lean de Software - Do conceito ao dinheiro
 
Lean adicionando valor ao cliente
Lean adicionando valor ao clienteLean adicionando valor ao cliente
Lean adicionando valor ao cliente
 
Lean Thinking: Mentalidade Enxuta para Desenvolvimento Ágil de Software
Lean Thinking: Mentalidade Enxuta para Desenvolvimento Ágil de SoftwareLean Thinking: Mentalidade Enxuta para Desenvolvimento Ágil de Software
Lean Thinking: Mentalidade Enxuta para Desenvolvimento Ágil de Software
 
Lean_Encontro Gestão Industrial_ESEIG
Lean_Encontro Gestão Industrial_ESEIGLean_Encontro Gestão Industrial_ESEIG
Lean_Encontro Gestão Industrial_ESEIG
 
OEE Eficiência Global de Equipamento
OEE Eficiência Global de EquipamentoOEE Eficiência Global de Equipamento
OEE Eficiência Global de Equipamento
 
Lean Principios
Lean PrincipiosLean Principios
Lean Principios
 
Gestão a vista semanal
Gestão a vista semanalGestão a vista semanal
Gestão a vista semanal
 
Gestão Visual e Manutenção
Gestão Visual e ManutençãoGestão Visual e Manutenção
Gestão Visual e Manutenção
 
Lean Manufacturing
Lean ManufacturingLean Manufacturing
Lean Manufacturing
 
Kaizen kanban-lean manufacturing
Kaizen kanban-lean manufacturingKaizen kanban-lean manufacturing
Kaizen kanban-lean manufacturing
 
Text Mining para BI e Finalização do Dashboard no Tableau
Text Mining para BI e Finalização do Dashboard no TableauText Mining para BI e Finalização do Dashboard no Tableau
Text Mining para BI e Finalização do Dashboard no Tableau
 
Gestão à Vista exemplos
Gestão à Vista exemplosGestão à Vista exemplos
Gestão à Vista exemplos
 
Lean manufacturing slides
Lean manufacturing slidesLean manufacturing slides
Lean manufacturing slides
 
Lean Manufacturing 2
Lean Manufacturing 2Lean Manufacturing 2
Lean Manufacturing 2
 

Ähnlich wie Aula - Metodologias Ágeis

Teamware Desmistificando Agile E Scrum V2
Teamware   Desmistificando Agile E Scrum V2Teamware   Desmistificando Agile E Scrum V2
Teamware Desmistificando Agile E Scrum V2
Teamware do Brasil
 

Ähnlich wie Aula - Metodologias Ágeis (20)

metodos ageis.pptx
metodos ageis.pptxmetodos ageis.pptx
metodos ageis.pptx
 
Aula - Aplicação de Metodologias/Práticas Ágeis em Projetos de BI
Aula - Aplicação de Metodologias/Práticas Ágeis em Projetos de BIAula - Aplicação de Metodologias/Práticas Ágeis em Projetos de BI
Aula - Aplicação de Metodologias/Práticas Ágeis em Projetos de BI
 
UX Talks | Desafios na Prática de UX Design
UX Talks | Desafios na Prática de UX DesignUX Talks | Desafios na Prática de UX Design
UX Talks | Desafios na Prática de UX Design
 
A evolução do ux nas empresas (e como promovê-la)
A evolução do ux nas empresas (e como promovê-la)A evolução do ux nas empresas (e como promovê-la)
A evolução do ux nas empresas (e como promovê-la)
 
A evolução do ux nas empresas (e como promovê-la)
A evolução do ux nas empresas (e como promovê-la)A evolução do ux nas empresas (e como promovê-la)
A evolução do ux nas empresas (e como promovê-la)
 
Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)
 
Agilidade em projetos de software
Agilidade em projetos de softwareAgilidade em projetos de software
Agilidade em projetos de software
 
doDOC O processador de texto que "realiza a edição automática e instantânea d...
doDOC O processador de texto que "realiza a edição automática e instantânea d...doDOC O processador de texto que "realiza a edição automática e instantânea d...
doDOC O processador de texto que "realiza a edição automática e instantânea d...
 
Curso Scrum - Turma Visie
Curso Scrum - Turma VisieCurso Scrum - Turma Visie
Curso Scrum - Turma Visie
 
Status Report do TCC: SIN-NA7
Status Report do TCC: SIN-NA7Status Report do TCC: SIN-NA7
Status Report do TCC: SIN-NA7
 
Teamware Desmistificando Agile E Scrum V2
Teamware   Desmistificando Agile E Scrum V2Teamware   Desmistificando Agile E Scrum V2
Teamware Desmistificando Agile E Scrum V2
 
Agile User Experience
Agile User ExperienceAgile User Experience
Agile User Experience
 
Jornada para o DevOps
Jornada para o DevOpsJornada para o DevOps
Jornada para o DevOps
 
Fundamentos, Cenário e Perspectivas GP
Fundamentos, Cenário e Perspectivas GPFundamentos, Cenário e Perspectivas GP
Fundamentos, Cenário e Perspectivas GP
 
O uso de metodos ageis no desenvolvimento de software
O uso de metodos ageis no desenvolvimento de softwareO uso de metodos ageis no desenvolvimento de software
O uso de metodos ageis no desenvolvimento de software
 
Ll3#15
Ll3#15Ll3#15
Ll3#15
 
20100202 Diretor De Fabrica V.1.0
20100202 Diretor De Fabrica V.1.020100202 Diretor De Fabrica V.1.0
20100202 Diretor De Fabrica V.1.0
 
Software para Gerência de Projetos baseado em Metodologias Ágeis [Apresentação]
Software para Gerência de Projetos baseado em Metodologias Ágeis [Apresentação]Software para Gerência de Projetos baseado em Metodologias Ágeis [Apresentação]
Software para Gerência de Projetos baseado em Metodologias Ágeis [Apresentação]
 
Currículo_Português.pdf
Currículo_Português.pdfCurrículo_Português.pdf
Currículo_Português.pdf
 
Mobile UX - MobileConf 2014 - RJ
Mobile UX - MobileConf 2014 - RJMobile UX - MobileConf 2014 - RJ
Mobile UX - MobileConf 2014 - RJ
 

Mehr von Mauricio Cesar Santos da Purificação

Mehr von Mauricio Cesar Santos da Purificação (20)

Intelligence, Discovery, Analytics e Data Science: Evolução, Desafios e Oport...
Intelligence, Discovery, Analytics e Data Science: Evolução, Desafios e Oport...Intelligence, Discovery, Analytics e Data Science: Evolução, Desafios e Oport...
Intelligence, Discovery, Analytics e Data Science: Evolução, Desafios e Oport...
 
R para Iniciantes
R para IniciantesR para Iniciantes
R para Iniciantes
 
Aprendendo R
Aprendendo RAprendendo R
Aprendendo R
 
Intelligence, Discovery, Science e Analytics: Transformando Dados em Ouro
Intelligence, Discovery, Science e Analytics: Transformando Dados em OuroIntelligence, Discovery, Science e Analytics: Transformando Dados em Ouro
Intelligence, Discovery, Science e Analytics: Transformando Dados em Ouro
 
Pitch AcheSeuEstúdio - Campus Party
Pitch AcheSeuEstúdio - Campus PartyPitch AcheSeuEstúdio - Campus Party
Pitch AcheSeuEstúdio - Campus Party
 
Pitch BestPoint - Campus Party
Pitch BestPoint - Campus PartyPitch BestPoint - Campus Party
Pitch BestPoint - Campus Party
 
Big Data Analytics
Big Data AnalyticsBig Data Analytics
Big Data Analytics
 
Flyer BestPoint
Flyer BestPointFlyer BestPoint
Flyer BestPoint
 
Pitch BestPoint
Pitch BestPointPitch BestPoint
Pitch BestPoint
 
Será Mesmo o Cientista de Dados a Profissão do Futuro?
Será Mesmo o Cientista de Dados a Profissão do Futuro?Será Mesmo o Cientista de Dados a Profissão do Futuro?
Será Mesmo o Cientista de Dados a Profissão do Futuro?
 
OxenTI - Desenvolvimento de Soluções Inovadoras em TI
OxenTI - Desenvolvimento de Soluções Inovadoras em TIOxenTI - Desenvolvimento de Soluções Inovadoras em TI
OxenTI - Desenvolvimento de Soluções Inovadoras em TI
 
Pitch BestPoint - DemoDay StartupSummer 2015
Pitch BestPoint - DemoDay StartupSummer 2015Pitch BestPoint - DemoDay StartupSummer 2015
Pitch BestPoint - DemoDay StartupSummer 2015
 
BestPoint
BestPointBestPoint
BestPoint
 
Big Data Analytics e Social Mining - Inteligência Em Uma Montanha de Dados?
Big Data Analytics e Social Mining - Inteligência Em Uma Montanha de Dados?Big Data Analytics e Social Mining - Inteligência Em Uma Montanha de Dados?
Big Data Analytics e Social Mining - Inteligência Em Uma Montanha de Dados?
 
Será Mesmo o Cientista de Dados a Profissão do Futuro?
Será Mesmo o Cientista de Dados a Profissão do Futuro?Será Mesmo o Cientista de Dados a Profissão do Futuro?
Será Mesmo o Cientista de Dados a Profissão do Futuro?
 
QlikView In Action - Do BI ao Business Discovery!…
QlikView In Action - Do BI ao Business Discovery!…QlikView In Action - Do BI ao Business Discovery!…
QlikView In Action - Do BI ao Business Discovery!…
 
Dê Adeus ao BI e Seja Bem Vindo à Era do Analytics...
Dê Adeus ao BI e Seja Bem Vindo à Era do Analytics...Dê Adeus ao BI e Seja Bem Vindo à Era do Analytics...
Dê Adeus ao BI e Seja Bem Vindo à Era do Analytics...
 
Adeus BI, Seja Bem Vindo a Era do Analytics?
Adeus BI, Seja Bem Vindo a Era do Analytics?Adeus BI, Seja Bem Vindo a Era do Analytics?
Adeus BI, Seja Bem Vindo a Era do Analytics?
 
Derivação de Modelos ER
Derivação de Modelos ERDerivação de Modelos ER
Derivação de Modelos ER
 
Business Intelligence - Prática e Experiências
Business Intelligence - Prática e ExperiênciasBusiness Intelligence - Prática e Experiências
Business Intelligence - Prática e Experiências
 

Kürzlich hochgeladen

Kürzlich hochgeladen (9)

Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 

Aula - Metodologias Ágeis

  • 1.
  • 2.  Desenvolvimento de Software Métodos Àgeis de Tradicional Desenvolvimento de • Problemas do Desenvolvimento Software Tradicional  Métodos Ágeis de Desenvolvimento • Manifesto Àgil • Princípios  Práticas Ágeis  XP  Scrum  Outras Metoologias 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 2
  • 3. http://www.agilcoop.org.br/curso_de_verao_2010  http://www.scrumalliance.org/  http://www.extremeprogramming.org/  http://improveit.com.br/scrum  http://visaoagil.wordpress.com/  http://amagno.blogspot.com/  http://www.infoq.com/br/ 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 3
  • 4.
  • 5. Sociedade demanda • Grande quantidade de sistemas/aplicações • Software complexo, distribuído, heterogêneo • Requisitos mutantes(todo ano, todo mês, toda semana, todo dia) 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 5
  • 6. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 6
  • 7. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 7
  • 8. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 8
  • 9. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 9
  • 10. Supõem que é possivel prever o futuro.  Pouca interação com os clientes.  Ênfase em burocracias. • (documentos, formulários, processos, controles rígidos, etc...)  Avaliação do progresso baseado na evolução da burocracia e não do código  Grande quantidade de erros  Falta de flexibilidade no software desenvolvido 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 10
  • 11. Melhores tecnologias • Padrões de projeto (reutilização de idéias) • Componentes (reutilização de código) • Middleware/frameworks (aumenta a abstração)  Melhores metodologias • Métodos Àgeis 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 11
  • 12.
  • 13. Movimento iniciado por programadores experientes e consultores em desenvolvimento de software.  Questionam e se opõem a uma série de mitos práticas adotadas em abordagens tradicionais de Engenharia de Software e Gerência de Projetos.  Manifesto Ágil: Assinado por 17 desenvolvedores em Utah em fevereiro/2001. • http://agilemanifesto.org 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 13
  • 14. Indivíduos e interações são mais importantes do que processos e ferramentas  Software funcionando é mais importante do que documentação detalhada  Colaboração com o cliente é mais importante do que negociação de contratos  Adaptação às mudanças é mais importante do que seguir um plano inicial 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 14
  • 15. Prioridade máxima: satisfazer o usuário através de entrega rápida e contínua de software com valor.  Receber bem requisitos mutantes, mesmo tarde no desenvolvimento. Processos ágeis aguentam mudanças para a vantagem competitiva do consumidor.  Entregar software em funcionamento com frequência, de algumas semanas a alguns meses, dando preferência à menor periodicidade. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 15
  • 16. Pessoas de negócio e desenvolvedores devem trabalhar diariamente durante o projeto.  Construa projetos em volta de indivíduos motivados. Dê a eles o ambiente e o suporte de que eles precisam, e confie que eles farão o serviço.  O método mais eficiente de passar informação para e entre uma equipe de desenvolvimento é conversa cara-a-cara. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 16
  • 17. Software rodando é a principal medida de progresso.  Processos ágeis precisam de desenvolvimento sustentável. Patrocinadores, desenvolvedores e usuários devem aguentar manter um ritmo constante indefinidamente.  Atenção contínua à excelência técnica e bom projeto melhora a agilidade. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 17
  • 18. Simplicidade -- a arte de maximizar a quantidade de trabalho não realizado -- é essencial.  As melhores arquiteturas, requisitos e projetos emergem de equipes auto-organizadas.  Em intervalos regulares, a equipe reflete sobre como se tornar mais eficiente, e deve ajustar seu comportamento de acordo. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 18
  • 19.
  • 20. Comunicação  Negociação  Ciclo de Vida Iterativo  Gerenciamento Ágil  Modelagem Ágil  Visibilidade do Projeto 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 20
  • 21. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 21
  • 22. Evitar telefone sem fio  Desenvolvedores diretamente com o cliente 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 22
  • 23. 4 variáveis do desenvolvimento de Software Escop Prazo Custo Qualidade o Fixo Variável Abordagem tradicional 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 23
  • 24. 4 variáveis do desenvolvimento de Software Escop Prazo Custo Qualidade o Variável Fixo Abordagem Ágil 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 24
  • 25. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 25
  • 26. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 26
  • 27. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 27
  • 28. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 28
  • 29. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 29
  • 30. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 30
  • 31. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 31
  • 32. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 32
  • 33. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 33
  • 34. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 34
  • 35. http://www.extremeprogramming.org/ http://www.scrumalliance.org/ 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 35
  • 36.
  • 37. Kent Beck Estados Unidos 1999 XP é leve XP é focado no desenvolvimento de software XP funciona em times de qualquer tamanho XP se adapta bem a requisitos vagos e que mudam 16/9/2012 rapidamente ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 37
  • 38. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 38
  • 39. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 39
  • 40. Ciclo Trimestral Releases Ciclo Semanal Iterações 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 40
  • 41. Cliente escreve estórias Jogo do Planejamento Retrospectiva Desenvolvedores Estimam Cliente aprova o resultado Cliente Prioriza as estórias Desenvolvedores constroem Desenvolvedores Implementam tarefas 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 41
  • 42. Estórias exprimem o comportamento de uma funcionalidade geral  Estórias são escritas na linguagem natural  Formato: Who – What - Why  Ex: • No papel de administrador do sistema eu quero realizar o cadastro de usuários, para armazenar informações de contato: nome, telefone e e-mail. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 42
  • 43. Objetivo: Estimar custo de desenvolvimento das estórias.  Características:  Cartas  Todos fazem estimativas para todas as estórias  As estimativas são individuais  Tempo (horas/dias) 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 43
  • 44. Responsabilidade nas mãos do cliente  “Aguarde e Confie”  Conceito Chave no XP  Limite máximo 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 44
  • 45. Ex: • Estória: No papel de administrador do sistema eu quero realizar o cadastro de usuários, para armazenar informações de contato: nome, telefone e e-mail. • Tarefas: ▪ Modelagem do banco de dados ▪ Criar Interface ▪ Implementar cadastro 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 45
  • 46. Programação em par • Todo o código • Um digita, outro revisa • Redução de bugs • Disseminação do conhecimento • Pressão do par • Simplicidade • Velocidade 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 46
  • 47. Desenvolvimento dirigido a testes  Propriedade coletiva do código  Base de código unificada  Sentar-se junto  Refatoração 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 47
  • 48. “Se você não tiver um ambiente razoável para trabalhar, seu projeto não terá sucesso” (Kent Beck)  Quadro(s) brancos  Post-it  Cadeiras giratórias  Jogos  Comida e café  Folhas em branco  Privacidade 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 48
  • 49. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 49
  • 50. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 50
  • 51. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 51
  • 52. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 52
  • 53. •Comunicação •Simplicidade •Coragem Valores •Feedback •Respeito Princípios Práticas 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 53
  • 54. •Auto-semelhança (Self-Similarity) • Benefício Mútuo (Mutal Benefit) Valores •Diversidade (Diversity) •Economia (Economics) • Falha (Failure) • Fluidez (Flow) • Humanismo (Humanity) Princípios • Melhoria (Improvement) •Oportunidade (Opportunity) •Passos de Bebê (Baby Steps) •Qualidade (Quality) • Redundância (Redundancy) Práticas • Reflexão (Reflection) •Responsabilidade Aceita (Accepted Responsa 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 54
  • 55. Práticas Primárias •Ambiente Informativo (Informative workspace) Valores •Build de dez minutos (Ten-MinuteBuild) •Ciclo Semanal (Weekly Cycle) •Ciclo Trimestral (Quarterly Cycle) •Desenvolvimento Orientado a Testes (Test-First Programming) Princípios •Design Incremental (Incremental Desing) •Equipe Integral (Whole Team) •Folga (Slack) •Histórias (Stories) •Integração Contínua (Continuous Integration) Práticas •Programação em Par (Pair Programming) •Sentar-se junto (Sit together) •Trabalho Energizado (Energized Work) 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 55
  • 56. Práticas Corolárias • Análise da Raiz do Problema (Root-Cause Analysis) • Base de Código Unificada (Single Code Base) Valores • Código Coletivo (Shared Code) • Código e testes (Code and Tests) • Continuidade da equipe (Team Continuity) • Contrato de Escopo Negociável (Negotiated12 Scope Contract) Princípios • Envolvimento do cliente Real (Real Custumer Involvement) • Equipes que encolhem (Shrinking Teams) • Implantação diária (Daily Deployment) • Implantação incremental (Incremental Deployment) Práticas • Pagar por uso (Pay-Per-Use) 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 56
  • 57.
  • 58. • Pequenos ciclos de pedidos • Escopo limitado • Implementação das características prioritárias ao negócio primeiro 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 58
  • 59. • XP pede ao cliente que escolha a funcionalidade que faça maior diferença economicamente. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 59
  • 60. • Muitos testes são feitos ▪ Desenvolvedores testam função por função ▪ Clientes testam funcionalidade por funcionalidade 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 60
  • 61. • O cliente vira parte integral do time 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 61
  • 62. • Implementação em ciclos 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 62
  • 63.
  • 64. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 64
  • 65. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 65
  • 66. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 66
  • 67. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 67
  • 68. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 68
  • 69. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 69
  • 70.
  • 71. FDD – Feature Driven Development  Crystal Family  DSDM (Dynamic Systems Development Method)  ASD (Adaptative Software Development) 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 71
  • 72.
  • 73. Estória 0:  No papel de administrador do sistema eu quero realizar o cadastro de usuários, para armazenar informações de contato: nome, telefone e e-mail.  Estória 1: • O sistema deverá permitir aos usuários cadastrarem notícias. A notícia deve ter manchete, descrição e conteúdo. O sistema deverá listar todas as notícias.  Estória 2: • A partir da listagem das notícias, o sistema deverá permitir ao usuário enviar uma notícia para o e-mail de um usuário cadastrado. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 73
  • 74. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 74
  • 75.
  • 76. Seus princípios e práticas proporcionam um equilíbrio entre as filosofias tradicionais e as mais extremas, proporcionando uma transição mais suave para organizações mais conservadoras, e a retomada da responsabilidade para as organizações que se desiludiram com as propostas mais radicais. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 76
  • 77.  1997-1998, Singapura  Contexto: Desenvolvimento de um grande sistema de empréstimos para um banco internacional  Anteriormente, após 2 anos de consultoria, 3.500 páginas de casos de (in)uso e um modelo de objetos com centenas de classes, foi avaliado como impossível  Decisão: Implantação das metodologias de OOAD de Peter Coad e de gerência de projetos de Jeff De Luca  Resultado: 15 meses após a contratação da dupla, 2.000 features entregues por uma equipe de 50 pessoas 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 77
  • 78. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 78
  • 79. Característica ou funcionalidade  Pequena o suficiente para ser implementada no máximo em 2 semanas  Oferece valor para o cliente  Mapeia passos em uma atividade de negócio  Pode ser um passo de um caso de uso  Às vezes pode ser o próprio caso de uso  Conceito muito próximo ao de um requisito funcional  Modelo: <ação> <resultado> <objeto>  Calcular o total de uma venda  Autorizar uma transação com cartão de um cliente 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 79
  • 80. Desenvolver um Modelo Abrangente  Modelagem dos Processos de Negócio (BPM)  Análise Orientada por Objetos (OOA)  Construir a Lista de Features  Decomposição Funcional  Planejar por Feature  Plano de Desenvolvimento  Prioridade, Dependência, Distribuição de Trabalho  Detalhar por Feature  Projeto OO (OOD), Estudo Detalhado  Construir por Feature  Programação OO (OOP)  Inspeção, Testes, Integração ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 80
  • 81. ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 81
  • 82. ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 82
  • 83. ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 83
  • 84. ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 84
  • 85. ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 85
  • 86. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 86
  • 87. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 87
  • 88. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 88
  • 89. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 89
  • 90. 16/9/2012 ©2010 | Mauricio Cesar Santos da Purificação | Grupo DW-UFBA 90