Métodos_Àgeis_-_CBSoft

download Métodos_Àgeis_-_CBSoft

of 101

Transcript of Métodos_Àgeis_-_CBSoft

  • 7/22/2019 Mtodos_geis_-_CBSoft

    1/101

    CBSoft Salvador Bahia Setembro de 2010

    Introduo a Mtodos geisde Desenvolvimento de

    SoftwareDaniel Cukier (AgilCoop)

    twitter.com/danicuki

    Prof. Dr. Rafael Prikladnicki (PUCRS)twitter.com/rafaelpri

  • 7/22/2019 Mtodos_geis_-_CBSoft

    2/101

    CBSoft Salvador Bahia Setembro de 2010

    Quem usa Scrum e XP?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    3/101

    CBSoft Salvador Bahia Setembro de 2010

    Quem usa Scrum e XP?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    4/101

    CBSoft Salvador Bahia Setembro de 2010

    EUA

    BR2 anos!

    Quem usa Scrum e XP?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    5/101

    CBSoft Salvador Bahia Setembro de 2010

    Quem usa Scrum e XP?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    6/101

    CBSoft Salvador Bahia Setembro de 2010

    Quem usa Scrum e XP?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    7/101CBSoft Salvador Bahia Setembro de 2010

    Quem usa Scrum e XP?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    8/101CBSoft Salvador Bahia Setembro de 2010

  • 7/22/2019 Mtodos_geis_-_CBSoft

    9/101CBSoft Salvador Bahia Setembro de 2010

    Daniel Cukier15 anos de experincia com desenvolvimento do Software

    3 anos como gerente de Desenvolvimento na Locaweb

    Membro da Agilcoop desde 2003

    Autor do blog www.agileandart.com

    Mestre em Cincia da ComputaoIME/USP (2009)

    Palestra em vrios eventosEncontro gil, Oxente Rails, Falando em gil, SugarLoafPLoP, etc

    reas de atuao acadmica e profissional:

    Desenvolvedor e lder tcnico em vrios projetos de software.

    Um dos responsveis pela implantao de Mtodos geis na Locaweb

    Padres para Introduzir Novas Ideias na Indstria de Software

    Outras no menos importantes:

    Teatro, msica, poesia, meditao

    http://www.agileandart.com/http://www.agileandart.com/
  • 7/22/2019 Mtodos_geis_-_CBSoft

    10/101CBSoft Salvador Bahia Setembro de 2010

    Contexto e experincia na AgilCoop

    Cursos de graduao em XP desde 2001

    ApresentaesSBES, SUCESU, SEPAI, SEBRAE, etc.

    Arquivos disponveis: www.agilcoop.org.br

    Assessorias em mtodos geis

    Artigos cientficos

    Dissertaes de Mestrado

  • 7/22/2019 Mtodos_geis_-_CBSoft

    11/101CBSoft Salvador Bahia Setembro de 2010

    Professor da FACINPUCRS desde 2004www.inf.pucrs.br/~rafael

    Coordenador de Gesto de Projetos da AGT/PUCRSProfessor do PPGCC desde 2010/1

    Coordenador do GUMA e do SPIN-POA (Sucesu-RS)

    Certified ScrumMaster (CSM) e Project Mgmt Professional (PMP)

    Mestre em Cincia da ComputaoPUCRS (2003)

    Doutor em Cincia da ComputaoPUCRS (2009)

    reas de atuao acadmica e profissional:

    Desenvolvimento Distribudo de SoftwareGerncia de Projetos

    Melhoria de Processo de Software

    Engenharia de Software Experimental

    Leane Mtodos geis para Desenvolvimento de Software

    Rafael Prikladnicki

  • 7/22/2019 Mtodos_geis_-_CBSoft

    12/101CBSoft Salvador Bahia Setembro de 2010

    Contexto e experincia na PUCRS

    www.inf.pucrs.br/munddos

    Criado em 2001

    Registrado no CNPq em 2004

    Livros publicados em 2007, 2009 e 20102 pesquisadores

    Formou 11 mestres, 1 doutor

    Possui 6 mestrandos, 2 doutorandos

  • 7/22/2019 Mtodos_geis_-_CBSoft

    13/101CBSoft Salvador Bahia Setembro de 2010

    Implantao de prticas de DDS nas empresas

    Desenvolvimento de ferramentas para apoiar DDS

    Integrao de DDS com mtodos geisEstudo de maneiras de usar Follow-the-Sun (FTS)

    Formao de profissionais e alunos em DDS

    Estudo do papel do Brasil no mercado global de TI

    www.inf.pucrs.br/munddos

    Contexto e experincia na PUCRS

  • 7/22/2019 Mtodos_geis_-_CBSoft

    14/101CBSoft Salvador Bahia Setembro de 2010

    Contexto e experincia na PUCRS

  • 7/22/2019 Mtodos_geis_-_CBSoft

    15/101CBSoft Salvador Bahia Setembro de 2010

    Introduo e motivaoO que so Mtodos geis?

    Princpios

    Problemas com abordagens tradicionais

    Alguns mtodos geis

    Concluso

    Agenda

  • 7/22/2019 Mtodos_geis_-_CBSoft

    16/101CBSoft Salvador Bahia Setembro de 2010

    Por que teu projeto

    termina comsucesso?

    Por que teu projetofracassa?

    Discusso em grupo 15 minutos

    Agrupar problemas efracassos emcategorias

    Dinmica

    Grupo 2

    Grupo n

    Grupo 1

    Grupo 3

    Sucesso Fracasso

    Ref: Henrik Kniberg

  • 7/22/2019 Mtodos_geis_-_CBSoft

    17/101CBSoft Salvador Bahia Setembro de 2010

    Motivao

  • 7/22/2019 Mtodos_geis_-_CBSoft

    18/101CBSoft Salvador Bahia Setembro de 2010

    Como ganhar dinheiroresolvendo problemas que

    voce no conhece, compessoas desconhecidas, emum tempo curto e com

    poucos recursos (e sedivertindo)?

    Motivao

  • 7/22/2019 Mtodos_geis_-_CBSoft

    19/101CBSoft Salvador Bahia Setembro de 2010

    Tenho como produzir 100 avies em 10 minutos?

    Quantos avies 10 pessoas produzem em 10 minutos?

    Tenho, mas:

    - Vou verificar tudo ao final

    - Posso ter baixa qualidade

    - Posso ter retrabalho

    - Posso no ter entendido o escopoEnto por que deixar tudo para o final?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    20/101

    CBSoft Salvador Bahia Setembro de 2010

    Tenho como produzir 100 avies em 10 minutos?

    E se produzirmos um pouco a cada 2 minutos?

    E se melhorarmos a cada ciclo?

    E se o cliente fornecer feedback a cada ciclo?

    E se a equipe encontrar a melhor forma de trabalhar?

    Quantos avies 10 pessoas produzem em 10 minutos?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    21/101

    CBSoft Salvador Bahia Setembro de 2010

    0

    50

    100

    150

    200

    250

    300

    Objetivo Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5

    Sprints

    Avies restantes

    Motivao

  • 7/22/2019 Mtodos_geis_-_CBSoft

    22/101

    CBSoft Salvador Bahia Setembro de 2010

    Grfico de Burndown

    0

    50

    100

    150

    200

    250

    Objetivo Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5

    Sprints

    Avies restantes

    Motivao

  • 7/22/2019 Mtodos_geis_-_CBSoft

    23/101

    CBSoft Salvador Bahia Setembro de 2010

    Sociedade demandagrande quantidade de sistemas/aplicaes

    software complexo, sistemas distribudos,heterogneos

    requisitos mutantes (todo ano, todo ms,todo dia)

    Mas, infelizmente,no h gente suficiente para desenvolver tanto

    software com qualidade

    Novos ventos no desenvolvimento de software

  • 7/22/2019 Mtodos_geis_-_CBSoft

    24/101

    CBSoft Salvador Bahia Setembro de 2010

    Resultado dos projetos em 2004

    Relatrio do Chaos (Chaos Report)

  • 7/22/2019 Mtodos_geis_-_CBSoft

    25/101

    CBSoft Salvador Bahia Setembro de 2010

    Resultado dos projetos em 2004

    Relatrio do Chaos (Chaos Report)

    1994 2004

    Projetosno concludos

    ------------31%

    Projetos bem sucedidos-----16%

    Estouro mdio de custo----------------------->180%

    Estouro mdio de prazo----------------------->164%

    Projetos no concludos

    -------18%

    Projetos bem sucedidos-----------29%

    Estouro mdio de custo-----------------56%

    Estouro mdio deprazo-------------------------84%

  • 7/22/2019 Mtodos_geis_-_CBSoft

    26/101

    CBSoft Salvador Bahia Setembro de 2010

    Evitar desperdcio

    Estudo do The Standish Group conclui (Chaos Report):

    Pesquisa sobre a utilizao das funcionalidades do software ...

    Mais de 64%de um sistema desoftware quase nunca no utilizado!

  • 7/22/2019 Mtodos_geis_-_CBSoft

    27/101

    CBSoft Salvador Bahia Setembro de 2010

    Com mtodos tradicionais/clssicos de

    desenvolvimentoSupem que possvel prever o futuro

    Pouca interao com os clientes

    nfase em burocracias(documentos, formulrios, processos, controlesrgidos, etc.)

    Avaliao do progresso baseado na evoluo da

    burocracia e no do cdigoCom softwareGrande quantidade de erros

    Falta de flexibilidade

    Problemas

  • 7/22/2019 Mtodos_geis_-_CBSoft

    28/101

    CBSoft Salvador Bahia Setembro de 2010

    Melhores Tecnologias

    Padres de Projeto (reutilizao de idias)Componentes (reutilizao de cdigo)Middleware/frameworks (aumenta a bstrao)

    Melhores MetodologiasMtodos geis (o foco deste mini-curso)

    outras... (abordados em outros cursos de ES)

    Como resolver o impasse?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    29/101

    CBSoft Salvador Bahia Setembro de 2010

    Erro comum: olhar para software como apenas um desses itens eignorar os demais

    O que desenvolvimento de software?

    (Gabriel)Arte(Knuth)Artesanato

    (Cockburn)Poesia(Humphreys)Disciplina

    (Meyer)Engenharia(Jacobson)Modelagem

    Por Alistair Cockburn:

    d

  • 7/22/2019 Mtodos_geis_-_CBSoft

    30/101

    CBSoft Salvador Bahia Setembro de 2010

    Agile is not a set ofpractices, but a

    core set of beliefs

    and principlesJim Highsmith

    O que so mtodos geis?

    i i

  • 7/22/2019 Mtodos_geis_-_CBSoft

    31/101

    CBSoft Salvador Bahia Setembro de 2010

    Retorno de investimentoInovaoMelhoria de processo

    PessoasCultura

    ComunicaoAdaptao x Antecipao

    Princpios

    Hi i

  • 7/22/2019 Mtodos_geis_-_CBSoft

    32/101

    CBSoft Salvador Bahia Setembro de 2010

    Movimento iniciado por programadoresexperientes e consultores em desenvolvimentode software.

    Questionam e se opem a uma srie de mitos e

    prticas adotadas em abordagens tradicionaisde Engenharia de Software e Gerncia deProjetos.

    Manifesto gil:

    Assinado por 17 desenvolvedores em Utah emfevereiro/2001.

    http://agilemanifesto.org

    Histrico

    A il M if t (2001)

  • 7/22/2019 Mtodos_geis_-_CBSoft

    33/101

    CBSoft Salvador Bahia Setembro de 2010

    Processos e ferramentas

    Documentao abrangente

    Negociao de contrato

    Plano pr-estabelecido

    maisimportante

    que

    Agile Manifesto (2001)

    Indivduos e interaes

    Software funcionando

    Colaborao do cliente

    Resposta s mudanas

    http://agilemanifesto.org

    Kent Beck James Grenning Robert C. MartinMike Beedle Jim Highsmith Steve Mellor

    Arie van Bennekum Andrew Hunt Ken SchwaberAlistair Cockburn Ron Jeffries Jeff SutherlandWard Cunningham Jon Kern Dave ThomasMartin Fowler Brian Marick

    Al i i

  • 7/22/2019 Mtodos_geis_-_CBSoft

    34/101

    CBSoft Salvador Bahia Setembro de 2010

    O mais importante o software funcionando

    Periodicamente a equipe deve refletir sobre comose tornar mais efetivo

    Profissionais motivados

    Suporte s necessidades da equipe e ambientenecessrio para desenvolvimento das atividades

    Confiana no trabalho da equipe

    Alguns princpios

    E j t il id l

  • 7/22/2019 Mtodos_geis_-_CBSoft

    35/101

    CBSoft Salvador Bahia Setembro de 2010

    O gerente de projeto concorda em prosseguir sem

    que todos os requisitos estejam bem definidos

    Os desenvolvedores concordam em prosseguir

    sem ter todos os requisitos documentados

    Os membros da equipe sabem que algum vaiajudar quando ocorrerem problemas

    Em um projeto gil ideal...

    E j t il id l

  • 7/22/2019 Mtodos_geis_-_CBSoft

    36/101

    CBSoft Salvador Bahia Setembro de 2010

    Os gerentes percebem que no precisam dizer

    equipe o que fazer, ou garantir o que vai ser feito

    A equipe percebe que ningum vai dizer o que

    fazer, isto faz parte do trabalho da equipe

    No existem mais a impresso de diviso (testersand programmers), todos so desenvolvedores

    Em um projeto gil ideal...

    M d d P t

  • 7/22/2019 Mtodos_geis_-_CBSoft

    37/101

    CBSoft Salvador Bahia Setembro de 2010

    Mudana de Postura

    Equipe

    Equipe

    Equipe

    Equipe

    GP

    Equipe

    Equipe

    Equipe

    Equipe

    GP

    Tradicional gil

    Cross-funcional

    Auto-organizao

    Enq nto i o n m p ojeto t di ion l

  • 7/22/2019 Mtodos_geis_-_CBSoft

    38/101

    CBSoft Salvador Bahia Setembro de 2010

    0. Levantamento de Requisitos

    1. Anlise de Requisitos

    2. Desenho da Arquitetura

    3. Implementao

    4. Testes

    5. Produo / Manuteno

    Enquanto isso, num projeto tradicional...

    Premissas bsicas do modelo tradicional

  • 7/22/2019 Mtodos_geis_-_CBSoft

    39/101

    CBSoft Salvador Bahia Setembro de 2010

    necessrio fazer uma anlise de requisitos

    profunda e detalhada antes de projetar aarquitetura do sistema

    necessrio fazer um estudo minucioso eelaborar uma descrio detalhada da arquiteturaantes de comear a implement-la

    necessrio testar o sistema completamenteantes de mandar a verso final para o cliente

    Premissas bsicas do modelo tradicional

    Cascata como uma bala de canho

  • 7/22/2019 Mtodos_geis_-_CBSoft

    40/101

    CBSoft Salvador Bahia Setembro de 2010

    Cascata como uma bala de canho

    Iterativo e Incremental

  • 7/22/2019 Mtodos_geis_-_CBSoft

    41/101

    CBSoft Salvador Bahia Setembro de 2010

    Interface

    Cliente

    Servidor

    BD

    C

    Iterativo = no espere ter tudo correto na primeira vezIncremental = construa em pedaos verticais (features) ao invs de horizontais (camadas)

    Desenvolvimento monoltico

    1

    2

    3

    4

    1

    Desenvolvimento incremental

    2 3

    Talvez no sejanecessrio construiro resto

    C

    Interface

    Cliente

    Servidor

    BD

    Iterativo e Incremental

    Ref: Henrik Kniberg

    Iterativo e Incremental

  • 7/22/2019 Mtodos_geis_-_CBSoft

    42/101

    CBSoft Salvador Bahia Setembro de 2010

    Iterativo e Incremental

    Produto?

    O que muda?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    43/101

    CBSoft Salvador Bahia Setembro de 2010

    O que muda?

    Custodamudana

    Intensidadee stress

    Tempo

    Tempo Tempo

    Entrega

    de valor

    TransparnciaEnvolvimento

    do cliente

    Tempo

    Ref: Henrik Kniberg

    Tradicional

    gil

  • 7/22/2019 Mtodos_geis_-_CBSoft

    44/101

    CBSoft Salvador Bahia Setembro de 2010

    Metodologias geis souma tentativa de refinar

    as metodologiasiterativas, tirando o foco

    do processo em si e

    dando mais nfase para acontribuio das pessoas

  • 7/22/2019 Mtodos_geis_-_CBSoft

    45/101

    CBSoft Salvador Bahia Setembro de 2010

    Metodologias geis umafebre? Uma onda

    passageira?

    o incio de uma mudanana forma de trabalho...

    Evitar incerteza x Gerenciar para incerteza

  • 7/22/2019 Mtodos_geis_-_CBSoft

    46/101

    CBSoft Salvador Bahia Setembro de 2010

    Evitar incerteza x Gerenciar para incerteza

    Ref: Luiz Cludio Parzianello

    O paradoxo da multitarefa

  • 7/22/2019 Mtodos_geis_-_CBSoft

    47/101

    CBSoft Salvador Bahia Setembro de 2010

    O paradoxo da multitarefa

    Ref: Henrik Kniberg

    Viso tradicional Tudo importante, vamos fazer tudo ao mesmo tempo!

    Viso gil Prioriza e foca naquilo que mais importante!

    Jan Feb Mar Abr Mai Jun Jul

    A3A2A1 B3B2B1 C3C2C1

    Jan Feb Mar Abr Mai Jun Jul

    A B C

    O que muda?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    48/101

    CBSoft Salvador Bahia Setembro de 2010

    Mtodos tradicionais

    O planejamento deve propiciar a preveno demudanas

    Mtodos geis

    A mudana incorporada ao escopo

    Razes Necessidades de negcio

    Novas oportunidades

    Mudanas de legislao

    Requisitos incompletos

    O que muda?

    E se fosse essa a realidade?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    49/101

    CBSoft Salvador Bahia Setembro de 2010

    A atitude dos desenvolvedores de software seria

    completamente diferente:

    Tomaramos as grandes decises o mais tardepossvel

    Implementaramos agora somente o queprecisamos agora

    No implementaramos flexibilidade desnecessria(no anteciparamos necessidades)

    E se fosse essa a realidade?

    E essa a nova realidade (em muitos casos)

  • 7/22/2019 Mtodos_geis_-_CBSoft

    50/101

    CBSoft Salvador Bahia Setembro de 2010

    Orientao a Objetos: facilita e cria oportunidades

    para mudanas

    Tcnicas de Refatorao

    Testes automatizados: nos do segurana quandofazemos mudanas

    Prtica / cultura de mudanas: aprendemostcnicas e adquirimos experincia em lidar comcdigo mutante

    E essa a nova realidade (em muitos casos)

    Principais Mtodos geis

  • 7/22/2019 Mtodos_geis_-_CBSoft

    51/101

    CBSoft Salvador Bahia Setembro de 2010

    Adaptative Software Development (ASD)

    Jim Highsmith

    Crystal Clear (Crystal)

    Alistar Cockburn

    Extreme Programming (XP)

    Kent Beck, Eric Gamma

    Scrum

    Ken Schwaber, Jeff Sutherland, Mark Beedle

    Lean Software Development

    Mary e Tom Poppendieck

    Feature Driven Development (FDD) Peter Coad, Jeff DeLuca

    Test Drive Development (TDD)

    Kanban

    Principais Mtodos geis

    Mudana de perspectiva

  • 7/22/2019 Mtodos_geis_-_CBSoft

    52/101

    CBSoft Salvador Bahia Setembro de 2010

    Agile Project ManagementJim Highsmith, 2008

    Agile Enterprise Framework

    Governana e Portflio

    Gerncia de Projeto

    Gerncia de IteraesPrticas Tcnicas

    ROI, Progresso,Risco, Investimento

    Release, aquisio,PMBOK, externo

    Interno, Scrum

    XP, FDD, etc

    Mudana de perspectiva

    Mtodos geis funcionam?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    53/101

    CBSoft Salvador Bahia Setembro de 2010

    1. David Rico (2008)

    Survey de artigos acadmicos e cientficos publicados2. VersionOne (2008)

    Survey online com mais de 3.000 pessoas

    3. QSMA (Michael Mah 2008) Comparao rigorosa de 26 projetos geis com umabase de 7.500 projetos tradicionais

    Equipes geis variando entre 26 e 1.000 pessoas

    4. Dr. Dobbs Journal (2008) Survey online com 642 pessoas

    Mtodos geis funcionam?

    Mtodos geis funcionam?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    54/101

    CBSoft Salvador Bahia Setembro de 2010

    Fonte: Mah 2008.

    Agileprojects are16% moreproductive ata statisticallysignificantlevel of

    confidence.

    Mtodos geis funcionam?

    Mtodos geis funcionam?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    55/101

    CBSoft Salvador Bahia Setembro de 2010

    Satisfao no trabalho Aps 15 meses de adoo do Scrum, 86% dos colabroadores da

    Salesforce.com estavam tendo um good time ou o best time

    Apenas 40% disseram isto antes de adotar Scrum

    92% recomendariam mtodos geis para outras pessoas

    Time to Market VersionOne

    64% disseram que o time to market melhorou

    23% disseram que melhorou significativamente

    Michael Mah Projetos geis tem um time to market 37% mais rpido com um

    nvel de confiana estatisticamente significante

    Mtodos geis funcionam?

    Mtodos geis funcionam?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    56/101

    CBSoft Salvador Bahia Setembro de 2010

    Fonte: Mah 2008.

    Mtodos geis funcionam?

    Mtodos geis funcionam?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    57/101

    CBSoft Salvador Bahia Setembro de 2010

    Melhoria na satisfao dos stakeholders Dr. Dobbs

    47% disseram que a satisfao foi somewhat higher

    31% disseram que foi much higher

    Version One

    ImprovedSignificantly

    Improved

    Enhanced ability to manage changingpriorities

    41% 51%

    Improved project visibility 42% 41%Improved alignment of IT and businessgoals

    39% 27%

    Reduced project risk 48% 17%

    Mtodos geis funcionam?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    58/101

    CBSoft Salvador Bahia Setembro de 2010

    5 motivos para

    NO usar

    mtodos geis?

    Cinco Motivos para no usar Mtodos geis

  • 7/22/2019 Mtodos_geis_-_CBSoft

    59/101

    CBSoft Salvador Bahia Setembro de 2010

    Cinco Motivos para no usar Mtodos geis

    Motivo 1

    Eu sei e defino

    todos os requisitosno incio do projeto

    No preciso de ciclos iterativos

    Qual projeto de software possui todos os

    requisitos definidos (corretamente) no incio?

    Cinco Motivos para no usar Mtodos geis

  • 7/22/2019 Mtodos_geis_-_CBSoft

    60/101

    CBSoft Salvador Bahia Setembro de 2010

    Cinco Motivos para no usar Mtodos geis

    Motivo 2

    Os objetivos do meuprojeto esto muito

    claros desde o

    incio

    O cliente descobre o que quer ao longodo caminho

    Cinco Motivos para no usar Mtodos geis

  • 7/22/2019 Mtodos_geis_-_CBSoft

    61/101

    CBSoft Salvador Bahia Setembro de 2010

    C co ot os pa a o usa todos ge s

    Motivo 3

    Meu projeto envolve

    baixa incerteza

    Qual projeto de software envolve baixaincerteza?

    Cinco Motivos para no usar Mtodos geis

  • 7/22/2019 Mtodos_geis_-_CBSoft

    62/101

    CBSoft Salvador Bahia Setembro de 2010

    p g

    Motivo 4

    Minha estimativaest toda definida ecom ndice de erro

    muito baixo

    Em qual projeto de software consigo terestimativas precisas?

    Cinco Motivos para no usar Mtodos geis

  • 7/22/2019 Mtodos_geis_-_CBSoft

    63/101

    CBSoft Salvador Bahia Setembro de 2010

    p g

    Motivo 5

    Meu processo

    rgido e controlado(comando-controle)

    As tarefas so delegadas, equipes ficamdesmotivadas mais facilmente

    Qual equipe gosta de trabalhar desmotivada?

    Cinco Motivos para no usar Mtodos geis

  • 7/22/2019 Mtodos_geis_-_CBSoft

    64/101

    CBSoft Salvador Bahia Setembro de 2010

    p g

    Requisitos definidos desde o incioObjetivos claros desde o incio

    Comando-controle

    Baixa incertezaEstimativas precisas

    Qual projeto de desenvolvimento desoftware possui estas caractersticas?

    E os Cinco Motivos?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    65/101

    CBSoft Salvador Bahia Setembro de 2010

    Requisitos definidos desde o incioObjetivos claros desde o incio

    Comando-controle

    Baixa incertezaEstimativas precisas

    Qual projeto de desenvolvimento desoftware possui estas caractersticas?

  • 7/22/2019 Mtodos_geis_-_CBSoft

    66/101

    CBSoft Salvador Bahia Setembro de 2010

    SCRUM

    Scrum - Jogada de Rugby

  • 7/22/2019 Mtodos_geis_-_CBSoft

    67/101

    CBSoft Salvador Bahia Setembro de 2010

    g g y

    Quem usa Scrum?

    http://upload.wikimedia.org/wikipedia/commons/9/98/Image-Rugby_Union_Scrum.jpg
  • 7/22/2019 Mtodos_geis_-_CBSoft

    68/101

    CBSoft Salvador Bahia Setembro de 2010

    Ref.:3rd Annual State of Agile Development Survey June-July 20083061 respondentes, 80 pases

    Q

    Como resolver

  • 7/22/2019 Mtodos_geis_-_CBSoft

    69/101

    CBSoft Salvador Bahia Setembro de 2010

    69

    Requisit

    os

    Longe de um acordo

    Perto de um acordo

    TecnologiaPerto da certeza Longe da certeza

    Simples

    Complicado

    Complexo

    Anarquia

    Ref. : Strategic Management and Organizational Dynamics byRalph Stacey, in Agile Software Development With Scrum byKen Schwaber and Mike Beedle.

    Mesmo que oproduto sejacomplexo...

    ... Tente manteruma iterao

    simples

    Adaptativo

  • 7/22/2019 Mtodos_geis_-_CBSoft

    70/101

    CBSoft Salvador Bahia Setembro de 2010

    E

    C D

    A

    Planejado

    Tradicional

    gil

    Sem 1 Sem 2 Sem 3 Sem 4

    B

    C D

    A

    Sem 1 Sem 2 Sem 3 Sem 4

    B

    Sem 5 Sem 6 Sem 7 Sem 8

    D

    A

    Sem 1 Sem 2 Sem 3 Sem 4

    B

    Sem 5 Sem 6 Sem 7 Sem 8

    A B

    nfase: processo emprico

  • 7/22/2019 Mtodos_geis_-_CBSoft

    71/101

    CBSoft Salvador Bahia Setembro de 2010

    Princpio Caractersticas desconhecidas

    Prioridades devem ser consideradas Escopo ir mudar!

    Essncia do SCRUM Inspeo

    Verificar o que foi feito no perodo

    Adaptao Melhorar o processo

    Planejar Planejar o sprint

    Desenvolver Realizar o sprint

    Inspecionar (check) Sprint review e retrospectiva

    Adaptar Lies para o prximo planejamento

    PLAN

    DO

    ACT

    CHECK

    O Framework do Scrum

  • 7/22/2019 Mtodos_geis_-_CBSoft

    72/101

    CBSoft Salvador Bahia Setembro de 2010

    Planejamento e preparao

  • 7/22/2019 Mtodos_geis_-_CBSoft

    73/101

    CBSoft Salvador Bahia Setembro de 2010

    Product Owner e Cliente

    Viso do produto

    Requisitos funcionais e no funcionais

    Restries e User stories (prtica do XP)

    Criao doproduct backlog

    Conjunto de funcionalidades do sistema

    Priorizao das funcionalidades

    Preparao da base necessria para o desenvolvimeto

    Mecanismos de comunicao e coordenao

    Formao das equipes

    User Stories

  • 7/22/2019 Mtodos_geis_-_CBSoft

    74/101

    CBSoft Salvador Bahia Setembro de 2010

    User stories Identificao de atores envolvidos

    Como um [papel do usurio]quero [funcionalidade]para [valor de negcio]

    I.N.V.E.S.T. (independente, negocivel, valorizvel, estimvel, small etestvel)

    Quebrar grandes e juntar pequenas

    Definio do conceito de DONE (testes)

    Diferentes perspectivas

    Prioridades das user stories

    Valor entre 1 e 150? Must have Should have

    Could have

    Desenvolvimento

  • 7/22/2019 Mtodos_geis_-_CBSoft

    75/101

    CBSoft Salvador Bahia Setembro de 2010

    Product Owner, ScrumMaster e Equipe

    Anlise e organizao do Product Backlog

    Refinamento das funcionalidades

    Estimativas

    Escolha das funcionalidades para o sprint

    Formalizao do sprint backlog

    Identificao das tarefas Organizao da taskboard

    2-4 hs 2-4 hs

    Desenvolvimento

  • 7/22/2019 Mtodos_geis_-_CBSoft

    76/101

    CBSoft Salvador Bahia Setembro de 2010

    Estimativas Tempo e/ou complexidade?

    Fibonacci

    1, 2, 3, 5, 8, 13, 21

    Planning poker

    As duas estratgias de uso deplanning poker

    Jogar as cartas para cada estria Colocar cada estria embaixo de uma carta

    Algumas prticas utilizadas:

    Pontos para funcionalidades e horas para tarefas

    1-day tasks (mximo 2 e mnimo 1/2)

    Considerar tarefas como teste, pesquisas, documentao, etc.

    Desenvolvimento

  • 7/22/2019 Mtodos_geis_-_CBSoft

    77/101

    CBSoft Salvador Bahia Setembro de 2010

    Tempo ou Complexidade

    4 pessoas trabalhando 4 semanas Equipe: 640 horas

    2 junior, 2 senior

    Produzem 25 pontos de complexidade

    4 pessoas trabalhando 4 semanas

    Equipe: 640 horas

    4 senior

    Produzem 60 pontos de complexidade

    Planning poker

  • 7/22/2019 Mtodos_geis_-_CBSoft

    78/101

    CBSoft Salvador Bahia Setembro de 2010

    1Muito pequeno! 2 3 5

    8 13 21 40

    JFrias!

    LMais detalhes! Nem idia!

    Intervalo!

    Planning poker

  • 7/22/2019 Mtodos_geis_-_CBSoft

    79/101

    CBSoft Salvador Bahia Setembro de 2010

    Planning Poker na PRTICA!

    Avaliar distncia entre

    Argentina e Monglia

    Chile e Itlia

    Japo e Austrlia

    ndia e Alemanha

    EUA e Rssia

    Ucrnia e China

    Priorizao e classificao do backlog

  • 7/22/2019 Mtodos_geis_-_CBSoft

    80/101

    CBSoft Salvador Bahia Setembro de 2010

    VALOR

    COMPLEXIDADEAltaBaixa

    Alta

    Baixa

    UStory1

    UStory2

    UStory3

    UStory4

    Calibrando a velocidade

  • 7/22/2019 Mtodos_geis_-_CBSoft

    81/101

    CBSoft Salvador Bahia Setembro de 2010

    40 3030 2830 3130 30

    Estimado Realizado

    40 3040 3040 30

    40 3050 3060 30

    40 3535 3030 25

    302520

    Estimado Realizado

    Estimado Realizado Estimado Realizado

    Calibrando a velocidade

  • 7/22/2019 Mtodos_geis_-_CBSoft

    82/101

    CBSoft Salvador Bahia Setembro de 2010

    Incio da sprint

    8

    5

    3

    5

    5

    5

    3

    5

    5

    8

    Backlogdo produto

    8

    5

    3

    5

    5

    Backlogda sprint

    Final da sprint

    8

    5

    3

    5

    5

    Feito!

    Feito!

    Feito!Quase

    Nem iniciamos

    Velocidadereal =

    18

    Backlogda sprint

    Velocidade

    estimada =26

    Dividindo user stories

  • 7/22/2019 Mtodos_geis_-_CBSoft

    83/101

    CBSoft Salvador Bahia Setembro de 2010

    Administrateusers

    Register newuser

    Edit existinguser

    Delete user

    Find user

    100 simultaneoususers

    Operationsmanual

    As a helpdeskoperator I want to see

    who is logged in

    View Invoice in

    HTML, PDF, orExcel format

    100 simultaneoususers

    Operationsmanual

    As a helpdeskoperator I want tosee who is logged

    in

    View Invoice inHTML, PDF, orExcel format

    Register newuser

    Edit existinguser

    Delete user

    Find user

    100 simultaneoususers

    Operations

    manual

    As a helpdesk

    operator I want to seewho is logged in

    View Invoice inHTML, PDF, orExcel format

    Dividindo user stories

  • 7/22/2019 Mtodos_geis_-_CBSoft

    84/101

    CBSoft Salvador Bahia Setembro de 2010

    Administrateusers

    Register newuser

    Edit existinguser

    Delete user

    Find user

    User admin

    User admin

    User admin

    User admin

    Do GUIdesign

    Write failingtest

    Do integrationtest

    Create DBschema

    Write server-side logic

    Write formvalidation

    Dividir

    Quebrar em tarefas durante a reunio de sprint planning

    13

    5

    3

    8

    2

    Ref: Henrik Kniberg

    Como priorizaritens do backlog?

    Como planejaras tarefas?

    Desenvolvimento

  • 7/22/2019 Mtodos_geis_-_CBSoft

    85/101

    CBSoft Salvador Bahia Setembro de 2010

    ScrumMaster e Equipe

    Dia-a-dia do SCRUM

    Sprint 2 semanas a 4 semanas

    Daily meetings (Daily Scrum)

    Impedimentos Obstculos ao trabalho da equipe

    Manter a taskboard

    Burndown

    Tarefas e estimativas

    Tarefas no-planejadas

    O Grfico de Burndown

  • 7/22/2019 Mtodos_geis_-_CBSoft

    86/101

    CBSoft Salvador Bahia Setembro de 2010

    5

    10

    15

    20

    Trabalho queresta na sprint

    (pontos de userstory)

    Dias da sprint

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

    Grfico de Burndown de uma Sprint de duas semanas

    Vamos terminar antes

    O Grfico de Burndown

  • 7/22/2019 Mtodos_geis_-_CBSoft

    87/101

    CBSoft Salvador Bahia Setembro de 2010

    5

    10

    15

    20

    Trabalho queresta na sprint

    (pontos de userstory)

    Dias da sprint

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

    Grfico de Burndown de uma Sprint de duas semanas

    No vamosconseguir cumprir

    a meta desta sprint

    O Grfico de Burndown

  • 7/22/2019 Mtodos_geis_-_CBSoft

    88/101

    CBSoft Salvador Bahia Setembro de 2010

    5

    10

    15

    20

    Trabalho queresta na sprint

    (pontos de userstory)

    Dias da sprint

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

    No estamos atualizandoo grfico de burndown

    Grfico de Burndown de uma Sprint de duas semanas

    O Grfico de Burndown

  • 7/22/2019 Mtodos_geis_-_CBSoft

    89/101

    CBSoft Salvador Bahia Setembro de 2010

    100

    200

    300

    400

    Trabalho queresta no projeto(pontos de user

    story)

    Nro de sprints

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

    O projeto vai terminarentre os sprints 14 e 16

    Grfico de Burndown da release ou do projeto

    Desenvolvimento

  • 7/22/2019 Mtodos_geis_-_CBSoft

    90/101

    CBSoft Salvador Bahia Setembro de 2010

    Daily Meetings (Daily Scrum)

    Reunio diria de 15 minutos

    Mantm equipe informada e integrada O que voc fez ontem?

    O que pretende fazer para amanh?

    Quais so seus impedimentos?

    Questes tcnicas

    No final da reunio

    No se resolve problema, apenas se identifica

    Desenvolvimento

  • 7/22/2019 Mtodos_geis_-_CBSoft

    91/101

    CBSoft Salvador Bahia Setembro de 2010

    Para ajudar na execuo (taskboard)

    Sprint review

  • 7/22/2019 Mtodos_geis_-_CBSoft

    92/101

    CBSoft Salvador Bahia Setembro de 2010

    Cliente, PO, SM e Team

    Apresentao do produto

    Foco no QUE foi feito e no COMO foi feito

    Aceite formal e feedback do cliente

    Melhoria na forma de priorizao?

    Prximo sprint

  • 7/22/2019 Mtodos_geis_-_CBSoft

    93/101

    CBSoft Salvador Bahia Setembro de 2010

    Lies aprendidas

    Alimentam o prximo sprint

    Velocidade da equipe

    Erros x acertos

    Previsto x realizado

    Fator de foco da equipe

    Repositrio de lies

    Disseminao na empresa

    Usar parte do sprint anterior para planejar oprximo sprint

    Lies aprendidas

    Fluxo do Scrum

  • 7/22/2019 Mtodos_geis_-_CBSoft

    94/101

    CBSoft Salvador Bahia Setembro de 2010

    Cancel

    Gift wrap

    Return

    Sprint2-4 semanas

    ???Objetivo do Sprint

    Backlog daSprint

    Produto a serentregue

    (ou seu incremento)

    Backlogdo produto

    CuponsEmbrulho

    Cupons

    Cancelar

    24 horas

    Sprint Planning 1 Sprint Planning 2

    Dai ly Scrum

    Sprint Review Retrospect iva

  • 7/22/2019 Mtodos_geis_-_CBSoft

    95/101

    CBSoft Salvador Bahia Setembro de 2010

    XP

    Dinmica

  • 7/22/2019 Mtodos_geis_-_CBSoft

    96/101

    CBSoft Salvador Bahia Setembro de 2010

    Lembram disto?

    Como Mtodosgeis podem

    ajudar aresolver ouminimizar os

    motivos defracassoidentificados?

    Grupo 2

    Grupo n

    Grupo 1

    Grupo 3

    Sucesso Fracasso

    Ref: Henrik Kniberg

    Concluses

  • 7/22/2019 Mtodos_geis_-_CBSoft

    97/101

    CBSoft Salvador Bahia Setembro de 2010

    Quando temos problema em cronograma, modelostradicionais cortam testes, modelos geis cortam histrias.Um reduz a qualidade, o outro reduz o escopo.

    A questo no documentar, entender.

    No existem melhores prticas. Existem boas prticas paradeterminadas situaes.

    Entregue hoje. Adapte amanh.

    Adaptao uma resposta mudana.

    Equipes auto-gerenciveis no so equipes sem liderana,

    so equipes com outro estilo de liderana. Uso de tcnicas como Refatorao, Testes, Modelagem

    gil so fundamentais para constante mudana do cdigo

    Plans are nothing; Planning is everything

  • 7/22/2019 Mtodos_geis_-_CBSoft

    98/101

    CBSoft Salvador Bahia Setembro de 2010

    twitter.com/danicukitwitter.com/rafaelpri

    Dinmica

  • 7/22/2019 Mtodos_geis_-_CBSoft

    99/101

    CBSoft Salvador Bahia Setembro de 2010

    Analista Projetista Programador Testador Cliente

    Ref: Luiz Cludio Parzianello

    Dinmica

  • 7/22/2019 Mtodos_geis_-_CBSoft

    100/101

    CBSoft Salvador Bahia Setembro de 2010

    Ref: Luiz Cludio Parzianello

    Pequenos Lotes

    Grandes Lotes

    Dinmica

  • 7/22/2019 Mtodos_geis_-_CBSoft

    101/101

    Qual o arranjo logstico mais rpido?

    Qual equipe apresentou o maior esforo por projeto?

    Quais as vantagens de cada abordagem?

    Quais as desvantagens de cada abordagem?

    Qual a justificativa para manter os grandes lotes?