Upload
eduardo-peres
View
83
Download
1
Embed Size (px)
DESCRIPTION
Relato de experiência da DBServer, que foi uma das primeiras empresas brasileiras a realizar certificação CMMI utilizando métodos ágeis. Apresenta as possibilidades de integração de modelos de maturidade com métodos ágeis e destaca que os principais antagonismos decorrem de desconhecimento sobres estas abordagens.
Citation preview
Linha Ágil:
Integração de Agilidade e
Disciplina em uma
Organização CMMI nível 2
Junho de 2010
Eduardo Meira Peres
Agilidade e Disciplina 2009 @ DBServer
Abordagens Ágeis, uma
realidade irreversível
Agilidade e Disciplina 2009 @ DBServer
Integrar CMMI e Agile ?
Falso Antagonismo
Nos métodos ágeis
Não existe planejamento
Não é possível compromisso de prazo
e custo em relação ao escopo do
projeto como um todo
Não existe gerenciamento
O CMMI
Não valoriza as pessoas, apenas o
processo
Não é um modelo flexível
Não valoriza a liderança
Agilidade e Disciplina 2009 @ DBServer
Na Verdade...
Esta barreira existe porque
A maioria das pessoas que
conhece bem o CMMI não conhece
bem os métodos ágeis.
A maioria das pessoas que
conhece bem os métodos ágeis
não conhece bem o CMMI.
Agilidade e Disciplina 2009 @ DBServer
Objetivos Comuns
Objetivo do CMMI
Objetivo dos métodos ágeis
Nas
proporções
adequadas CMMI
SCRUM
RUP
PMBOK
Molécula da adrenalina
Produção de software
de alta qualidade
que atenda as necessidades
no menor prazo e
custo possível
Agilidade e Disciplina 2009 @ DBServer
Pontos Fortes e Fracos...
Maior satisfação do usuário
Maior produtividade
Adaptação a mudanças
Entregar valor rapidamente
Previsibilidade
Garantia da qualidade
Estabilidade
Antecipação
Agile Plan-Driven
Observação: proporções meramente ilustrativas e não representativas
Agilidade e Disciplina 2009 @ DBServer
Balancear Prá Quê ?
Balanceamento >> Potencialização dos
pontos fortes
>> Compensação
dos pontos fracos
Questão Central >> Qual nossa real
necessidade?
Op = Oportunidade para balanceamento
Am = Ameaça para o balanceamento
Am
Am
Op
Op
Am
Agilidade e Disciplina 2009 @ DBServer
CMMI não nos diz como…
C M M I
SCRUM ?? ??
SCRUM
?
Agilidade e Disciplina 2009 @ DBServer
The Best of Both Worlds
Agile + CMMI
Agilidade e Disciplina 2009 @ DBServer
Um Guia Para os Perplexos
Using Risk to Balance Agile and Plan-Driven Methods
[Barry Boehm, Richard Turner] 2004
belivers x perplexed
Agilidade e Disciplina 2009 @ DBServer
Nossas Perplexidades
Nos métodos ágeis:
Qual o papel da arquitetura de software
Qual é o ciclo de vida de gerenciamento do
projeto (quais são as fases de um projeto) ?
Da série:
Mas isto não é ágil...
Também conhecida como:
Isto é modelo em cascata!
Agilidade e Disciplina 2009 @ DBServer
Agilidade e Arquitetura
Design tem pouco valor ?
A arquitetura pode emergir gradualmente a
cada sprint como resultado de sucessivas e
pequenas refatorações ?
Tensão: Antecipação x Adaptação
Adaptação: “last responsible moment”
Seria muito planejamento antecipado ?
Problema: arquitetura tem custo visível mas
seu valor permanece invisível
O que nos dizem os métodos ágeis sobre
como identificar os requisitos arquiteturais e
realizar o projeto arquitetural incremental ?
[March/April 2010 IEEE Software]
Agilidade e Disciplina 2009 @ DBServer
CMMI DBServer: Uma
avaliação que levou 13 anos...
1993 Fundação da DBServer
1996 Curso CMM Introduction
2001 Missão da Qualidade (ESI)
2002 Certificações RUP, PMP
2004 Criação do Pragma em parceira com a Tlantic
2005 Participação em avaliação CMMI nível 2 (Tlantic)
Kick off do Projeto Pragma 2005
2008 Reestruturação do Pragma: definição da Linha Ágil
2009 Participação em avaliação CMMI nível 3 de cliente
Projeto Pragma 2.0 CMMI-L2 (Internacionaliza-RS)
SCAMPI A (encerrado em 28/agosto)
Agilidade e Disciplina 2009 @ DBServer
Eficiência e Eficácia no
Pragma 2005
Tínhamos um processo CMMI L2, mas...
O processo ficou pesado
Elevado custo do gerenciamento do
projeto sem equivalente valor percebido
junto ao cliente
Síndrome do gestor desktop
Perda da perspectiva da solução
Cartorialização das especificações
Ameaça à criatividade
Conflito com clientes
em busca do Santo Graal
Gerenciamento engessado de
mudanças
Instabilidade na assertividade das
estimativas
Boa eficiência mas baixa eficácia do
processo
Armadilha: Definir um processo
para atender ao modelo
Agilidade e Disciplina 2009 @ DBServer
Pragma 2.0:
Reposicionamento
Qual nosso real objetivo ?
Metas
Equipe
Superação
Melhoria contínua
Otimização
! inovação
Fornecer produtos ou
serviços que atendam ou
excedam as expectativas de
nosso cliente, e para isto é
preciso garantir MESMO! a
qualidade destes serviços
Aplicar métodos ágeis ?
Utilizar um processo com o selo
CMMI ?
Agilidade e Disciplina 2009 @ DBServer
Agilidade e Disciplina 2009 @ DBServer
Linha RUP
Aspectos interessantes
Fases do RUP
Iniciação, Elaboração, Construção, Transição
Perspectivas de escopo, arquitetura, código e
operação
Ciclo de vida iterativo e incremental
Organização por disciplinas
Gráfico das baleias corcundas
Agilidade e Disciplina 2009 @ DBServer
Linha Fábrica
Interessante para aumento de escala em grandes projetos
Pontos de atenção
Alto custo de Liaison
Dificuldades para o balanceamentos das equipes
Necessidade de gerenciamento e controle intensos
Forte impacto das mudanças
Alto custo e baixa assertividade das técnicas de estimativa, principalmente no trato das mudanças
Agilidade e Disciplina 2009 @ DBServer
Agilidade e Disciplina 2009 @ DBServer
Task Board &
Controle de Mudanças
Agilidade e Disciplina 2009 @ DBServer
Burndown da Fábrica
Agilidade e Disciplina 2009 @ DBServer
Agilidade e Disciplina 2009 @ DBServer
Linha ágil
“Just enough, not too much”
“Hay que disciplinar, pero sin perder la agilidad jamás !”
Agilidade e Disciplina 2009 @ DBServer
Fases da Linha Ágil
Fases de um projeto da linha ágil
Agilidade e Disciplina 2009 @ DBServer
Ciclo de Vida Pragma Ágil
Agilidade e Disciplina 2009 @ DBServer
Estimativa
Planning Poker
Armadilha:
Tratar story points como se fossem
use case points
story points use case points
métrica de tamanho
relativo (do projeto)
métrica de tamanho
absoluto (da
organização)
velocidade:
capacidade de
produção da equipe
para as sprints
(bottom up)
fator de
produtividade:
esforço para o ciclo
de vida completo do
projeto (top down)
Desafio:
Como utilizar story points e
velocidade como base histórica
para novas estimativas
Agilidade e Disciplina 2009 @ DBServer
Projetos de Preço Fixo !
É a nossa realidade...
e se conseguimos fazer isto com
outras abordagens, teremos mais
ganhos ao aplicarmos
uma abordagem que
se propõe a fazer
mais por menos
Agilidade e Disciplina 2009 @ DBServer
Projetos de Preço Fixo !
Detalhar o escopo do produto não é a questão central
NÃO EXISTEM PROJETOS DE ESCOPO FIXO (detalhado)
O que podemos é definir qual é a margem para variação
O importante é o escopo em alto nível (declaração de escopo)
Balanceamento entre previsibilidade & adaptabilidade
É o que determina o tamanho da fase de preparação (pre-game)
Com certeza vamos descobrir requisitos VITAIS que não estavam
estabelecidos originalmente (gerenciamento de expectativas)
Deve existir margem para negociação (gerenciamento do escopo)
Pressuposto: relação de confiança
Gerenciamento de riscos pró-ativo (antecipação)
Agilidade e Disciplina 2009 @ DBServer
Modelo Organizacional Geral
Diretrizes da organização (PMO)
Liberdade de escolha pela equipe
Assessoria do GPS (Grupo de Processos de Software)
Report dos projetos à gerência sênior
Exemplo:
definição do
processo e
ferramentas do
projeto pela
equipe
Agilidade e Disciplina 2009 @ DBServer
Escolha de Ferramentas
Agilidade e Disciplina 2009 @ DBServer
GPS: Grupo de Processos de
Software
Quality Assurance
Processo de melhoria
Apoio organizacional sem intervenção direta na autonomia das equipes do projeto
QA não intrusivo, QA como coaching
QA não pode ser visto como falta de confiança
Expansão do conceito de aderência ao processo: eficácia
Agilidade e Disciplina 2009 @ DBServer
Garantia da Qualidade
PA Atividade Pragma Questão
P4 REQM Elaborar Product Backlog O Product Backlog do Projeto está priorizado?
P5 REQM Aprovar Product Backlog e Estimativas O Product Backlog do Projeto está aprovado?
P6 PP Elaborar Product Backlog O Product Backlog do Projeto está estimado?
P12 PP Elaborar Plano de Projeto O ciclo de vida do projeto foi definido?
P13 PPElaborar Plano de Projeto Os principais marcos do projeto foram definidos? (sprints, entregas,
implantações, homologações, viagens)
P14 PP Elaborar Plano de Projeto Os envolvidos no projeto (cliente e equipe) estão definidos?
P20 PPElaborar Plano de Projeto Todos os membros do time contribuíram para a identificação de riscos, incluindo
analistas, desenvolvedores, analistas de teste, gerência sênior?
P23 PPElaborar Plano de Projeto A forma como mudanças de escopo/prazo serão tratadas ao longo do projeto
está definida e comunicada aos envolvidos?
P26 PPElaborar Plano de Projeto O Plano de Projeto foi compartilhado e aprovado pelo GPS e Gerência Sênior e,
posteriormente, pelo cliente?
P47 CMElaborar Plano de Gerência de
Configuração
O projeto exige a compra de recursos adicionais de hardware ou software? Estes
recursos estão definidos e disponíveis?
P51 PP
Realizar Kick-Off Na apresentação de Kick-Off, foram apresentados o contexto, escopo
(requisitos), esforço (horas), entregáveis, marcos, equipe, eventos de
comunicação, documentos de comunicação, riscos, premissas e restrições do
projeto?
Preparação
Checklist da fase de preparação
Agilidade e Disciplina 2009 @ DBServer
Garantia da Qualidade
PA Atividade Pragma Questão
E02 PMC Realizar Sprint Planning Meeting Foi definida meta do sprint?
E04 PMC Realizar Daily Meeting As daily meetings estão ocorrendo diariamente ?
E05 REQMAtualizar Rastreabilidade As matrizes de rastreabilidade de requisitos do projeto estão sendo
mantidas corretamente?
E08 VAL Homologar Item de Backlog Foram realizados testes de aceitação?
E10 PPAvaliar Impacto de Item de Backlog Mudanças no projeto estão sendo analisadas, negociadas e
balanceadas?
E24 PP Atualizar Plano de Projeto Atualizações ao PP contam com o comprometimento do Time?
E33 PMC Monitorar Projeto Os riscos estão sendo monitorados?
E34 PMCMonitorar Projeto O burndown está sendo atualizado diariamente para acompanhamento
do projeto?
E53
MA
QA
PMC
Realizar Reunião Gerencial A reunião gerencial foi realizada com a presença da Gerência Sênior,
QA e PMO?
E57 PPQA Aplicar Checklist de QA Ocorreu auditoria de QA/CM no sprint anterior ao sprint avaliado?
E61 MAAnalisar Métricas Ocorreu a análise das métricas coletadas no mês anterior ao do sprint
avaliado?
Planejamento, Desenvolvimento e Fechamento do Sprint
Checklist da Sprint
Agilidade e Disciplina 2009 @ DBServer
Melhoria Contínua
Processo de melhoria
GPS: Grupo de Processos de
Software
Agilidade e Disciplina 2009 @ DBServer
Desenvolvimento de Equipes
Forming
Storming
Norming
Performing
Modelo de Tuckman, 1965
O processo deve estar
adaptado ao estágio de
evolução da equipe
Agilidade e Disciplina 2009 @ DBServer
Risk Backlog
Gerenciamento de Riscos
Daily meeting
Task Board
Impedimentos
Restrospective
Impedimentos x Riscos
Agilidade e Disciplina 2009 @ DBServer
Comitês de Especialistas
Forma de viabilizar a disseminação do
conhecimento na organização (além do
projeto)
Reúne-se
regularmente (troca de experiências)
por solicitação (análise de situações)
Fica a critério do time a adoção das práticas
Comitê de Scrum Masters
Agilidade e Disciplina 2009 @ DBServer
O que faz a diferença Ágil
Equipe
Propriedade do projeto
Compromentimento contínuo Confiança x micro-gerenciamento
Auto-organização
Iterações de curta duração com produção de software
Gerenciamento das expectativas
Resposta rápida à mudanças
Lições aprendidas incorporadas rapidamente
Contenção de trabalho não produtivo à iteração
Documentação não-cartorial
Mecanismos de comunicação efetivos
Agilidade e Disciplina 2009 @ DBServer
Dificuldades da Linha Ágil
O gerente sumiu !
Scrum master é gerente de projeto ?
Liderança x Gerência
“Gerentes são necessários mas líderes são essenciais” (Lord Slim)
Percepção de que atividades/artefatos não entregáveis são
inúteis
Exemplo: atualização de planos
Sintomia: “Gurias, mas isto não é ágil...”
Abolição da documentação
Descuido com a aprovação dos requisitos (apenas na review ?)
Foco no mecanismo e não no processo
Pessoas e equipes em diferentes estágios de maturidade
Agilidade e Disciplina 2009 @ DBServer
O que faz a diferença CMMI
Institucionalização da melhoria de processos a nível da organização
Grupo de Melhoria de Processos (GPS)
Disseminação das boas práticas por toda organização
Ágil: melhoria do processo no projeto
CMMI: melhoria do processo na organização
Boas práticas para questões não explicitamente endereçadas pelos
métodos ágeis
Exemplos: envolvimento da gerência sênior, gerenciamento de riscos,
garantia da qualidade, rastreabilidade, gereciamento de baselines,
organização do projeto
Maior visibilidade para a organização
Planos, relatórios gerenciais, coleta e análise de métricas
Abordagem pela conformidade, balanceado com adaptabilidade
Muito Obrigado