Page 1
LOGICAL SOFTWAREHuman Capital | Enterprise Java | Research
Rua Gago Coutinho nº4 B2675-509 Odivelas
T +351 21 931 50 33F +351 21 931 82 52
E [email protected]
Web www.logical-software.com
Desenvolvimento Ágil e Scrum 101
Paulo TraçaCTO
[email protected]
Page 2
Desenvolvimento Ágil e Scrum 101
Objectivos da Sessão● Introduzir métodos ágeis desenvolvimento
● Scrum
● Outros
● Perceber como esses métodos contrastam com a abordagem
tradicional
● Perceber como impactam
● Nossa postura em relação projecto/carreira/empresa
● Skills (Hard & Soft)
Page 3
Desenvolvimento Ágil e Scrum 101
AGILE SOFTWARE
DEVELOPMENT
Page 4
Desenvolvimento Ágil e Scrum 101
SCRUM
XP PAIR PROG.
TDD
REFACTORING
CONTINUOUS INTEGRATION
UNIT TESTINGDSDM
FDD
BDD
AUP
Crystal Clear
Page 5
Desenvolvimento Ágil e Scrum 101
Agile Manifesto
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
URL : http://agilemanifesto.org/
Page 6
Desenvolvimento Ágil e Scrum 101
Customer satisfaction by rapid, continuous delivery of useful software
Working software is delivered frequently (weeks rather than months)
Working software is the principal measure of progress
Even late changes in requirements are welcomed
Close, daily cooperation between business people and developers
Face-to-face conversation is the best form of communication (Co-location)
Projects are built around motivated individuals, who should be trusted
Continuous attention to technical excellence and good design
Simplicity
Self-organizing teams
Regular adaptation to changing circumstances
Page 7
Desenvolvimento Ágil e Scrum 101
Os Culpados
Kent Beck
Mike Beedle
Arie van Bennekum
Alistair Cockburn
Ward Cunningham
Martin Fowler
Robert C. Martin
Steve Mellor
Ken Schwaber
Jeff Sutherland
Dave Thomas
James Grenning
Jim Highsmith
Andrew Hunt
Ron Jeffries
Jon Kern
Brian Marick
Page 8
Desenvolvimento Ágil e Scrum 101
HARD SKILS
SOFT SKILS
POSTURA EM RELAÇÃO PROJECTO
POSTURA EM RELAÇÃO CARREIRA
Page 9
Desenvolvimento Ágil e Scrum 101
O que é o SCRUM?● Evento no jogo de Rugby
“ ... onde um grupo de pessoas [com + 80kg] discute educadamente a
posse uma bola..” -- Ken Schwaber
● Framework ou metodologia
● Qual a diferença?
Page 10
Desenvolvimento Ágil e Scrum 101
Origem do SCRUM● “The New New Product Development Game”
in Havard Business Review 1986
by Hirotaka Takeuchi an Ikujiro Nonaka
● “The Knowledge Creating Company”
How Japanese Companies Create the Dynamics of Innovation
Hirotaka Takeuchi e Ikujiro Nonaka, 1988
● “Ken Schwaber e Jeff Sutherland” , 1994
● Signatários do Agile Manifesto
Page 11
Desenvolvimento Ágil e Scrum 101
Conceitos e Características● Timeboxing
● Ênfase na transparência
● Focus na equipa
● Equipas pequenas
● Equipas “Cross-functional”
● Iterativo e incremental
● Feedback loop (Inspect / adapt Loop)
● Conjunto de boas práticas e algumas regras simples
Page 12
Desenvolvimento Ágil e Scrum 101
Porque o SCRUM?
● Ao longo do projecto os pressupostos mudam [facto]
● Requisitos do cliente
● Tecnologia
● Processos de negócio
● Relevância de negocio da aplicação
● Mercado
Page 13
MOVING TO SCRUM
Porque o SCRUM(2) ?
● Abraçar a mudança
“ O processo de desenvolvimento de software é um caos
controlado, é necessário, aceitar o caos, e implementar os
mecanismos de controlo.”
● O objectivo final é entregar a melhor solução de software dentro
dos possível, que cumpra os objectivos do cliente.
Page 14
Desenvolvimento Ágil e Scrum 101
Porque o SCRUM(2) ?
● Abraçar a mudança
“ O processo de desenvolvimento de software é um caos
controlado, é necessário, aceitar o caos, e implementar os
mecanismos de controlo.”
● O objectivo final é entregar a melhor solução de software dentro
dos possível, que cumpra os objectivos do cliente.
Page 15
Desenvolvimento Ágil e Scrum 101
Page 16
Desenvolvimento Ágil e Scrum 101
Page 17
Desenvolvimento Ágil e Scrum 101
Page 18
Desenvolvimento Ágil e Scrum 101
Actores
● Dois tipos de actores
● Pigs (Totalmente comprometidos com o projecto)
● Chickens (Apenas envolvidos com no projecto)
Pode haver um “Pig/Chicken”?
Page 19
Desenvolvimento Ágil e Scrum 101
Actores● Scrum Master
● Responsável pelo Scrum
● Guia a equipa e protege do barulho externo
● Product Owner
● Tem a visão do produto a executar e controla o ROI
das funcionalidade implementadas
● Team
● Executa o trabalho delineado
Page 20
Desenvolvimento Ágil e Scrum 101
SCRUM Master
● Ensina, evangeliza e faz cumprir as práticas e valores do
Scrum
● Remove os impedimentos e protege a equipa de ruido
externo durante o Sprint
● Conjuntamente com o Product Owner organiza e
prioritiza o Product Backlog
Page 21
Desenvolvimento Ágil e Scrum 101
Product Owner
● Dono do Product Backlog
● Organiza e prioritária os features no Product Backlog
● Contêm o conhecimento de negocio
● Avalia os artefactos entregues em cada iteração
Page 22
Desenvolvimento Ágil e Scrum 101
Team● Responsável pela execusão das tarefas
● Owner do Sprint Backlog
● Deve conter vários papeis funcionais - “Cross-Functional”
● Deve gerir-se a si mesma
● Tipicamente 6-10 pessoas – ideal 7
● Responsável pela execusão das tarefas dentro das “Best Practises”
Page 23
Desenvolvimento Ágil e Scrum 101
Actividades
● Sprint Planning
● Sprint
● Sprint Review
● Sprint Retrospective
● Daily Scrum
Page 24
MOVING TO SCRUM
Artefactos
● Product Backlog
● Sprint Backlog
● Burndown Chart
● Iteration Wall
Page 25
Desenvolvimento Ágil e Scrum 101
Artefactos
● Product Backlog
Page 26
Desenvolvimento Ágil e Scrum 101
Artefactos
● Sprint Backlog
Page 27
Desenvolvimento Ágil e Scrum 101
Artefactos● Burndown Chart
Page 28
MOVING TO SCRUM
Artefactos● Iteration Wall
Page 29
Desenvolvimento Ágil e Scrum 101
Artefactos● Iteration Wall
Page 30
Desenvolvimento Ágil e Scrum 101
Done !!!
Page 31
Desenvolvimento Ágil e Scrum 101
Conclusões
Page 32
Desenvolvimento Ágil e Scrum 101
Referências
● http://www.implementingscrum.com/blog/
● http://www.mountaingoatsoftware.com/
● http://www.controlchaos.com/
● “Agile Software Development with SCRUM” By
Ken Schawber e Mike Beedle
Page 33
Desenvolvimento Ágil e Scrum 101
Q & A
Page 34
Desenvolvimento Ágil e Scrum 101
SLIDES EXTRAS
Page 35
Desenvolvimento Ágil e Scrum 101
Dificuldades de Implementação
Page 36
Desenvolvimento Ágil e Scrum 101
Dificuldades de Implementação
● Smell of a Bad SCRUM
● Perda de ritmo – os scrum não têm todos a mesma duração
● “Talking Chickens” – os “Chickens” não devem participar no
daily Scrum (podem assistir)
● “Missing Pigs” – nem todos os “Pigs” participam no Daily
Scrum
● Scrum Master atribui tarefas
● O Daily Scrum é feito em função do Scrum Master
● Papeis especializados na Equipa
Page 37
MOVING TO SCRUM
SCRUM / XP / Métodos / ágeis
Page 38
Desenvolvimento Ágil e Scrum 101
Diferenças em Relação a outras Frameworks / metodologias
● Focus
● Transparência
● Objectivos