SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Downloaden Sie, um offline zu lesen
Agile,
                             para o seu dia ser mais feliz =)
                                     Parte 01 de 02
                                         Lab @Zigotto
                                          23-12-2010
                                        por @edercosta




quinta-feira, 23 de dezembro de 2010
O início
                       Trabalhar com tecnologia ainda é desbravar um
                       caminho obscuro, com a necessidade humana de
                       criar e organizar processos, os primeiros
                       envolvidos na área acreditaram na adaptação de
                       regras e conceitos utilizados na industria e em
                       outras áreas, trazendo toda esta cultura a
                       realidade tecnológica, o resultado não foi
                       animador:

                       Em pouco mais de 10 anos, gerou-se uma
                       cultura de atrasos, stress e muitos clientes
                       insatisfeitos.


quinta-feira, 23 de dezembro de 2010
Um pouco da evolução
                       Waterfall:

                       Inspirado nas fases de processos da
                       construção civil, o Waterfall é um processo
                       de gerenciamento de software documentado
                       pela primeira vez em 1970 no paper de
                       Winston W. Royce.




quinta-feira, 23 de dezembro de 2010
O quê o Waterfall sugere
                 ...como funciona
                 System                                       A intenção é que, terminada uma fase, o
              Requirements
                                                              projeto siga para a próxima sem jamais
                                Software                      retornar um trabalho já feito, assim como a
                              Requirements                    água que corre numa cascata nunca volta
                                                              para cima.
                                         Analysis


                                                    Program
                                                     Design


                                                              Coding


                                                                       Testing


                                                                                 Operations


quinta-feira, 23 de dezembro de 2010
E...
                 A bela filosofia resulta em:

                 Pilhas de papéis,
                 Reuniões infundadas,
                 Informações incorretas,
                 Suposições,
                 Distância do cliente,
                 Atrasos,
                 Apresentação do produto incompatível com a
                 necessidade do cliente...

                 =(



quinta-feira, 23 de dezembro de 2010
A história continua...
                 Muitas metodologias foram criadas para resolver
                 os males criados pelo mau uso do Waterfall,
                 dentre vários frameworks do mesmo princípio
                 Unified Processes, o mais famoso é conhecido
                 como RUP, Rational Unified Process


                 Agora vai =)




quinta-feira, 23 de dezembro de 2010
RUP na cabeça negão!
                 Em 1999 a Rational foi severa em suas críticas,
                 contra o Waterffal, deixando claro que os
                 documentos sugeridos não eram mais necessários, e
                 demonstrando que não existe uma solução com
                 moldes específicos para gerenciamento de sistemas.

                 Maleável o RUP traz diversos moldes que podem ser
                 implantados em seu projeto conforme sua
                 necessidade.

                 Com foco maior nas decisões de risco, iterações
                 curtas, somado ao feedback do cliente, o RUP é
                 capaz de estimar com maior precisão a conclusão de
                 um projeto.

quinta-feira, 23 de dezembro de 2010
Diagrama de Baleia
                O diagrama abaixo mostra as atividades da equipe
                durante o desenvolvimento de um projeto.




