agile tour 2010

62
Adoção dos Métodos Ágeis em Outsourcing Paulo Rebelo [email protected] 25 de Outubro 2010 São Paulo

Upload: paulo-rebelo

Post on 01-Jul-2015

358 views

Category:

Technology


2 download

DESCRIPTION

Application of Agile Methods in Outsourcing

TRANSCRIPT

Page 1: Agile Tour 2010

Adoção dos Métodos Ágeis em Outsourcing

Paulo [email protected]

25 de Outubro 2010

São Paulo

Page 2: Agile Tour 2010

Biografia

• Mestre em Engenharia de Computação pelo IPTComputação pelo IPT

• Formado em Licenciatura e Bacharelado em Matemática

• Gerente de Projetos Ágil – Abril

www.agiletour.com25/10/10

Page 3: Agile Tour 2010

Meta #1

É possível aplicarmos Agile em Outsourcing?

Page 4: Agile Tour 2010

Meta #2

Como podemos adotar Agile em Outsourcing?

Page 5: Agile Tour 2010

OutsourcingOutsourcing

??

www.agiletour.com25/10/10

AgileAgile

??

Page 6: Agile Tour 2010

A sua empresa já está preparada em desenvolvimento de software e

www.agiletour.com25/10/10

desenvolvimento de software e gestão de projetos ágeis?

Page 7: Agile Tour 2010

Se não está, os desafios são grandes!

www.agiletour.com25/10/10

Page 8: Agile Tour 2010

www.agiletour.com05/05/09

Page 9: Agile Tour 2010

PARCERIA e não ADVERSÁRIOS!

www.agiletour.com25/10/10

Page 10: Agile Tour 2010

Parceria Ágil?

• Nem todos estão dispostos, assim como na adoção de Agile em equipes internas

www.agiletour.com25/10/10

Page 11: Agile Tour 2010

Contratos Tradicionais

• Inflexíveis e não permitem mudança de escopo

www.agiletour.com25/10/10

Page 12: Agile Tour 2010

Triângulação Perversa

Tempo

www.agiletour.com25/10/10

Tempo

EscopoCusto

Page 13: Agile Tour 2010

Contrato Ágil

www.agiletour.com05/05/09

Page 14: Agile Tour 2010

Ao invés de escopo fixo…

www.agiletour.com25/10/10

Page 15: Agile Tour 2010

…custo fixo

www.agiletour.com25/10/10

Page 16: Agile Tour 2010

- Time-boxing é uma prática ágil comum.

- Limitar o custo faz com que o time-boxing trabalhe até melhor!

www.agiletour.com25/10/10

Page 17: Agile Tour 2010

Portanto:

• User stories, ao invés de uma Especificação de Requisitos detalhada (elas são orientadas a features, podem ser criadas e destruídas features, podem ser criadas e destruídas facilmente, provém uma boa visão do escopo e podem ser comparadas pelo tamanho ou esforço).

• Pontos, ao invés de horas, pois são relativos e não expressam necessariamente o esforço.

• DONE: confiança e entendimento comum.www.agiletour.com25/10/10

Page 18: Agile Tour 2010

Desta forma, fixando o escopo em termos de pontos, conseguimos, no decorrer do

projeto, abraçar mudanças, pois conseguimos trocar histórias por outras

de mesmo valor.

www.agiletour.com25/10/10

de mesmo valor.

Assim, temos a tríplice: custo, prazo e escopo fixos, da forma ágil!

Page 19: Agile Tour 2010

Como?

EstimativaInicial

EstimativaInicial

Obterhistórias

Pontuarhistórias

www.agiletour.com25/10/10

Page 20: Agile Tour 2010

Business Value“Uma abordagem de melhoria de aprendizado e incremental, com a

finalidade de oferecer aos

www.agiletour.com25/10/10

finalidade de oferecer aos clientes mais do que eles

realmente querem, observando o processo como um todo.”

Page 21: Agile Tour 2010

