1) O documento analisa experiências na terceirização de desenvolvimento de sistemas de informação utilizando práticas ágeis no governo brasileiro.
2) Foram realizadas entrevistas com órgãos públicos que utilizam métodos ágeis e um questionário com 41 projetos, identificando desafios como escopo flexível e mudança de cultura.
3) As conclusões indicam que o sucesso depende da forma de gerenciamento dos contratos e da mudança de cultura das partes, mas existem tendências positivas no governo
1. Experiências na Terceirização de
Desenvolvimento de Sistemas de Informação
Utilizando Práticas Ágeis a partir da Análise
de Casos do Governo Brasileiro
Alexandre Cezar Pratti
Orientador: Fábio Petrillo
Curso de Especialização em Engenharia de Requisitos e
Modelagem de Negócios
3. Motivação
• Contexto:
– PDS-CGU (RUP);
– Terceirização;
– Dificuldades na execução de projetos.
• Proposta inicial;
• Decisão pela análise de experiências do
governo.
Curso de Especialização em Engenharia de Requisitos 3
4. Contratações Públicas
• Descentralização:
– Governança de TI no Brasil (Cepik e
Canabarro, 2010)
• Não garantem maior eficiência da
Administração;
• Detém natureza burocrática;
• Modelo antigo: Todos serviços, uma
empresa.
Curso de Especialização em Engenharia de Software 4
5. Contratações Públicas
• Modelo atual:
– Acórdão TCU 786/2006 (diagnóstico);
– MPOG: IN04/2008 (regulamentação);
• Planejamento, parcelamento, serviço mensurado, alinhamento.
– Ferramentas mais utilizadas:
• APF, OS, Métodos tradicionais (RUP);
– Dificuldades conhecidas:
• TI reduzida nos órgãos, alta rotatividade...
– Lei 10.520/2002 (Pregão) – Serviços comuns.
Curso de Especialização em Engenharia de Software 5
6. Métodos Ágeis
• Manifesto ágil (valores comuns):
– “Indivíduos e interações mais que processos e
ferramentas
– Software em funcionamento mais que documentação
abrangente
– Colaboração com o cliente mais que negociação de
contratos
– Responder a mudanças mais que seguir um plano”
Curso de Especialização em Engenharia de Software 6
7. Métodos Ágeis
• Segundo Fowler (2005):
– “Agile methodologies developed as a
reaction to these methodologies. For many
people the appeal of these agile
methodologies is their reaction to the
bureaucracy of the engineering
methodologies. These new methods attempt
a useful compromise between no process and
too much process, providing just enough
process to gain a reasonable payoff”
Curso de Especialização em Engenharia de Software 7
8. Métodos Ágeis
• XP – Programação Extrema
– Técnicas de eng.: simplicidade, refatoração...
• TDD – Desenv. Orientado a Testes
• Lean – Desenv. Enxuto
– Orientado a valor, empowerment
• Scrum:
– Time-boxes, sprint, release, melhoria e
planejamento contínuos.
Curso de Especialização em Engenharia de Software 8
9. Motivação
• Contratação Pública e Métodos
Tradicionais de desenvolvimento:
– Dificuldades em sua execução;
• Contratação pública + Métodos Ágeis
– Porque não?
– Quais as experiências que temos?
• Tendência do mercado: experiências com
terceirização e métodos ágeis
Curso de Especialização em Engenharia de Software 9
10. Experiências
• Franklin (2008) - Adventures in Agile
Contracting (EUA)
– Experiência em 3 estágios:
• T&M
• T&M, marcos de negócio
• “Tripla restrição”
– Fatores-chave:
• Processo alteração contratual que garanta
mudanças rápidas
• Participação ampla na elaboração do contrato
Curso de Especialização em Engenharia de Software 10
11. Experiências
• Obukhova (2010) - Fixed Price Agile
Projects. How it works (Ucrânia)
– Modelo próprio: orçamento e tempo fixo (4
Passos);
– “Fazer apenas o que é necessário”;
– Fatores-chave:
• Entrega como produto;
• Definição de “pronto”;
• Tempo de feedback acordado;
• Histórias claras.
Curso de Especialização em Engenharia de Software 11
12. Experiências
• Banerjee et al. (2011) - Experience of
Executing Fixed Price Off-shored Agile
Project (India)
– Fase de gerenciamento de projeto x ágil
– Fatores-chave:
• Cliente e executor acreditarem no trabalho ágil.
• Mudança de cultura
Curso de Especialização em Engenharia de Software 12
13. Experiências
• Silva et al. (2012) - Adaptação na prática
de um setor público às metodologias ágeis
– Simulação de contratação ANCINE – PUC-RJ
– Desafios:
• Escopo flexível e qualificação do valor de negócio.
– Fatores-chave:
• Mudança de cultura;
• Envolvimento do cliente;
• Desentranhar o waterfall;
Curso de Especialização em Engenharia de Software 13
14. Pesquisa
• Metodologia:
– Levantamento em comunidades (SISP e
TiControle);
– Entrevista em órgãos voluntariados;
– Análise de termos de referência e modelos de
desenvolvimento de software;
– Questionário Online.
Curso de Especialização em Engenharia de Software 14
16. BACEN
• Trabalha com ágil a mais tempo (+3)
• Iniciou com equipes terceirizadas ainda no
modelo antigo
• Experiência com desenvolvimento remoto
• Novo modelo recentemente licitado:
– Critérios do gestor do projeto:
• OS por sprint ou release;
• Acordo de nível de serviço flexíveis.
• Ambiente técnico do órgão
Curso de Especialização em Engenharia de Software 16
17. ANCINE
• Sem experiência interna
• Equipe Remota
• Problemas de Integração
• Melhorava a medida em que a
metodologia era entendida
• Entregas rápidas
• Viabilizando uma nova contratação
Curso de Especialização em Engenharia de Software 17
18. INEP
• Contrato previa desenvolvimento
tradicional ou ágil
• O processo de desenvolvimento ágil foi
descrito para o contrato
• OS representavam Sprints
– Estimava-se antes da abertura e ao final
• Não havia testes automatizados
• Parte foi executado com a visão ágil
Curso de Especialização em Engenharia de Software 18
19. STF
• Baseado no Scrum
– Regras no contrato
– Produtividade por Sprint
• Suporte ao gestor do projeto
• Métricas bem definidas
• Ferramentas
• Licitação em breve
Curso de Especialização em Engenharia de Software 19
20. Questionário
•10 Órgãos - 41 projetos contratados executados
com métodos ágeis
• Contexto: Métodos Ágeis e Contratações Públicas
Utiliza Métodos Ágeis Internamente?
10%
Não
10%
Sim, a pouco tempo (menos de
50% 1 ano)
Sim, a algum tempo (menos de
30% 3 anos)
Curso de Especialização em Engenharia de Software 20
21. Quais metodologias ágeis foram
utilizadas na execução do contrato?
4
7
Programação Extrema - XP
0 Scrum
Crystal
Desenvolvimento Orientado a Testes - TDD
3
Desenvolvimento Enxuto - Lean
Other
0
2
0 1 2 3 4 5 6 7
Curso de Especialização em Engenharia de Software 21
22. Na execução de contratos públicos com métodos
ágeis, é possível prever com precisão, nos momentos
iniciais do projeto, seu escopo?
4 4
1 - Não, de maneira
3 nenhuma
2
2 2 2 3
2
4
1 5 - Sim, com certeza
0
0
Curso de Especialização em Engenharia de Software 22
23. O quanto alta qualidade constante interfere na
aplicação de métodos ágeis de desenvolvimento
com empresas terceirizadas?
0
1
inviabiliza
prejudica muito
prejudica pouco
4 não prejudica
5
0 1 2 3 4 5
Curso de Especialização em Engenharia de Software 23
24. Como seriam organizadas as Qual melhor maneira de
ordens de serviço? medir o esforço de
desenvolvimento?
10%
10% 0%
por "sprint"
10%
20% Pontos por função
por entrega (release)
Homens-hora
50% Pontos de história
por periodo
Other
(semanalmente,
quinzenalmente,...)
Other 70%
30%
Curso de Especialização em Engenharia de Software 24
25. Do ponto de vista da organização, qual o nível de
dificuldade na gestão de um contrato de desenvolvimento
de sistemas com a utilização de metodologias ágeis?
4 4
3
3
1- muito difícil
2
2
2 3
4
5 - muito fácil
1
1
0
0
Curso de Especialização em Engenharia de Software 25
26. A organização pretende executar novos contratos
de desenvolvimento de sistemas utilizando
metodologias ágeis?
0%
40%
Não
Não sei
Sim
60%
Curso de Especialização em Engenharia de Software 26
27. Opiniões
“Estabelecer um processo de desenvolvimento
que instrumente o contrato. Em cada projeto,
estabelecer acordos de nível de serviço claros e
parâmetros de qualidade para o produto,
observando o processo de desenvolvimento da
instituição contratante. O contratante deve
monitorar e gerenciar continuamente os projetos
contratados, de modo a antever possíveis
problemas.”
Curso de Especialização em Engenharia de Software 27
28. Opiniões
“Iterações curtas (2-4 semanas). Product Owner
compartilhado pela TI e pelo usuario final frente a
empresa terceirizada. Educação inicial e constante
do usuário frente ao backlog - avaliações de
cenários e custo-beneficio das decisões de
repriorização e mudança. Dashboard e software
visível para avaliação e monitoramento do projeto.
Desenvolvimento por produto especifco e não por
"saco" de PF para ser utilizado em qualquer coisa.
SLAs medidos mais por criterios de entrega de
SWEspecialização em Engenharia de Software
Curso de
e menos por documentação” 28
29. Conclusão
• Real tendência;
– Outros exemplos no governo.
• Estado Atual
– Não há solução exata;
– Órgãos em experimentação (inovação).
– Sucesso pode estar relacionado a forma de
gerenciamento de contratos
Curso de Especialização em Engenharia de Software 29
30. Conclusão
• Dificuldades comuns:
– Desconhecer a metodologia a ser empregada
(cultura do contratado e do contratante);
– Problema da contagem em PF: não é
orientada a valor para o negócio ou ROI
• As dificuldades se confudem com as de
um paradigma tradicional de terceirização
Curso de Especialização em Engenharia de Software 30
31. Conclusão
• CGU (recomendação)
– Experiências próprias de práticas ágeis em
desenvolvimentos internos;
– Evolução do controle da qualidade em
projetos contratados.
• Ponto-chave:
– Mudança de cultura da empresa contratada e
do órgão.
Curso de Especialização em Engenharia de Software 31
32. Trabalhos Futuros
• Melhorar o questionário e número de
respondentes;
• Entrevistas semi-estruturadas;
• Envolver melhor o governo em eventos
ágeis;
• Aumentar o número de experiências
documentadas no governo;
• Criação de uma orientação ou modelo.
Curso de Especialização em Engenharia de Software 32