sofware kaizen - aceleradora Ágil - apresentacao agile brazil 2012
DESCRIPTION
TRANSCRIPT
Software Kaizen Método Inovador para Formação de Equipes de Alto Desempenho para Desenvolvimento de Software
1
Rafael Prikladnicki Alejandro Olchik
2
no Desenvolvimento de Software
Um Novo Paradigma
3
Visão Tradicional
Análise
Design
Codificação
Testes
Tem
po
“Modelo de gestão do início do séc. XX”
Será que temos 50% do produto pronto na metade do tempo?
Visão Ágil Tempo
“Modelo de gestão do final do séc. XX”
Será que essa é uma forma mais inteligente de fazer a mesma coisa? Análise
Design
Codificação
Testes
Um incremento de produto ao final de cada ciclo de produção! 5% pronto = 100% usável
Disciplina
6
O Efeito Ágil
Metodologias Ágeis Ø Scrum
Ø Extreme Programming (XP)
Ø Lean Software Development
Ø Feature Driven Development (FDD)
Ø Crystal Family
Ø Open Unified Process (OpenUP)
Ø DSDM
Ø Adaptive Software Development (ASD)
Ø Agile Unified Process (AUP)
Ø Agile Modeling (AM)
Ø Agile Data Method (ADM)
Ø Essential Unified Process (EssUP)
1. Estreita colaboração entre os programadores e os especialistas do negócio;
2. Comunicação face-à-face (mais eficiente que a comunicação escrita);
3. Entrega freqüente de itens de valor para o negócio;
4. Times pequenos e auto-organizáveis;
5. Novas formas de se construir o código e de se trabalhar com a equipe fazendo com que mudanças em requisitos não se tornem crises.
8
- 150 entrevistas com empresas de TI do RS
- 56% planejam treinamentos fora da empresa
- Aprendizagem (benefício), Estrutura (restrição)
- 46% falta mão de obra qualificada
- Modelo prescritivo
- 41% cultura da empresa
- 10% exigência do cliente
- Modelo adaptativo
- 22% exigência do cliente
- 12% favorece adaptação à mudança
Pesquisa de Mercado
9
Como acelerar a formação de equipes de alto desempenho?
http://www.guardian.co.uk/
http://www.safe-home.net/
13
Acelerando a Equipe Formando Equipes de Alto Desempenho
Aceleradora Ágil
14
- Software Kaizen
- 81,3% modelo interessante
- 78,3% imersão temporária com métodos ágeis é útil
- 33% período ideal é de 4 semanas
- 37,7% restrição de afastar equipe do local de trabalho
Pesquisa de Mercado
15
Promover a adoção de métodos ágeis em equipes de desenvolvimento de software
Formar equipes de alto desempenho
- Treinamento - Mentoring / Coaching - Avaliação e Orientação - Utilização de ferramental estado-da-arte - Promoção de ambiente para a condução de pesquisas
aplicadas na área
Objetivo
16
Objetivos Negócio Mercado: “Capacitação de empresas de software que
estejam interessadas na rápida evolução de seus profissionais, mediante a imersão temporária de um profissional ou equipe em ambiente de alto desempenho supervisionado por profissionais qualificados.“
Academia: “Promoção de um ambiente de
experimentação e inovação na aplicação de novas metodologias de desenvolvimento de software, com apoio irrestrito na condução de pesquisas na área.”
17
¨ Empresas que desejam promover e acelerar a adoção de métodos ágeis em suas equipes de desenvolvimento de software, evitando ou reduzindo possíveis riscos e vícios usuais em novas equipes ágeis.
¨ Professores e alunos que desejam desenvolver pesquisas aplicadas na área de desenvolvimento de software.
Público-alvo
18
¨ Com foco inicial em Scrum, mas evoluindo para os princípios e práticas da XP, Lean e outros aspectos de diferentes metodologias ágeis de acordo com o estágio inicial do time
Princípios ¨ Manifesto Ágil
Passamos a valorizar Mais que
indivíduos e suas interações processos e ferramentas
software que funciona documentação abrangente
a colaboração com o cliente negociação de contratos
responder às mudanças seguir um plano www.agilemanifesto.org
19
¨ Capacitação em métodos ágeis orientada por profissionais qualificados
¨ Imersão da equipe em um ambiente propício e dirigido ao desenvolvimento ágil
¨ Mitigação de aspectos culturais de resistência usual: comando-controle, incertezas, confrontamento vs comprometimento, aversão à riscos, etc.
Benefícios
20
¨ Acompanhamento permanente da equipe ¨ Economia de tempo e investimento na
adoção de novos modelos de gestão e desenvolvimento
¨ A imersão da equipe em um ambiente ágil propicia aos seus membros adquirir um novo “mindset” com maior rapidez e menos vícios
Benefícios
21
Metodologia Inovadora Aceleradora Imersão Temporária Coaching Treinamento
Primeiros Pilotos
¨ 1. Pré-avaliação da equipe ¨ 2. Setup ¨ 3. Capacitação ¨ 4. Iterações de desenvolvimento ¨ 5. Encerramento
Atividades
23
Abordagem Geral q Scrum como framework para
melhoria contínua
q 4 iterações de uma semana q Desenvolver produto
q Desenvolver competência nas dimensões de negócio, governança, técnica e comportamental
24
Papéis ¨ Time de preparação ¨ Coach ¨ Monitor ¨ Alunos ¨ Cliente
25
Dinâmica q Iteração 0: Capacitação, ambiente e MVP
q 16 horas de coaching q Monitoria em tempo integral
q Iteração 1 a 3: Desenvolvimento do produto q 8 horas de coaching q Monitoria em tempo integral q DOJOs semanais
26
Principais pontos do programa q Scrum q Planejamento de release q Testes unitários q Planejamento de iterações q Modelagem ágil q Integração contínua & continuous delivery q Desenvolvimento baseado em testes de aceitação
(ATDD) q Conflitos e altodesempenho q Testes exploratórios q Coach one-on-one Product Owner e Scrum Master
27
Conceito de Ready q Necessário para todas as histórias
q História INVEST
q Critérios de aceite extraídos a partir da especificação
29
Conceito de Pronto3 q Aplicável a 80% das histórias q Critérios de aceitação da história atendidos q História aceita pelo Cliente q História aceita pelo Coach q História livre de defeitos conhecidos q 80% de cobertura de código q Uso de migrações para alterações do modelo
de dados q Pelo menos uma história com cenário
automatizado 30
Resultados
Grau de Agilidade
www.agileassessments.com
Turma 1
Turma 2
32
Incremento de velocidade
33
Cobertura de código
34
Cobertura de código
Done – done – NOT DONE? http://www.safe-home.net/
35
Cobertura de código
36
Outros indicadores coletados q Pontos em histórias inacabadas q LOC q Testes unitários q Testes funcionais q Commits por semana q Duração do build q Status do processo de integração
contínua q % das histórias realizadas em par 38
Outros Resultados q Divulgação na mídia q Agile Brazil 2012 q Agiles 2012 q FEES 2012 q Fomento do CNPq
q Extensão Inovadora em TI (2010) q Qualificação em TI (2011)
39
Próximos passos q Tornar periódico
q Foco em alunos de graduação (semestral) q Foco no mercado (fluxo contínuo)
q Integração com pesquisa científica aplicada q Pesquisa de doutorado
q Feedback dos gestores
q Indicador de satisfação do cliente
40
Ao entrar no curso, não sabia como trabalhar em equipe. Não utilizava nenhum tipo de metodologia. A confiança nos colegas de equipe era nula, e só me importava com os “bugs” que estivessem em trechos codificados por mim. Ao finalizar o curso, descobri que a metodologia Agile facilita muito o decorrer do projeto, aprendi a confiar nos colegas e me importar com o objetivo. Tudo para fazer um projeto melhor. Eduardo da Costa Siqueira
41
O curso foi uma quebra de paradigma, pois estava acostumado a desenvolver sozinho e me preocupar com todos os detalhes. Trabalhando em equipe pude ver que as tarefas podem ganhar uma maior velocidade e qualidade, se forem bem distribuídas e se a comunicação for clara e explícita.. Filipe de Freitas da Silva / Aluno / Centro de Inovação Microsoft
42
[email protected] @rafaelpri [email protected] @aolchik