Gerência Ágil de Projetos
Madson Menezes
Raony Araújo
Seminário de Engenharia de
Software e Linguagens
15/06/2005
1
Sobre o que estaremos
falando
David J. Anderson
Publicado em
19 de Setembro de 2003
2
Sobre o que estaremos
falando
Jim Highsmith
Publicado em
6 de Abril de 2004
3
Linha do tempo
Taylor
PMBOK
4
O desconforto
• Como planejar algo que nunca fizemos
antes?
• O que fazer quando a meta sofre ajustes
durante o projeto?
– Seguir o plano ou mudar o plano?
5
Como abordar
Gerenciamento
de Projetos
Tradicional
6
Como abordar
Gerenciamento
de Projetos
Tradicional
7
Como abordar
Gerenciamento
de Projetos
Tradicional
8
Como abordar
Gerenciamento
de Projetos
Tradicional
Gerenciamento
Ágil
de Projetos
9
Como abordar
Gerenciamento
de Projetos
Tradicional
Gerenciamento
Ágil
de Projetos
10
Sedimentando algumas idéias
• Complexidade de detalhes versus
Complexidade inerente
11
Sedimentando algumas idéias
• Empirismo versus
Determinismo
12
Sedimentando algumas idéias
• Empirismo versus
Determinismo
13
Sedimentando algumas idéias
• Caos versus Incerteza associada
14
Novos conceitos
• Olhar para fora da caixa!
• Qual o nosso verdadeiro objetivo?
– Cumprir o plano ou retornar valor?
– Conformidade ou qualidade?
15
Novas Ferramentas
• Produção enxuta
– “Just in Time”
16
Novos conceitos
• Espere! Não era uma caixa o que eu
tinha em mãos!
• Qual a melhor forma de agir?
– Definir ou preservar o fluxo do valor?
17
Novas Ferramentas
• Theory of Constraint
– Identificar o gargalo do sistema
– Decidir como melhor utilizar o
gargalo
– Subordinar todo o resto à
decisão do passo anterior
– Afrouxar o gargalo
– Se os passos anteriores
criaram um novo gargalo,
retornar ao segundo passo
18
Leituras Recomendadas
A Meta – Um processo de
melhoria contínua
Eliyahu M. Goldratt
O Sistema Toyota de Produção
Taiichi Ohno
19
Novos conceitos
• OK, OK. Agora eu já entendi os meus
objetivos e uma idéia geral de como eu
devo agir.
• As perguntas que eu faço agora são
– Como prever e estimar o percurso?
– Como conduzir e liderar?
– Como organizar e motivar meu time?
20
Gerência Ágil de Projetos
21
A Declaração da Interdependência
Aumentamos o ROI fazendo do fluxo contínuo de valor
nosso foco
Entregamos resultados confiáveis através do
engajamento do cliente em interações freqüentes e
propriedade coletiva
Esperamos a incerteza e a gerenciamos através de
iterações, antecipação e adaptação
Liberamos criatividade e inovação pelo reconhecimento
de que indivíduos são fonte principal de valor e criando
um ambiente onde eles possam fazer a diferença
Impulsionamos o desempenho através de obrigação por
resultados e responsabilidade compartilhada para
efetividade do time
Melhoramos a efetividade e a confiança através de
estratégias específicas, processos e práticas
22
Leituras recomendadas
Agile Project Management
with Scrum
Ken Schwaber
Managing Agile Projects
Sanjiv Augustine
23
Um Arcabouço de Gerência Ágil
24
Um arcabouço ágil
• Deve suportar uma cultura de visão,
exploração e adaptação
• Suportar auto-organização e
autodisciplina
• Ser flexível
• Incorporar aprendizado
• Incorporar práticas que
sustentem as fases
25
Fase de Previsão
Plano de Entrega
Funcionalidades
Prever
Especular
Explorar
Ações
adaptativas
Lista de funcionalidades
Define uma visão inicial de
o que é o projeto
quem é a equipe
como será executado
Adaptar
Produto Final
Fechar
26
Fase de Previsão
• Definindo...
–
–
–
–
–
Visão
Escopo
Restrições
Equipe
Processo
27
Fase de Especulação
Plano de Entrega
Funcionalidades
Prever
Especular
Explorar
Ações
adaptativas
Lista de funcionalidades
“Conjecturar algo baseado em
informações ou fatos
incompletos” [1]
Adaptar
Produto Final
[1] Encarta® World English Dictionary, © 1999, 2000 Microsoft Corporation
Fechar
28
Melhorando a comunicação
Work Breakdown Structure
Estrutura de tarefas
Feature Breakdown Structure
Estrutura de funcionalidades
Auxilia entendimento de
stakeholders
29
Especulando através de
funcionalidades...
Funcionalidades
FBS
Cartões de Funcionalidade
Planejamento por
iteração/funcionalidade
30
Fase de Exploração
Plano de Entrega
Funcionalidades
Prever
Especular
Explorar
Ações
adaptativas
Lista de funcionalidades
Fase de entrega de
funcionalidades.
Busca por entregar a maior
quantidade de valor possível
Adaptar
Produto Final
Fechar
31
Explorar e Experimentar
• Produtos novos  ambiente auto
organizável
• Equipe unida e auto-disciplinada
• Autonomia para criar
• Auto gerenciamento
• Gerente como um coach
32
Fase de Adaptação
Plano de Entrega
Funcionalidades
Prever
Especular
Explorar
Ações
adaptativas
Lista de funcionalidades
Adaptar não quer dizer acertar
ou errar, significa mudar,
alterar para alcançar mais
valor
Adaptar
Fechar
33
Adaptar-se às mudanças
• Adaptação impede
sentimento de fracasso e
impotência
• Para adaptar é necessário
feedback contínuo
– Monitorar
– Status Report
34
Fase de Adaptação
• Reagir a eventos
– Os clientes estão recebendo valor com o projeto?
– O projeto está tendo a evolução esperada?
– A equipe está se adaptando bem às mudanças?
• “Ação Corretiva” X
– Conformidade com o Plano
35
Fase de Fechamento
Funcionalidades
Plano de Entrega
Prever
Especular
Explorar
Ações
adaptativas
Lista de funcionalidades
Adaptar
Fase onde concluí-se o projeto
com o produto pronto ou com o
acerto entre as partes de que o
projeto falhou.
Fechar
Produto Final
36
Concluir é possível
• Retrospectiva do projeto
– Baseada na retrospectiva de cada iteração
• “limpeza” dos recursos
• Comemoração
37
E falando em conclusão...
• Gerência Ágil
– Uma abordagem diferenciada, focada em
liberação de valor baseada em idéias
inovadoras de gerência e administração
– Bem utilizada em projetos inovadores
38
Conclusão
• Quando não usar gerência ágil
– Quando há pouca incerteza (interna ou
externa) associada ao projeto
– Quando a organização é orientada a
processos formais
– Quando agilidade é usado como desculpa
– Quando não agregar valor para o seu
projeto
39
Conclusão
• Quem usa...
–
–
–
–
CC Pace Consulting
Cutter Consortium
ThoughtWorks Inc.
Microsoft (divisão da Microsoft TV)
40
Gerência Ágil de Projetos
Madson Menezes
Raony Araújo
Seminário de Engenharia de
Software e Linguagens
15/06/2005
41
Backup Slides
42
Estrutura
Gerência de Projetos Tradicional
Iniciação
Planejamento
Execução
Controle
Finalização
43
Fase de Previsão
44
Fase de Especulação
45
Fase de Exploração
46
Prática: Revisão e Ação adaptativa
• Revisão
– Projeto, Produto e Time
– Aumentar o feedback
• Feedback
– Cliente
– Técnico
– Performance da equipe
47
48
Creating Sustainable Competitive Advantage:
The Toyota Philosophy and Its Effects - M. Reza Vaghefi
It appeared in Mastering Management Online <http://www.ftmastering.com/mmo/index.htm>,
Issue 7, October 2001, and was republished in the September 5, 2002 issue of FT.com.
49
Alguns Porquês
Inventório
Sistema
Resultado
50
Alguns Porquês
Inventório
Sistema
Resultado
( Investimento )
51
Alguns Porquês
Inventório
Sistema
( Investimento )
Resultado
( Custo da Operação )
52
Alguns Porquês
Inventório
( Investimento )
Sistema
Resultado
( Custo da Operação )
( Rendimento )
53
Alguns Porquês
Inventório
( Investimento )
Sistema
Resultado
( Custo da Operação )
( Rendimento )
Lucro do processo = Rendimento – Custo da Operação
54
Alguns Porquês
Inventório
( Investimento )
Sistema
Resultado
( Custo da Operação )
( Rendimento )
Lucro do processo = Rendimento – Custo da Operação
ROI =
Lucro do processo
Investimento
55
Alguns Porquês
Inventório
( Investimento )
Sistema
Resultado
( Custo da Operação )
( Rendimento )
Lucro do processo = Rendimento – Custo da Operação
ROI =
Lucro do processo
Investimento
56
Alguns Porquês
Inventório
( Investimento )
Sistema
Resultado
( Custo da Operação )
( Rendimento )
Lucro do processo = Rendimento – Custo da Operação
ROI =
Lucro do processo
Investimento
57
Alguns Porquês
Sistema
Feedback
Fazer Algo
Comparar
( Custo da Operação )
58
Alguns Porquês
Não Linearidade
Sistema
Feedback
Fazer Algo
Comparar
( Custo da Operação )
59
Alguns Porquês
Sistema
Análise
erro
Testes
Sistema
Projeto
erro
Teste
Integração
Impl.
erro
Teste
Unitário
( Custo da Operação )
60
Alguns Porquês
• Se concentrar no custo da operação é
menos eficiente porque:
– A relação entre o esforço da operação e o
rendimento é não-linear
– A curto prazo, o custo da operação no
processo de software é fixo
– No final das contas, o custo da operação é
limitado por zero (na verdade, nem chega a
tanto)
61
Alguns Porquês
Inventário
( Investimento )
Sistema
Resultado
( Custo da Operação )
( Rendimento )
Lucro do processo = Rendimento – Custo da Operação
ROI =
Lucro do processo
Investimento
62
Alguns Porquês
• Foco no fluxo de valor
– Primeira semana
Inventário
Desenvolvimento
( Vazão 50 )
80
63
Alguns Porquês
• Foco no fluxo de valor
– Segunda semana
Inventário
Desenvolvimento
( Vazão 50 )
80
64
Alguns Porquês
• Foco no fluxo de valor
– Terceira semana
Inventário
Desenvolvimento
( Vazão 50 )
30
65
Alguns Porquês
• Foco no fluxo de valor
– Quarta semana
Inventário
Resultado
Desenvolvimento
( Vazão 50 )
30
50
66
Alguns Porquês
• Foco no fluxo de valor
– Quinta semana
Inventário
Resultado
Desenvolvimento
( Vazão 50 )
50
110
67
Alguns Porquês
• Foco no fluxo de valor
– Sexta semana
Inventário
Resultado
Desenvolvimento
( Vazão 50 )
50
110
Gargalo, desperdício, muda!!
68
Alguns Porquês
• Se concentrar no investimento é
importante porque:
– Menor investimento aumenta o retorno do
investimento (ROI)
– Leva a menor tempo de condução do
inventário através do sistema
– Evita desperdício
69
Alguns Porquês
Inventório
Sistema
( Investimento - I )
( Custo da Operação - OE )
Resultado
( Rendimento - T )
Lucro do processo = Rendimento – Custo da Operação
ROI =
Lucro do processo
Investimento
70
Alguns Porquês
• Rendimento representa
– Valor para o cliente
• Rendimento provém
– Do fluxo de valor
– Do valor de rendimento do inventário
– Da qualidade
• Rendimento é limitado apenas pelo bolso do
cliente
71
E no caso de Software?
•
•
•
•
Investimento – I
Rendimento – T (Throughput)
Custo operacional – OE (Operating Expense)
Retorno do investimento – ROI
72
E no caso de Software?
•
Investimento – I
– I = Inventário (Idéias) x Investimento para obtê-lo (Elicitação dos
requisitos)
•
•
•
Rendimento – T (Throughput)
Custo operacional – OE (Operating Expense)
Retorno do investimento – ROI (Return Of Investment)
73
E no caso de Software?
•
Investimento – I
– I = Inventário (Idéias) x Investimento para obtê-lo (Elicitação dos
requisitos)
•
Rendimento – T (Throughput)
– T = Rendimento financeiro por unidade do Resultado (Código
executável)
•
•
Custo operacional – OE (Operating Expense)
Retorno do investimento – ROI (Return Of Investment)
74
E no caso de Software?
•
Investimento – I
– I = Inventário (Idéias) x Investimento para obtê-lo (Elicitação dos
requisitos)
•
Rendimento – T (Throughput)
– T = Rendimento financeiro por unidade do Resultado (Código
executável)
•
Custo operacional – OE (Operating Expense)
– OE = Custo de transformar itens do inventário em resultado
(Engenharia de Software)
•
Retorno do investimento – ROI (Return Of Investment)
75
E no caso de Software?
•
Investimento – I
– I = Inventário (Idéias) x Investimento para obtê-lo (Elicitação dos
requisitos)
•
Rendimento – T (Throughput)
– T = Rendimento financeiro por unidade do Resultado (Código
executável)
•
Custo operacional – OE (Operating Expense)
– OE = Custo de transformar itens do inventário em resultado
(Engenharia de Software)
•
Retorno do investimento – ROI (Return Of Investment)
– ROI =
Desconhecido (T) – Muito difícil de adivinhar (OE)
Ninguém se preocupou em medir (I)
76
O Objetivo
• Gerar o maior retorno do investimento
possível para o projeto
– O tempo de entrega deve diminuir
– Os recursos devem ser bem explorados
– O escopo deve ser ajustado de acordo com
o objetivo
77
Gerenciamento Ágil
• Planejamento
• Controle de riscos
• Gerenciamento do sistema
– Pensamento sistêmico
– Sistemas auto-governados
– Teoria das restrições
78
Pensamento Sistêmico
• Entender o que controlar
– “Não podemos controlar aquilo que não
podemos medir” [DeMarco]
• Entender o sistema sob controle
– “Me diga como você vai me avaliar e eu lhe
direi como vou me comportar” [Goldratt]
• Entender como controlar
– Métricas devem ser simples, preditivas e,
idealmente, auto-geradas [Reinertsen]
79
Pensamento Sistêmico
• Qual o objetivo?
– Ótimo local
– Ótimo global
• O que medir?
– Medir o custo (Cost Accounting)
– Medir o desempenho (Throughput
Accounting)
80
Pensamento Sistêmico
• Qual o sistema sob controle?
– Determinístico
– Complexo e Adaptativo
• Como controlar?
– Ordenar e cobrar
– Definir regras e dar feedback
81
Sistemas Auto-governados
• Propriedades emergentes
– Organização
– Adaptabilidade
• Conjunto de regras simples
– XP, RUP, FDD, UDP...
• Complexidade de detalhes versus
Complexidade inerente
82
Teoria das Restrições
• Entendendo a diferença entre ótimo
global e ótimo local
Análise
( Vazão 50 )
60
Projeto
( Vazão 30 )
50
30
83
Teoria das Restrições
• Entendendo a diferença entre ótimo
global e ótimo local
Análise
( Vazão 50 )
60
Projeto
( Vazão 30 )
50
30
Ótimo local
84
Teoria das Restrições
• Entendendo a diferença entre ótimo
global e ótimo local
Muda!
Análise
( Vazão 50 )
60
Projeto
( Vazão 30 )
50
30
Ótimo local
85
Teoria das Restrições
• Entendendo a diferença entre ótimo
global e ótimo local
Muda!
Análise
( Vazão 50 )
60
Projeto
( Vazão 30 )
50
30
Ótimo local
Change Request
86
Teoria das Restrições
• Identificar o gargalo do sistema
• Decidir como melhor utilizar o gargalo
• Subordinar todo o resto à decisão do
passo anterior
• Afrouxar o gargalo
• Se os passos anteriores criaram um novo
gargalo, retornar ao segundo passo
87
Alguns Porquês
• Ótimo Global versus Ótimo Local
Inventário
Resultado
Desenvolvimento
( Vazão 50 )
Consumo
( Vazão 30 )
30
30
Inventário
Sistema
Resultado
( Investimento ) ( Custo da Operação ) ( Rendimento )
88
Download

Gerencia Agil de Projetos