quinta-feira, 23 de dezembro de 2010
E...
                 Com a forma que o RUP se popularizou temos:

                 Pilhas de papéis,
                 Reuniões infundadas,
                 Informações incorretas,
                 Suposições,
                 Distância do cliente,
                 Atrasos,
                 Apresentação do produto incompatível com a
                 necessidade do cliente...



                 Já vi isso antes! =(

quinta-feira, 23 de dezembro de 2010
Só bola fora?
                 Não é bem assim...

                 A Rational foi excelente em resolver os problemas
                 gerados pelo Waterfall, mas ainda é incompatível
                 com a necessidade do mercado, e também dos
                 envolvidos com o desenvolvimento.

                 Tem com certeza muitos méritos na evolução do que
                 conhecemos hoje, e pensando em evolução os
                 métodos ágeis despertam alguns pontos
                 interessantes para todos os envolvidos no
                 desenvolvimento de um sistema.



quinta-feira, 23 de dezembro de 2010
O lab não era de Agilidade?
                 OK!

                 Em resposta aos problemas encontrados no mundo
                 inteiro, diversas metodologias foram criadas e
                 comumente chamadas de “lightweight processes”, em
                 protesto aos seus predecessores e tantas exigências.

                 Vendo similaridades entre estas novas metodologias,
                 organizou-se um encontro com alguns idealizadores,
                 deste encontro, quatro valores comuns foram
                 destacados, assim surgiu o Manifesto Ágil.



quinta-feira, 23 de dezembro de 2010
Manifesto Ágil
                 “Estamos descobrindo formas melhores de desenvolver
                 software ao fazer e ajudar outros a fazerem software.
                 Por esse trabalho, passamos a valorizar:

                 Indivíduos e Interações sobre processos e ferramentas
                 Software Funcionando sobre documentação compreensiva
                 Colaboração do Cliente sobre negociação de contrato
                 Responder a Mudanças sobre seguir um planejamento

                 Isso quer dizer que, embora haja valor nos itens à
                 direita, valorizamos mais os itens à esquerda.”



quinta-feira, 23 de dezembro de 2010
As coisas foram encaixando
              Em poucos momentos, ou em praticamente nenhum
              momento até o Manifesto Ágil, pessoas se referiam
              a pessoas como sendo pessoas.

              As linhas de produção estavam a todo momento
              sendo montadas usando de braços humanos sem
              analisar seu comportamento e necessidade, passando
              por cima de sua essência.

              “Trabalhamos com máquinas, não somos máquinas.”




quinta-feira, 23 de dezembro de 2010
Manifesto Ágil no Popular
           Indivíduos e Interações sobre processos e ferramentas

           / O que importa são as pessoas
            /

           Software Funcionando sobre documentação compreensiva

           / O que é feito com documentação?
            /

           Colaboração do Cliente sobre negociação de contrato

           / Participação obrigatória
            /

           Responder a Mudanças sobre seguir um planejamento

           / Flexibilidade
            /


quinta-feira, 23 de dezembro de 2010
Princípios ágeis:
      - Priorizar a entrega frequente de software de valor;
      - Receba bem mudanças de requisitos, mesmo em desenvolvimento. Ser
      ágil é enxergar na mudança vantagem competitiva ao cliente;
      - Pessoas de negócios e desenvolvedores devem trabalhar juntos;
      - Pessoas motivadas, proporcione um bom ambiente e suporte, confie
      que eles farão o trabalho;
      - Comunique-se no “cara-a-cara”;
      - Software funcionando é a primeira medida de sucesso;
      - Fluxo de desenvolvimento;
      - Atenção continua, excelência técnica e bom design;
      - Simplicidade;
      - As melhores arquiteturas, requisitos e design emergem de times
      auto-organizados;
      - Reuniões periódicas para reflexão do trabalho e melhoria do mesmo.




quinta-feira, 23 de dezembro de 2010
Belas palavras...
      Com base nas declarações anteriores, um projeto de sucesso seria:

      - Atende às necessidades do cliente;

      - Mantém a equipe feliz: sem hora extra, sem tempo inativo;

      - Código bem feito: permite manter o ritmo, facilita a manutenção;

      - Lucro: tanto para o cliente, quanto para o time.




quinta-feira, 23 de dezembro de 2010
Vantagens da Agilidade
      Feedback rápido: tanto para clientes, quanto para equipe e o
      relacionamento entre essas partes, o feedback constante e rápido permite
      tomar decisões e corrigir problemas antes que eles se tornem crônicos.

      Motivação da equipe: o contato direto com o cliente torna mais fácil
      entender o valor do trabalho do time para o cliente. Não ter o sistema todo
      pré-modelado, poder tomar decisões, também valoriza o desenvolvedor.

      Sem corpo mole: as práticas de engenharia de software incentivadas pelas
      metodologias também são importantíssimas. Quanto mais comunicação
      dentro do time, mais aprendizado. Quanto mais aprendem, melhor a
      qualidade do profissional.

      Ver problema mais cedo: práticas como pareamento e reuniões diárias
      explicitam problemas na equipe mais cedo, possibilitando resolvê-los mais
      cedo.




quinta-feira, 23 de dezembro de 2010
Estão falando que...
      Não há documentação?
      Mentira. A documentação é feita a medida que é necessária.
      Não há regras em Agile contra documentação, mas sim contra
      trabalho desnecessário e contra planejar todo projeto no
      início.

      Preciso de um time experiente?
      Não. Praticas ágeis nivelam seu time para cima. O
      crescimento pessoal é fomentado pela agilidade.

      Agile é mais difícil?
      Verdade, em partes. Trabalhar de forma ágil é menos
      burocrático, para que de certo exige-se disciplina. Disciplina
      em seguir o processo e em se auto gerenciar. Os ganhos
      pessoais são visíveis.

quinta-feira, 23 de dezembro de 2010
Mais da essência...
      Lean
      O sistema Lean de produção foi desenvolvido pela Toyota e
      tem um princípio claro e simples: reduzir desperdício.

      Em 2009, a Toyota vendeu mais carros nos EUA do que a
      nacional e tradicional Ford, tornando-se a segunda maior
      vendedora de carros naquele país. Como uma marca japonesa,
      ultrapassou a gigante Ford que popularizou o automóvel e
      revolucionou o sistema de produção?

      A resposta é Simplificando




quinta-feira, 23 de dezembro de 2010
Segue...
      Lean tem seu foco em minimizar desperdícios, sejam eles no
      processo, no desenvolvimento ou no produto final.

      Considere como desperdício tudo aquilo que não traz valor
      para o cliente, e como ganho tudo aquilo que agrega valor.

      Com foco no desenvolvimento de software, podemos apontar o
      desperdício como sendo tudo aquilo que não é feito para o
      cliente, podendo ser: documentação excessiva,
      desenvolvedores parados por falta de informação, códigos e
      funcionalidades não requisitadas.

      Como ganho tudo que traz valor e reduz o trabalho: testes,
      código de qualidade, entregas frequentes...



quinta-feira, 23 de dezembro de 2010
Desperdícios
      Lean divide desperdício em três categorias de igual
      importância:

      Mura: desperdício por tentar prever possíveis necessidades
      futuras. Evitar Mura significa reduzir ao máximo o inventário,
      isto é, as partes paradas no meio do processo, aquele
      trabalho que começa e não termina...

      Muri: desperdícios que podem ser evitados por planejamento.
      Nessa categoria enquadra-se o excesso de burocracia ou de
      complexidade num processo de produção.

      Muda: desperdícios do dia a dia, criados por uma cultura
      anterior de trabalho.



quinta-feira, 23 de dezembro de 2010
Push vs. Pull Systems
      No sistema Ford de produção, cada estação da linha de
      montagem trabalha enquanto houver matéria prima para tal.
      A quantidade do que será produzido é regulada com base a
      previsões feitas sobre o mercado em um determinado período,
      e não há ligação entre os pedidos reais e a linha de
      produção.

      Dois desperdícios são criados:

      1- as muitas peças produzidas, esperando para serem usadas
      em outras estações, sem sequer saber se há demanda pelo
      produto. Chamamos estas peças de inventário;

      2- o tempo livre dos trabalhadores superespecializados que
      trabalham nas funções terminadas mais cedo.


quinta-feira, 23 de dezembro de 2010
Push vs. Pull Systems...
      Esses são exemplos de Mura. Uma solução possível para tais
      desperdícios é trabalhar com sistema pull em vez dos
      tradicionais push, como descrito.

      O sistema pull, trabalha com o mínimo possível de inventário,
      em vez do planejamento pouco maleável baseado em
      previsões do mercado utilizado pelo sistema push, no sistema
      pull a produção acontece de acordo com a demanda.




quinta-feira, 23 de dezembro de 2010
Push vs. Pull no popular
      Vamos aplicar os dois modelos Pull e Push, em um ambiente
      mais simples.

      Imagine um dia de produção na Pizzaria Leggero , usando do
      sistema Push. O proprietário faria uma previsão de quantas
      pizzas iria produzir durante uma semana, compraria todo
      material e iniciaria a produção dos sabores mais pedidos, em
      poucas horas teríamos um estoque de pizzas de Mussarela,
      Calabresa, Portuguesa...
      Ao final do dia algumas pizzas foram realmente vendidas,
      outras permaneceram um período maior em estoque ficando
      impróprias para o consumo, o estoque necessita ser usado
      para não perder validade.
      Subtraindo do Lucro o Desperdício, o proprietário obteve
      prejuízo =( #fail

quinta-feira, 23 de dezembro de 2010
Push vs. Pull no popular...
      Por estes motivos Pizzarias usam da metodologia Pull, onde
      existe um estoque mínimo para manter a pizzaria durante um
      dia de vendas, e todo conteúdo produzido é feito sob
      demanda.
      Assim ao final do dia, foram produzidas somente os sabores
      demandados.
      O controle de estoque é feito em tempo real, repondo
      somente o que foi usado e é necessário para mais um dia de
      vendas.

      Ao final subtraindo do lucro o desperdício, resultamos numa
      conta positiva =) #win




quinta-feira, 23 de dezembro de 2010
Kanban, quadro de olhar
      Entendendo uma linha de produção como uma sequência de
      passos para produzir algo, a representação obvia para o
      processo é o já consagrado Kanban.

      Nele, é facilmente diferenciado o que existe a fazer, do que
      está sendo feito.




quinta-feira, 23 de dezembro de 2010
Exemplo de Kanban
      Em sistemas push, cada estação de trabalho faz sua parte,
      sem considerar o que já foi feito ou ainda vai ser feito, com o
      Kanban é fácil perceber o acúmulo de trabalho em algumas
      fases, e o tempo ocioso de outras.

       A fazer                    Inventário 1   Inventário 2   Inventário 3   Produto


                                                      2              6           1
             9
                                                      5              3
           10
                                       4                             7
            11
                                                                     8

quinta-feira, 23 de dezembro de 2010
Exemplo de Kanban
      Kanban representando o sistema pull de produção, há um
      limite de inventário claramente determinado. Dessa forma, a
      produção acontece somente com a demanda da mesma.


       A fazer                    Inventário 1   Inventário 2   Inventário 3   Produto
                                       2              2              2

            8                          6              4              2           1

            9                          7              5              3

          10

           11
quinta-feira, 23 de dezembro de 2010
Systems Thinking
      Processos, metodologias, frameworks são criados para facilitar
      o desenvolvimento.

      Em muitos casos, grandes processos consagrados acabam
      atrapalhando uma equipe e não ajudando como deveria.

      Pensar sempre no sistema, Systems Thinking, é pensar e
      repensar durante todo o andamento do projeto no que poderia
      ser melhorado no próprio processo de desenvolvimento e nas
      interações entre as pessoas envolvidas.




quinta-feira, 23 de dezembro de 2010
Work Cells
      Não é possível encontrar possíveis melhorias no processo se
      cada envolvido está focado exclusivamente em uma tarefa, na
      qual é especialista.
      Por isso, Lean, entende que as pessoas envolvidas em um
      projeto não podem ser superespecialistas, isto é, não podem se
      limitar a conhecimento apenas de sua etapa. Deveriam
      conhecer todas elas e saber executar pelo menos algumas
      delas.
      Cada membro da equipe é, desta forma, uma Work Cell: uma
      pessoa capaz de trabalhar no projeto como um todo, em
      algumas ou todas as suas partes. O conhecimento mais amplo
      sobre o projeto é incentivado, melhora-se as críticas e com
      isso é possível melhorar ainda mais o processo.



quinta-feira, 23 de dezembro de 2010
Kaizen
      Na década de 1970, Frederich Brooks publicou um artigo
      chamado “No Silver Bullet”, apesar de tanto tempo o artigo
      ainda é verdadeiro, juntamente com “The Mythical Man-
      Month”, leitura obrigatória para todos aqueles na área de
      Engenharia e Gerenciameto de Software.

      Em Lean, também acredita-se que não exista em processos
      uma bala de prata, capaz de resolver todos os problemas.
      Desta forma, é preciso que cada equipe adapte a metodologia
      e ferramenta à sua necessidade, a todo momento.

      Kaizen, palavra japonesa para melhoria. Melhorias no processo,
      na forma de produção e no produto final são parte do dia a dia
      de quem trabalha com Lean.



quinta-feira, 23 de dezembro de 2010
Obrigado!
     O Labs Zigotto tem o intuito de compartilhar informações
     entre o time de desenvolvimento da Zigotto e pessoas
     próximas, é aberto a todos que queiram participar ou
     contribuir.

     Todo conteúdo destes slides são baseados no treinamento
     PM-83 da escola Caelum. (Indico o mesmo para
     interessados) e experiências na empresa Zigotto.

     Se encontrou algo que não concorda ou correções para o
                                                                @edercosta
     mesmo encaminhe para o e-mail eder@zigotto.com.br




quinta-feira, 23 de dezembro de 2010

Weitere ähnliche Inhalte

Was ist angesagt?

UNA - Eng Usa '12 - aula 01
UNA  - Eng Usa '12 - aula 01UNA  - Eng Usa '12 - aula 01
UNA - Eng Usa '12 - aula 01Marcello Cardoso
 
Treinamento - Product Owner - CLARO-NET-EMBRATEL
Treinamento - Product Owner - CLARO-NET-EMBRATELTreinamento - Product Owner - CLARO-NET-EMBRATEL
Treinamento - Product Owner - CLARO-NET-EMBRATELDaniel Calmazini
 
O Papel do Product Owner
O Papel do Product OwnerO Papel do Product Owner
O Papel do Product OwnerMarcia Maia
 
Metodologia Crystal Clear (Crystal Clear Methodologies)
Metodologia Crystal Clear (Crystal Clear Methodologies)Metodologia Crystal Clear (Crystal Clear Methodologies)
Metodologia Crystal Clear (Crystal Clear Methodologies)Thiago Sinésio
 
A UTILIZAÇÃO DE METODOLOGIAS ÁGEIS PARA A ENTREGA DE SERVIÇOS DE INFRAESTRUTU...
A UTILIZAÇÃO DE METODOLOGIAS ÁGEIS PARA A ENTREGA DE SERVIÇOS DE INFRAESTRUTU...A UTILIZAÇÃO DE METODOLOGIAS ÁGEIS PARA A ENTREGA DE SERVIÇOS DE INFRAESTRUTU...
A UTILIZAÇÃO DE METODOLOGIAS ÁGEIS PARA A ENTREGA DE SERVIÇOS DE INFRAESTRUTU...Marcelo Dieder
 
Métodos ágeis e boas práticas no design de sistemas centrado nos usuários
Métodos ágeis e boas práticas no design de sistemas centrado nos usuáriosMétodos ágeis e boas práticas no design de sistemas centrado nos usuários
Métodos ágeis e boas práticas no design de sistemas centrado nos usuáriosLeandro Alves
 
Curso XL Master Web Developer
Curso XL Master Web DeveloperCurso XL Master Web Developer
Curso XL Master Web Developerlxschool
 

Was ist angesagt? (15)

Feature Driven Development
Feature Driven DevelopmentFeature Driven Development
Feature Driven Development
 
Scrum
ScrumScrum
Scrum
 
Métodos ágeis
Métodos ágeisMétodos ágeis
Métodos ágeis
 
Modelos de Engenharia de Software
Modelos de Engenharia de SoftwareModelos de Engenharia de Software
Modelos de Engenharia de Software
 
UNA - Eng Usa '12 - aula 01
UNA  - Eng Usa '12 - aula 01UNA  - Eng Usa '12 - aula 01
UNA - Eng Usa '12 - aula 01
 
Prototipagem - Validação de ideias através de Design Thinking
Prototipagem - Validação de ideias através de Design ThinkingPrototipagem - Validação de ideias através de Design Thinking
Prototipagem - Validação de ideias através de Design Thinking
 
DevOps pela visão de um QA
DevOps pela visão de um QADevOps pela visão de um QA
DevOps pela visão de um QA
 
Treinamento - Product Owner - CLARO-NET-EMBRATEL
Treinamento - Product Owner - CLARO-NET-EMBRATELTreinamento - Product Owner - CLARO-NET-EMBRATEL
Treinamento - Product Owner - CLARO-NET-EMBRATEL
 
O Papel do Product Owner
O Papel do Product OwnerO Papel do Product Owner
O Papel do Product Owner
 
Metodologia Crystal Clear (Crystal Clear Methodologies)
Metodologia Crystal Clear (Crystal Clear Methodologies)Metodologia Crystal Clear (Crystal Clear Methodologies)
Metodologia Crystal Clear (Crystal Clear Methodologies)
 
A UTILIZAÇÃO DE METODOLOGIAS ÁGEIS PARA A ENTREGA DE SERVIÇOS DE INFRAESTRUTU...
A UTILIZAÇÃO DE METODOLOGIAS ÁGEIS PARA A ENTREGA DE SERVIÇOS DE INFRAESTRUTU...A UTILIZAÇÃO DE METODOLOGIAS ÁGEIS PARA A ENTREGA DE SERVIÇOS DE INFRAESTRUTU...
A UTILIZAÇÃO DE METODOLOGIAS ÁGEIS PARA A ENTREGA DE SERVIÇOS DE INFRAESTRUTU...
 
Métodos ágeis e boas práticas no design de sistemas centrado nos usuários
Métodos ágeis e boas práticas no design de sistemas centrado nos usuáriosMétodos ágeis e boas práticas no design de sistemas centrado nos usuários
Métodos ágeis e boas práticas no design de sistemas centrado nos usuários
 
Módulo 5 - Elaboração de Projetos 2012
Módulo 5 - Elaboração de Projetos 2012Módulo 5 - Elaboração de Projetos 2012
Módulo 5 - Elaboração de Projetos 2012
 
Curso XL Master Web Developer
Curso XL Master Web DeveloperCurso XL Master Web Developer
Curso XL Master Web Developer
 
Apresentação tarefa 2 ihm
Apresentação tarefa 2 ihmApresentação tarefa 2 ihm
Apresentação tarefa 2 ihm
 

Andere mochten auch

Andere mochten auch (9)

Engine on Rails
Engine on RailsEngine on Rails
Engine on Rails
 
JAVASCRIPT NÃO-OBSTRUTIVO com jQuery
JAVASCRIPT NÃO-OBSTRUTIVO com jQueryJAVASCRIPT NÃO-OBSTRUTIVO com jQuery
JAVASCRIPT NÃO-OBSTRUTIVO com jQuery
 
Rack Middleware
Rack MiddlewareRack Middleware
Rack Middleware
 
Desvendando a Web - Ponto de vista de um Zigottiano
Desvendando a Web - Ponto de vista de um ZigottianoDesvendando a Web - Ponto de vista de um Zigottiano
Desvendando a Web - Ponto de vista de um Zigottiano
 
Testes de aceitação com Steak e Capybara
Testes de aceitação com Steak e CapybaraTestes de aceitação com Steak e Capybara
Testes de aceitação com Steak e Capybara
 
Sinatra - Primeiros Passos
Sinatra - Primeiros PassosSinatra - Primeiros Passos
Sinatra - Primeiros Passos
 
Ditadura militar
Ditadura militar Ditadura militar
Ditadura militar
 
Utilizando o e-mail
Utilizando o e-mailUtilizando o e-mail
Utilizando o e-mail
 
Ilustrações, técnicas e formas
Ilustrações, técnicas e formasIlustrações, técnicas e formas
Ilustrações, técnicas e formas
 

Ähnlich wie Um pouco de Agile

[Stefanini Mindset Experiences] Design Thinking - Dia 1
[Stefanini Mindset Experiences] Design Thinking - Dia 1[Stefanini Mindset Experiences] Design Thinking - Dia 1
[Stefanini Mindset Experiences] Design Thinking - Dia 1Vinicius Marinho
 
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 DesignLara Brito
 
Tradução resumida do livro "The Elements of Scrum"
Tradução resumida do livro "The Elements of Scrum"Tradução resumida do livro "The Elements of Scrum"
Tradução resumida do livro "The Elements of Scrum"Henrique Bueno
 
Criatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UX
Criatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UXCriatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UX
Criatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UXIngrid Castro
 
Aplicando técnicas de UX na reformulação de produtos.
Aplicando técnicas de UX na reformulação de produtos.Aplicando técnicas de UX na reformulação de produtos.
Aplicando técnicas de UX na reformulação de produtos.Ana Cristine Veneziani
 
Aplicando técnicas de UX na reformulação de produtos.
Aplicando técnicas de UX na reformulação de produtos.Aplicando técnicas de UX na reformulação de produtos.
Aplicando técnicas de UX na reformulação de produtos.Ana Cristine Veneziani
 
Exercicio design thinking
Exercicio design thinkingExercicio design thinking
Exercicio design thinkingDouglas Mello
 
UX e Tecnologia - Bianca Brancaleone
UX e Tecnologia - Bianca BrancaleoneUX e Tecnologia - Bianca Brancaleone
UX e Tecnologia - Bianca BrancaleoneByte Girl
 
Revolucao Agile - UFSCar
Revolucao Agile - UFSCarRevolucao Agile - UFSCar
Revolucao Agile - UFSCarLuiz Ribeiro
 
Ux na vida real deedz
Ux na vida real  deedzUx na vida real  deedz
Ux na vida real deedzDextra
 
UX na vida real - Aplicando técnicas na reformulação de um produto
UX na vida real - Aplicando técnicas na reformulação de um produtoUX na vida real - Aplicando técnicas na reformulação de um produto
UX na vida real - Aplicando técnicas na reformulação de um produtoLariane Rossanese
 
UX e Métodos Ágeis: Adversários ou Parceiros?
UX e Métodos Ágeis: Adversários ou Parceiros?UX e Métodos Ágeis: Adversários ou Parceiros?
UX e Métodos Ágeis: Adversários ou Parceiros?Carlos Rosemberg
 
Design Centrado no Usuário
Design Centrado no UsuárioDesign Centrado no Usuário
Design Centrado no UsuárioDavi Busanello
 
apresentação 21212 Aceleradora — Lean UX Workshop
apresentação 21212 Aceleradora — Lean UX Workshopapresentação 21212 Aceleradora — Lean UX Workshop
apresentação 21212 Aceleradora — Lean UX WorkshopPaulo Floriano
 
Introdução a Métodos Ágeis de Desenvolvimento de Software
Introdução a Métodos Ágeis de Desenvolvimento de SoftwareIntrodução a Métodos Ágeis de Desenvolvimento de Software
Introdução a Métodos Ágeis de Desenvolvimento de SoftwareDaniel Cukier
 
UXconf 2017 - Review
UXconf 2017 - ReviewUXconf 2017 - Review
UXconf 2017 - ReviewRafael Burity
 
69 slides gestão logística no canteiro de obra out 2015
69 slides  gestão  logística  no  canteiro  de  obra  out 201569 slides  gestão  logística  no  canteiro  de  obra  out 2015
69 slides gestão logística no canteiro de obra out 2015delano chaves gurgel do amaral
 
Design Thinking: transformando a forma de pensar e resolver problemas
Design Thinking: transformando a forma de pensar e resolver problemasDesign Thinking: transformando a forma de pensar e resolver problemas
Design Thinking: transformando a forma de pensar e resolver problemasRenata Tonezi
 

Ähnlich wie Um pouco de Agile (20)

Agile User Experience
Agile User ExperienceAgile User Experience
Agile User Experience
 
[Stefanini Mindset Experiences] Design Thinking - Dia 1
[Stefanini Mindset Experiences] Design Thinking - Dia 1[Stefanini Mindset Experiences] Design Thinking - Dia 1
[Stefanini Mindset Experiences] Design Thinking - Dia 1
 
Manifesto Ágil.pdf
Manifesto Ágil.pdfManifesto Ágil.pdf
Manifesto Ágil.pdf
 
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
 
Tradução resumida do livro "The Elements of Scrum"
Tradução resumida do livro "The Elements of Scrum"Tradução resumida do livro "The Elements of Scrum"
Tradução resumida do livro "The Elements of Scrum"
 
Criatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UX
Criatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UXCriatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UX
Criatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UX
 
Aplicando técnicas de UX na reformulação de produtos.
Aplicando técnicas de UX na reformulação de produtos.Aplicando técnicas de UX na reformulação de produtos.
Aplicando técnicas de UX na reformulação de produtos.
 
Aplicando técnicas de UX na reformulação de produtos.
Aplicando técnicas de UX na reformulação de produtos.Aplicando técnicas de UX na reformulação de produtos.
Aplicando técnicas de UX na reformulação de produtos.
 
Exercicio design thinking
Exercicio design thinkingExercicio design thinking
Exercicio design thinking
 
UX e Tecnologia - Bianca Brancaleone
UX e Tecnologia - Bianca BrancaleoneUX e Tecnologia - Bianca Brancaleone
UX e Tecnologia - Bianca Brancaleone
 
Revolucao Agile - UFSCar
Revolucao Agile - UFSCarRevolucao Agile - UFSCar
Revolucao Agile - UFSCar
 
Ux na vida real deedz
Ux na vida real  deedzUx na vida real  deedz
Ux na vida real deedz
 
UX na vida real - Aplicando técnicas na reformulação de um produto
UX na vida real - Aplicando técnicas na reformulação de um produtoUX na vida real - Aplicando técnicas na reformulação de um produto
UX na vida real - Aplicando técnicas na reformulação de um produto
 
UX e Métodos Ágeis: Adversários ou Parceiros?
UX e Métodos Ágeis: Adversários ou Parceiros?UX e Métodos Ágeis: Adversários ou Parceiros?
UX e Métodos Ágeis: Adversários ou Parceiros?
 
Design Centrado no Usuário
Design Centrado no UsuárioDesign Centrado no Usuário
Design Centrado no Usuário
 
apresentação 21212 Aceleradora — Lean UX Workshop
apresentação 21212 Aceleradora — Lean UX Workshopapresentação 21212 Aceleradora — Lean UX Workshop
apresentação 21212 Aceleradora — Lean UX Workshop
 
Introdução a Métodos Ágeis de Desenvolvimento de Software
Introdução a Métodos Ágeis de Desenvolvimento de SoftwareIntrodução a Métodos Ágeis de Desenvolvimento de Software
Introdução a Métodos Ágeis de Desenvolvimento de Software
 
UXconf 2017 - Review
UXconf 2017 - ReviewUXconf 2017 - Review
UXconf 2017 - Review
 
69 slides gestão logística no canteiro de obra out 2015
69 slides  gestão  logística  no  canteiro  de  obra  out 201569 slides  gestão  logística  no  canteiro  de  obra  out 2015
69 slides gestão logística no canteiro de obra out 2015
 
Design Thinking: transformando a forma de pensar e resolver problemas
Design Thinking: transformando a forma de pensar e resolver problemasDesign Thinking: transformando a forma de pensar e resolver problemas
Design Thinking: transformando a forma de pensar e resolver problemas
 

Mehr von Zigotto Tecnologia

Usando QUnit para testes unitários em JavaScript
Usando QUnit para testes unitários em JavaScriptUsando QUnit para testes unitários em JavaScript
Usando QUnit para testes unitários em JavaScriptZigotto Tecnologia
 
Nova API do Google Maps e Possíveis Aplicações
Nova API do Google Maps e Possíveis AplicaçõesNova API do Google Maps e Possíveis Aplicações
Nova API do Google Maps e Possíveis AplicaçõesZigotto Tecnologia
 
Apps para SmartPhones usando PhoneGap
Apps para SmartPhones usando PhoneGapApps para SmartPhones usando PhoneGap
Apps para SmartPhones usando PhoneGapZigotto Tecnologia
 

Mehr von Zigotto Tecnologia (7)

Apresentação Padawan
Apresentação PadawanApresentação Padawan
Apresentação Padawan
 
Open Source - DevInVale 2011
Open Source - DevInVale 2011Open Source - DevInVale 2011
Open Source - DevInVale 2011
 
Escrevendo plugins JQuery
Escrevendo plugins JQueryEscrevendo plugins JQuery
Escrevendo plugins JQuery
 
HTML5
HTML5HTML5
HTML5
 
Usando QUnit para testes unitários em JavaScript
Usando QUnit para testes unitários em JavaScriptUsando QUnit para testes unitários em JavaScript
Usando QUnit para testes unitários em JavaScript
 
Nova API do Google Maps e Possíveis Aplicações
Nova API do Google Maps e Possíveis AplicaçõesNova API do Google Maps e Possíveis Aplicações
Nova API do Google Maps e Possíveis Aplicações
 
Apps para SmartPhones usando PhoneGap
Apps para SmartPhones usando PhoneGapApps para SmartPhones usando PhoneGap
Apps para SmartPhones usando PhoneGap
 

Um pouco de Agile

  • 1. Agile, para o seu dia ser mais feliz =) Parte 01 de 02 Lab @Zigotto 23-12-2010 por @edercosta quinta-feira, 23 de dezembro de 2010
  • 2. O início Trabalhar com tecnologia ainda é desbravar um caminho obscuro, com a necessidade humana de criar e organizar processos, os primeiros envolvidos na área acreditaram na adaptação de regras e conceitos utilizados na industria e em outras áreas, trazendo toda esta cultura a realidade tecnológica, o resultado não foi animador: Em pouco mais de 10 anos, gerou-se uma cultura de atrasos, stress e muitos clientes insatisfeitos. quinta-feira, 23 de dezembro de 2010
  • 3. Um pouco da evolução Waterfall: Inspirado nas fases de processos da construção civil, o Waterfall é um processo de gerenciamento de software documentado pela primeira vez em 1970 no paper de Winston W. Royce. quinta-feira, 23 de dezembro de 2010
  • 4. O quê o Waterfall sugere ...como funciona System A intenção é que, terminada uma fase, o Requirements projeto siga para a próxima sem jamais Software retornar um trabalho já feito, assim como a Requirements água que corre numa cascata nunca volta para cima. Analysis Program Design Coding Testing Operations quinta-feira, 23 de dezembro de 2010
  • 5. E... A bela filosofia resulta em: Pilhas de papéis, Reuniões infundadas, Informações incorretas, Suposições, Distância do cliente, Atrasos, Apresentação do produto incompatível com a necessidade do cliente... =( quinta-feira, 23 de dezembro de 2010
  • 6. A história continua... Muitas metodologias foram criadas para resolver os males criados pelo mau uso do Waterfall, dentre vários frameworks do mesmo princípio Unified Processes, o mais famoso é conhecido como RUP, Rational Unified Process Agora vai =) quinta-feira, 23 de dezembro de 2010
  • 7. RUP na cabeça negão! Em 1999 a Rational foi severa em suas críticas, contra o Waterffal, deixando claro que os documentos sugeridos não eram mais necessários, e demonstrando que não existe uma solução com moldes específicos para gerenciamento de sistemas. Maleável o RUP traz diversos moldes que podem ser implantados em seu projeto conforme sua necessidade. Com foco maior nas decisões de risco, iterações curtas, somado ao feedback do cliente, o RUP é capaz de estimar com maior precisão a conclusão de um projeto. quinta-feira, 23 de dezembro de 2010
  • 8. Diagrama de Baleia O diagrama abaixo mostra as atividades da equipe durante o desenvolvimento de um projeto. quinta-feira, 23 de dezembro de 2010
  • 9. E... Com a forma que o RUP se popularizou temos: Pilhas de papéis, Reuniões infundadas, Informações incorretas, Suposições, Distância do cliente, Atrasos, Apresentação do produto incompatível com a necessidade do cliente... Já vi isso antes! =( quinta-feira, 23 de dezembro de 2010
  • 10. Só bola fora? Não é bem assim... A Rational foi excelente em resolver os problemas gerados pelo Waterfall, mas ainda é incompatível com a necessidade do mercado, e também dos envolvidos com o desenvolvimento. Tem com certeza muitos méritos na evolução do que conhecemos hoje, e pensando em evolução os métodos ágeis despertam alguns pontos interessantes para todos os envolvidos no desenvolvimento de um sistema. quinta-feira, 23 de dezembro de 2010
  • 11. O lab não era de Agilidade? OK! Em resposta aos problemas encontrados no mundo inteiro, diversas metodologias foram criadas e comumente chamadas de “lightweight processes”, em protesto aos seus predecessores e tantas exigências. Vendo similaridades entre estas novas metodologias, organizou-se um encontro com alguns idealizadores, deste encontro, quatro valores comuns foram destacados, assim surgiu o Manifesto Ágil. quinta-feira, 23 de dezembro de 2010
  • 12. Manifesto Ágil “Estamos descobrindo formas melhores de desenvolver software ao fazer e ajudar outros a fazerem software. Por esse trabalho, passamos a valorizar: Indivíduos e Interações sobre processos e ferramentas Software Funcionando sobre documentação compreensiva Colaboração do Cliente sobre negociação de contrato Responder a Mudanças sobre seguir um planejamento Isso quer dizer que, embora haja valor nos itens à direita, valorizamos mais os itens à esquerda.” quinta-feira, 23 de dezembro de 2010
  • 13. As coisas foram encaixando Em poucos momentos, ou em praticamente nenhum momento até o Manifesto Ágil, pessoas se referiam a pessoas como sendo pessoas. As linhas de produção estavam a todo momento sendo montadas usando de braços humanos sem analisar seu comportamento e necessidade, passando por cima de sua essência. “Trabalhamos com máquinas, não somos máquinas.” quinta-feira, 23 de dezembro de 2010
  • 14. Manifesto Ágil no Popular Indivíduos e Interações sobre processos e ferramentas / O que importa são as pessoas / Software Funcionando sobre documentação compreensiva / O que é feito com documentação? / Colaboração do Cliente sobre negociação de contrato / Participação obrigatória / Responder a Mudanças sobre seguir um planejamento / Flexibilidade / quinta-feira, 23 de dezembro de 2010
  • 15. Princípios ágeis: - Priorizar a entrega frequente de software de valor; - Receba bem mudanças de requisitos, mesmo em desenvolvimento. Ser ágil é enxergar na mudança vantagem competitiva ao cliente; - Pessoas de negócios e desenvolvedores devem trabalhar juntos; - Pessoas motivadas, proporcione um bom ambiente e suporte, confie que eles farão o trabalho; - Comunique-se no “cara-a-cara”; - Software funcionando é a primeira medida de sucesso; - Fluxo de desenvolvimento; - Atenção continua, excelência técnica e bom design; - Simplicidade; - As melhores arquiteturas, requisitos e design emergem de times auto-organizados; - Reuniões periódicas para reflexão do trabalho e melhoria do mesmo. quinta-feira, 23 de dezembro de 2010
  • 16. Belas palavras... Com base nas declarações anteriores, um projeto de sucesso seria: - Atende às necessidades do cliente; - Mantém a equipe feliz: sem hora extra, sem tempo inativo; - Código bem feito: permite manter o ritmo, facilita a manutenção; - Lucro: tanto para o cliente, quanto para o time. quinta-feira, 23 de dezembro de 2010
  • 17. Vantagens da Agilidade Feedback rápido: tanto para clientes, quanto para equipe e o relacionamento entre essas partes, o feedback constante e rápido permite tomar decisões e corrigir problemas antes que eles se tornem crônicos. Motivação da equipe: o contato direto com o cliente torna mais fácil entender o valor do trabalho do time para o cliente. Não ter o sistema todo pré-modelado, poder tomar decisões, também valoriza o desenvolvedor. Sem corpo mole: as práticas de engenharia de software incentivadas pelas metodologias também são importantíssimas. Quanto mais comunicação dentro do time, mais aprendizado. Quanto mais aprendem, melhor a qualidade do profissional. Ver problema mais cedo: práticas como pareamento e reuniões diárias explicitam problemas na equipe mais cedo, possibilitando resolvê-los mais cedo. quinta-feira, 23 de dezembro de 2010
  • 18. Estão falando que... Não há documentação? Mentira. A documentação é feita a medida que é necessária. Não há regras em Agile contra documentação, mas sim contra trabalho desnecessário e contra planejar todo projeto no início. Preciso de um time experiente? Não. Praticas ágeis nivelam seu time para cima. O crescimento pessoal é fomentado pela agilidade. Agile é mais difícil? Verdade, em partes. Trabalhar de forma ágil é menos burocrático, para que de certo exige-se disciplina. Disciplina em seguir o processo e em se auto gerenciar. Os ganhos pessoais são visíveis. quinta-feira, 23 de dezembro de 2010
  • 19. Mais da essência... Lean O sistema Lean de produção foi desenvolvido pela Toyota e tem um princípio claro e simples: reduzir desperdício. Em 2009, a Toyota vendeu mais carros nos EUA do que a nacional e tradicional Ford, tornando-se a segunda maior vendedora de carros naquele país. Como uma marca japonesa, ultrapassou a gigante Ford que popularizou o automóvel e revolucionou o sistema de produção? A resposta é Simplificando quinta-feira, 23 de dezembro de 2010
  • 20. Segue... Lean tem seu foco em minimizar desperdícios, sejam eles no processo, no desenvolvimento ou no produto final. Considere como desperdício tudo aquilo que não traz valor para o cliente, e como ganho tudo aquilo que agrega valor. Com foco no desenvolvimento de software, podemos apontar o desperdício como sendo tudo aquilo que não é feito para o cliente, podendo ser: documentação excessiva, desenvolvedores parados por falta de informação, códigos e funcionalidades não requisitadas. Como ganho tudo que traz valor e reduz o trabalho: testes, código de qualidade, entregas frequentes... quinta-feira, 23 de dezembro de 2010
  • 21. Desperdícios Lean divide desperdício em três categorias de igual importância: Mura: desperdício por tentar prever possíveis necessidades futuras. Evitar Mura significa reduzir ao máximo o inventário, isto é, as partes paradas no meio do processo, aquele trabalho que começa e não termina... Muri: desperdícios que podem ser evitados por planejamento. Nessa categoria enquadra-se o excesso de burocracia ou de complexidade num processo de produção. Muda: desperdícios do dia a dia, criados por uma cultura anterior de trabalho. quinta-feira, 23 de dezembro de 2010
  • 22. Push vs. Pull Systems No sistema Ford de produção, cada estação da linha de montagem trabalha enquanto houver matéria prima para tal. A quantidade do que será produzido é regulada com base a previsões feitas sobre o mercado em um determinado período, e não há ligação entre os pedidos reais e a linha de produção. Dois desperdícios são criados: 1- as muitas peças produzidas, esperando para serem usadas em outras estações, sem sequer saber se há demanda pelo produto. Chamamos estas peças de inventário; 2- o tempo livre dos trabalhadores superespecializados que trabalham nas funções terminadas mais cedo. quinta-feira, 23 de dezembro de 2010
  • 23. Push vs. Pull Systems... Esses são exemplos de Mura. Uma solução possível para tais desperdícios é trabalhar com sistema pull em vez dos tradicionais push, como descrito. O sistema pull, trabalha com o mínimo possível de inventário, em vez do planejamento pouco maleável baseado em previsões do mercado utilizado pelo sistema push, no sistema pull a produção acontece de acordo com a demanda. quinta-feira, 23 de dezembro de 2010
  • 24. Push vs. Pull no popular Vamos aplicar os dois modelos Pull e Push, em um ambiente mais simples. Imagine um dia de produção na Pizzaria Leggero , usando do sistema Push. O proprietário faria uma previsão de quantas pizzas iria produzir durante uma semana, compraria todo material e iniciaria a produção dos sabores mais pedidos, em poucas horas teríamos um estoque de pizzas de Mussarela, Calabresa, Portuguesa... Ao final do dia algumas pizzas foram realmente vendidas, outras permaneceram um período maior em estoque ficando impróprias para o consumo, o estoque necessita ser usado para não perder validade. Subtraindo do Lucro o Desperdício, o proprietário obteve prejuízo =( #fail quinta-feira, 23 de dezembro de 2010
  • 25. Push vs. Pull no popular... Por estes motivos Pizzarias usam da metodologia Pull, onde existe um estoque mínimo para manter a pizzaria durante um dia de vendas, e todo conteúdo produzido é feito sob demanda. Assim ao final do dia, foram produzidas somente os sabores demandados. O controle de estoque é feito em tempo real, repondo somente o que foi usado e é necessário para mais um dia de vendas. Ao final subtraindo do lucro o desperdício, resultamos numa conta positiva =) #win quinta-feira, 23 de dezembro de 2010
  • 26. Kanban, quadro de olhar Entendendo uma linha de produção como uma sequência de passos para produzir algo, a representação obvia para o processo é o já consagrado Kanban. Nele, é facilmente diferenciado o que existe a fazer, do que está sendo feito. quinta-feira, 23 de dezembro de 2010
  • 27. Exemplo de Kanban Em sistemas push, cada estação de trabalho faz sua parte, sem considerar o que já foi feito ou ainda vai ser feito, com o Kanban é fácil perceber o acúmulo de trabalho em algumas fases, e o tempo ocioso de outras. A fazer Inventário 1 Inventário 2 Inventário 3 Produto 2 6 1 9 5 3 10 4 7 11 8 quinta-feira, 23 de dezembro de 2010
  • 28. Exemplo de Kanban Kanban representando o sistema pull de produção, há um limite de inventário claramente determinado. Dessa forma, a produção acontece somente com a demanda da mesma. A fazer Inventário 1 Inventário 2 Inventário 3 Produto 2 2 2 8 6 4 2 1 9 7 5 3 10 11 quinta-feira, 23 de dezembro de 2010
  • 29. Systems Thinking Processos, metodologias, frameworks são criados para facilitar o desenvolvimento. Em muitos casos, grandes processos consagrados acabam atrapalhando uma equipe e não ajudando como deveria. Pensar sempre no sistema, Systems Thinking, é pensar e repensar durante todo o andamento do projeto no que poderia ser melhorado no próprio processo de desenvolvimento e nas interações entre as pessoas envolvidas. quinta-feira, 23 de dezembro de 2010
  • 30. Work Cells Não é possível encontrar possíveis melhorias no processo se cada envolvido está focado exclusivamente em uma tarefa, na qual é especialista. Por isso, Lean, entende que as pessoas envolvidas em um projeto não podem ser superespecialistas, isto é, não podem se limitar a conhecimento apenas de sua etapa. Deveriam conhecer todas elas e saber executar pelo menos algumas delas. Cada membro da equipe é, desta forma, uma Work Cell: uma pessoa capaz de trabalhar no projeto como um todo, em algumas ou todas as suas partes. O conhecimento mais amplo sobre o projeto é incentivado, melhora-se as críticas e com isso é possível melhorar ainda mais o processo. quinta-feira, 23 de dezembro de 2010
  • 31. Kaizen Na década de 1970, Frederich Brooks publicou um artigo chamado “No Silver Bullet”, apesar de tanto tempo o artigo ainda é verdadeiro, juntamente com “The Mythical Man- Month”, leitura obrigatória para todos aqueles na área de Engenharia e Gerenciameto de Software. Em Lean, também acredita-se que não exista em processos uma bala de prata, capaz de resolver todos os problemas. Desta forma, é preciso que cada equipe adapte a metodologia e ferramenta à sua necessidade, a todo momento. Kaizen, palavra japonesa para melhoria. Melhorias no processo, na forma de produção e no produto final são parte do dia a dia de quem trabalha com Lean. quinta-feira, 23 de dezembro de 2010
  • 32. Obrigado! O Labs Zigotto tem o intuito de compartilhar informações entre o time de desenvolvimento da Zigotto e pessoas próximas, é aberto a todos que queiram participar ou contribuir. Todo conteúdo destes slides são baseados no treinamento PM-83 da escola Caelum. (Indico o mesmo para interessados) e experiências na empresa Zigotto. Se encontrou algo que não concorda ou correções para o @edercosta mesmo encaminhe para o e-mail eder@zigotto.com.br quinta-feira, 23 de dezembro de 2010