www.agiletour.com25/10/10

Page 22: Agile Tour 2010

Como?

EstimativaInicial

EstimativaInicial

Obterhistórias

Pontuarhistórias

TempoTempo VelocidadeTime

QuantidadePontos

www.agiletour.com25/10/10

Page 23: Agile Tour 2010

Como?

EstimativaInicial

EstimativaInicial

Obterhistórias

Pontuarhistórias

TempoTempo VelocidadeTime

QuantidadePontos

CustoCusto QuantidadeHoras

QuantidadePessoas

www.agiletour.com25/10/10

Page 24: Agile Tour 2010

Velocidade do Time

Total de Pontos 100

Velocidade Baixa 5Velocidade Baixa 5

Velocidade Alta 15

www.agiletour.com25/10/10

100 ÷ 5 =

100 ÷ 15 =

Page 25: Agile Tour 2010

TEMPO

f = (total de pontos ÷ velocidade) ×f = (total de pontos ÷ velocidade) ×tamanho do sprint

(100 ÷ 10) × 2 semanas = 20 semanas

www.agiletour.com25/10/10

Page 26: Agile Tour 2010

CUSTO

f = horas sprint × qtde. sprints × qtde. f = horas sprint × qtde. sprints × qtde. pessoas × valor/hora

80h × 10 sprints × 4 pessoas × R$ 100,00 = R$ 320.000,00

www.agiletour.com25/10/10

Page 27: Agile Tour 2010

Flexibilidade

• Número de pontos a serem entregues já sabemos!

• Abrace mudanças, levando em consideração a • Abrace mudanças, levando em consideração a quantidade de pontos!

• Se cliente quiser mais 1 sprint, sem problema! Faça um aditivo ao contrato com esse sprint adicional.

www.agiletour.com25/10/10

Page 28: Agile Tour 2010

MAS…

www.agiletour.com25/10/10

Page 29: Agile Tour 2010

Acompanhe a cada sprint!!!

www.agiletour.com25/10/10

Page 30: Agile Tour 2010

www.agiletour.com25/10/10

noop.nl

Page 31: Agile Tour 2010

Confiança!

www.agiletour.com25/10/10

Page 32: Agile Tour 2010

ESTUDO DE CASO

www.agiletour.com25/10/10

Page 33: Agile Tour 2010

ANTES DE TUDO…

www.agiletour.com25/10/10

Page 34: Agile Tour 2010

www.agiletour.com25/10/10

Page 35: Agile Tour 2010

Definir as responsabilidades com clareza

• Product Owner

• ScrumMaster

• QA• QA

• Time

• Arquiteto de Software

• Sysadmin

www.agiletour.com25/10/10

Page 36: Agile Tour 2010

Definir as responsabilidades com clareza

• Product Owner

• ScrumMaster

• QA

• Define uma visão clara do produto• Define as características • QA

• Time

• Arquiteto de Software

• Sysadmin

www.agiletour.com25/10/10

• Define as características do produto• Planeja e organiza o backlog• Pontua o valor de negócio das histórias • Responsável pelo ROI

Page 37: Agile Tour 2010

Definir as responsabilidades com clareza

• Product Owner

• ScrumMaster

• QA

• Remove os impedimentos• Responsável pelo processo• QA

• Time

• Arquiteto de Software

• Sysadmin

www.agiletour.com25/10/10

processo• Facilita a colaboração entre todos• Garante que o time esteja sempre funcionando e produzindo

Page 38: Agile Tour 2010

Definir as responsabilidades com clareza

• Product Owner

• ScrumMaster

• QA

• Planeja e executa os testes de aceitação do usuário• QA

• Time

• Arquiteto de Software

• Sysadmin

www.agiletour.com25/10/10

usuário• Apóia time• Trabalha com todos para garantir a qualidade do software a ser lançado

Page 39: Agile Tour 2010

Definir as responsabilidades com clareza

• Product Owner

• ScrumMaster

• QA

