38
LOGICAL SOFTWARE Human Capital | Enterprise Java | Research Rua Gago Coutinho nº4 B 2675-509 Odivelas T +351 21 931 50 33 F +351 21 931 82 52 E [email protected] Web www.logical-software.com Desenvolvimento Ágil e Scrum 101 Paulo Traça CTO [email protected]

Desenvolvimento Ágil e Scrum 101

Embed Size (px)

DESCRIPTION

Presentation about Scrum and Agile development delivered at ISEL

Citation preview

Page 1: Desenvolvimento Ágil e Scrum 101

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

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

Desenvolvimento Ágil e Scrum 101

AGILE SOFTWARE

DEVELOPMENT

Page 4: Desenvolvimento Ágil e Scrum 101

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

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

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

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

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

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

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

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

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: Desenvolvimento Ágil e Scrum 101

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

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

Desenvolvimento Ágil e Scrum 101

Page 16: Desenvolvimento Ágil e Scrum 101

Desenvolvimento Ágil e Scrum 101

Page 17: Desenvolvimento Ágil e Scrum 101

Desenvolvimento Ágil e Scrum 101

Page 18: Desenvolvimento Ágil e Scrum 101

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

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

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

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

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

Desenvolvimento Ágil e Scrum 101

Actividades

● Sprint Planning

● Sprint

● Sprint Review

● Sprint Retrospective

● Daily Scrum

Page 24: Desenvolvimento Ágil e Scrum 101

MOVING TO SCRUM

Artefactos

● Product Backlog

● Sprint Backlog

● Burndown Chart

● Iteration Wall

Page 25: Desenvolvimento Ágil e Scrum 101

Desenvolvimento Ágil e Scrum 101

Artefactos

● Product Backlog

Page 26: Desenvolvimento Ágil e Scrum 101

Desenvolvimento Ágil e Scrum 101

Artefactos

● Sprint Backlog

Page 27: Desenvolvimento Ágil e Scrum 101

Desenvolvimento Ágil e Scrum 101

Artefactos● Burndown Chart

Page 28: Desenvolvimento Ágil e Scrum 101

MOVING TO SCRUM

Artefactos● Iteration Wall

Page 29: Desenvolvimento Ágil e Scrum 101

Desenvolvimento Ágil e Scrum 101

Artefactos● Iteration Wall

Page 30: Desenvolvimento Ágil e Scrum 101

Desenvolvimento Ágil e Scrum 101

Done !!!

Page 31: Desenvolvimento Ágil e Scrum 101

Desenvolvimento Ágil e Scrum 101

Conclusões

Page 32: Desenvolvimento Ágil e Scrum 101

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

Desenvolvimento Ágil e Scrum 101

Q & A

Page 34: Desenvolvimento Ágil e Scrum 101

Desenvolvimento Ágil e Scrum 101

SLIDES EXTRAS

Page 35: Desenvolvimento Ágil e Scrum 101

Desenvolvimento Ágil e Scrum 101

Dificuldades de Implementação

Page 36: Desenvolvimento Ágil e Scrum 101

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: Desenvolvimento Ágil e Scrum 101

MOVING TO SCRUM

SCRUM / XP / Métodos / ágeis

Page 38: Desenvolvimento Ágil e Scrum 101

Desenvolvimento Ágil e Scrum 101

Diferenças em Relação a outras Frameworks / metodologias

● Focus

● Transparência

● Objectivos