1. Software Kaizen
Método inovador para a formação de
equipes de alto desempenho para o
desenvolvimento de software
Alejandro Olchik Rafael Prikladnicki
@aolchik @rafaelpri
aolchik@ionatec.com.br rafael.prikladnicki@pucrs.br
16. Obstáculos
0 5 10 15 20
0 10 20 30 40 50 60
2011 State of Agile Development Survey
VersionOne. 6042 respostas.
17. Software Kaizen:
germinadora de equipes de
altoACELERADORA ÁGIL
desempenho
germinar
vint 1 Começar a desenvolver-se e a vegetar (sementes,
tubérculos, etc.); abrolhar, grelar, rebentar.
vint 2 Nascer, tomar incremento ou vulto: “E o beijo de
Judas germinou profusamente”
vtd 3 Dar causa a; gerar, originar, produzir: Idéias tolas
germinam tolices.
Moderno Dicionário da Língua Portuguesa
17
18. Estudo de mercado
• 150 entrevistas com empresas de TI no RS/
Brasil
• 56% planejam treinamentos fora da empresa
– Aprendizado (benefício), estrutura (restrição)
• 46% sofrem con a falta de mão de obra
qualificada
• 42% usam um modelo prescritivo
– 41% pela cultura da empresa
– 10% por requerimento do cliente
• 42% usam um modelo adaptativo
– 22% por requerimiento do cliente
– 17% por trazer melhores resultados
18
19. Estudo de mercado
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% com restrições em
afastar a equipe do local
de trabalhoo
19
20. Objetivo de mercado
Capacitação em métodos
ágeis para empresas de
software que estejam
interessadas na evolução
acelerada de seus
profissionais através da
imersão temporária de un
profissional ou de um time
supervisionado por
profissionais qualificados. 20
21. Objetivo acadêmico
Promoção de um ambiente
de experimentação e
inovação na aplicação de
novas metodologias de
desenvolvimento de
software, com pleno apoio
para a realização de
pesquisas na área
21
22. Público-alvo
Empresas que desejam promover e
acelerar a adoção de métodos ágeis
nas suas equipes de desenvolvimento
de software, evitando ou reduzindo os
riscos potenciais e os vícios habituais
dos novos times.
Professores e estudantes que desejam
desenvolver pesquisa aplicada na área
de desenvolvimento de software.
22
23. Enfoque
www.agilemanifesto.org
Lean Outras
Scrum XP
Thinking práticas
23
24. Fórmula a otimizar
Nível de
fluidez
Coaching
Restrições
desafiadoras
+
complexidade
do projeto
Evolução
acelerada 24
25. Fórmula a otimizar
Nível de
fluidez
Não Coaching
viável
Restrições
desafiadoras
+ Frustração /
complexidade
do projeto tédio
Evolução
acelerada 25
31. Capacitação
Intensiva
• Capacitação (12h)
• Guias de auto estudo
• Monitoria em tempo Direcionada
integral • Capacitação(2h)
• DOJOs de programação • Guias de auto
(2x) estudo
• Monitoria em tempo
integral
• DOJOs de
programação (2x)
32. Programa de capacitação
q Scrum
q Planejamento de releases
q Testes unitários
Obrigatório
q Planejamento de sprints
q Agile modeling
q Integração contínua
q Aceptance Test Driven
Development
q Conflitos e alto desempenho
Opcional
q Testes exploratórios
q Continuous delivery 32
39. Conceito de Ready
q Necessário para todas
as histórias
q História INVEST
q Critérios de aceitação
derivados da
especificação
39
40. 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
modificações do modelo de
dados
q Pelo menos uma história com
cenário automatizado
40
46. Cobertura de código
Turma 1 Turma 2
73,420%
/prudhvijoshi.blogspot.com.br/
45%
http:/
Done – done – NOT DONE?
Sprint 1
46
47. Cobertura de código
Turma 1 Turma 2
99,670%
88,370%
81,640% 81,970%
73,420%
45%
Sprint 1 Sprint 2 Sprint 3
47
49. Outros indicadores recolhidos
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 Estado da integracão continua
q % das histórias realizadas em
par
49
50. Outros resultados
q Agile Brazil 2012
q Agiles 2012
q FEES 2012
q Fomento de CNPq
q Extensión Innovadora en TI (2010)
q Qualificación en TI (2011)
50
51. 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
51
52. 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
52
53. Próximos passos
q Realização periódica
q Foco em estudantes universitários
(semestral)
q Foco no mercado (de forma
continuada)
q Integração com pesquisa científica
aplicada
q Pesquisas de doutorado
q Mensuração do impacto
q Feedback gerencial
q Indicador de satisfação do cliente
53
55. Software Kaizen
Método inovador para a formação de
equipes de alto desempenho para o
desenvolvimento de software
Alejandro Olchik Rafael Prikladnicki
@aolchik @rafaelpri
aolchik@ionatec.com.br rafael.prikladnicki@pucrs.br