• Desenvolve as features planejadas pelo PO• Define como será • QA

• Time

• Arquiteto de Software

• Sysadmin

www.agiletour.com25/10/10

• Define como será realizado o trabalho• Auto-gerenciado e auto-organizado• Apresenta o que foi feito ao PO

Page 40: Agile Tour 2010

Definir as responsabilidades com clareza

• Product Owner

• ScrumMaster

• QA

• Programa em par remotamente• Revisa o código• QA

• Time

• Arquiteto de Software

www.agiletour.com25/10/10

• Revisa o código• Integra continuamente • Realiza provas de conceito• Alinhamento conceitual e arquitetural entre os principais projetos da área

Page 41: Agile Tour 2010

Sessão de Levantamento de Features

www.agiletour.com25/10/10

Page 42: Agile Tour 2010

Coaching do PO

• Como escrever histórias, aplicando o conceito de INVEST conceito de INVEST (Independent, Negotiable, Valuable, Estimable, Sized right and Testable)

• Responsabilidades

www.agiletour.com25/10/10

Page 43: Agile Tour 2010

Escrever histórias

www.agiletour.com25/10/10

Page 44: Agile Tour 2010

www.agiletour.com25/10/10

- Jeff Patton -

Page 45: Agile Tour 2010

Planning Poker

www.agiletour.com25/10/10

Page 46: Agile Tour 2010

Business Value

www.agiletour.com25/10/10

Page 47: Agile Tour 2010

Pontos

www.agiletour.com25/10/10

Page 48: Agile Tour 2010

Contrato Ágil

www.agiletour.com05/05/09

Page 49: Agile Tour 2010

www.agiletour.com25/10/10

Page 50: Agile Tour 2010

www.agiletour.com25/10/10

Page 51: Agile Tour 2010

Reuniões

• Daily

• Planning• Planning

• Review

• Retrospective

www.agiletour.com25/10/10

Page 52: Agile Tour 2010

Reuniões

• Daily

• Planning

Perguntas:

• O que foi feito?

• O que será feito?• Planning

• Review

• Retrospective

• O que será feito?

• Algum impedimento?

Regras:

• 15’

• PO liga para todos

www.agiletour.com25/10/10

Page 53: Agile Tour 2010

Reuniões

• Daily

• Planning

• Meta do Sprint

• Apresentação das histórias• Planning

• Review

• Retrospective

histórias

• Estimativa (user stories < 13)

• Definição do Sprint

www.agiletour.com25/10/10

Page 54: Agile Tour 2010

Reuniões

• Daily

• Planning

• Apresentação das histórias DONE para stakeholders• Planning

• Review

• Retrospective

stakeholders

• Aceitação

++ Reviews constantes, quase diários

www.agiletour.com25/10/10

Page 55: Agile Tour 2010

Reuniões

• Daily

• Planning

• O que foi bom e devemos continuar?

• O que precisa ser • Planning

• Review

• Retrospective

• O que precisa ser melhorado?

++ Retrospectiva geral presencial no final do Release

www.agiletour.com25/10/10

Page 56: Agile Tour 2010

Acompanhe a Evolução

www.agiletour.com25/10/10

Acompanhe a Evolução

Page 57: Agile Tour 2010

www.agiletour.com05/05/09

Page 58: Agile Tour 2010

Boas Práticas de Desenvolvimento de Software

• Pair programming (Team Viewer, Pair Eclipse Programming, etc.)

• Code review• Code review

• Desenvolvimento orientado a testes

• Padronização de código

• Integração regular do código

• Incentivo à refatoração

www.agiletour.com25/10/10

Page 59: Agile Tour 2010

www.agiletour.com05/05/09

Page 60: Agile Tour 2010

“Quem não se comunica, se estrumbica” (Velho Guerreiro)

www.agiletour.com25/10/10

Page 61: Agile Tour 2010

@phfrebelo

www.agiletour.com25/10/10

Page 62: Agile Tour 2010

www.agiletour.com25/10/10