Este documento apresenta uma proposta de pesquisa para mapear práticas ágeis utilizadas em startups de software brasileiras. O estudo irá identificar as práticas mais comuns através de um questionário e analisar sua aplicabilidade considerando restrições de recursos. Os resultados poderão fornecer um ponto de partida para adoção de práticas ágeis em startups.
Análise de aderência de práticas ágeis na cultura de startups de software: o mapeamento de práticas através do SEMAT Kernel
1. Escola Politécnica da Universidade de São Paulo
Candidato: Marvin Ferreira da Silva
Orientador: Prof. Dr. Edison Spina
Análise de aderência de práticas ágeis na
cultura de startups de software:
o mapeamento de práticas através do
SEMAT Kernel
2. Introdução e Motivação
• Surgimento de pequenas empresas de alta tecnologia
com restrições de recursos e extrema incerteza;
• Apesar de suas restrições, possuem grande impacto
econômico;
• Nicho não considerado pelas atuais práticas da
engenharia de software;
• Aprendizado pode ser aplicado em outros tipos de
organizações;
(FAYAD, ET AL., 2000) (SUTTON, 2000) (GIARDINO; ET AL, 2014)
2
3. Problema de Pesquisa
Qual grau de aderência da utilização de
práticas ágeis, independentes de seus
métodos, aplicadas ao ambiente de
empresas startups de software?
3
4. Objetivos de Pesquisa
Objetivos gerais:
• Identificar quais práticas contidas nos métodos ágeis
são mais utilizadas em empresas startup;
4
Objetivos específicos:
• Mapear a cobertura destas práticas;
• Analisar aplicabilidade em ambientes com restrições
reais;
• Propor um ponto de partida para ágil em startup;
6. Contextualização
• Apenas nos Estados Unidos, 476 mil empresas criadas
por mês (EUA);
• Voltadas para inovação tecnológica;
• Pequenas e médias empresas geradoras de posto de trabalho;
6
7. Contextualização
(SUTTON, 2000) (YAU; MURPHY, 2013) (FAIRLIE, 2013) (FAIRLIE, 2014) (GIARDINO; ET AL, 2014)
• Problemas diferentes das demais empresas;
• Processo x sobrevivência;
• Falta de estudos específicos;
• É uma tendência;
7
8. Antecedentes - Startup
“Uma pequena companhia explorando novas oportunidades de
negócios, trabalhando para resolver problemas onde a solução
não é bem conhecida e o mercado é altamente volátil.”
(GIARDINO; ET AL, 2014)
8
Características:
- Jovens e imaturas
- Recursos limitados
- Influências múltiplas
- Tecnologias e mercados dinâmicos
(SUTTON, 2000)
9. Antecedentes – Desenvolvimento ágil
9
- Processos burocráticos
- Manifesto ágil (2001)
• Indivíduos e interação entre eles 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
10. Antecedentes – Desenvolvimento ágil
“A capacidade de criar e responder a mudanças a fim de lucrar
em um ambiente de negócios turbulento”
(HIGHSMITH, 2002)
“A habilidade de uma organização de reagir a mudança em seu
ambiente mais rapidamente que a taxa de mudanças.”
(KRUTCHEN, 2010)
10
11. Antecedentes – Desenvolvimento ágil
Distribuição da adoção de processos ágeis ao longo dos anos
Fonte: VersionOne, 2007-2014
11
13. Antecedentes – SEMAT
Software Engineering Method and Theory
• Criado em 2009 por Ivar Jacobson, Richard Soley
e Bertrand Meyer
• Motivações:
• Grande diversidade de métodos existentes que em
essência pouco diferem;
• Área tomada por modismos;
• Falta de uma base teórica sólida e aceita;
• Falta de avaliação e validação experimental de
credibilidade;
13
16. Solução Proposta
• Identificar os 4 métodos ágeis mais utilizados e isolar suas
práticas
• Mapeá-las a quais domínios do SEMAT estão relacionadas e
seus respectivos alphas
• Desenvolver um questionário capaz avaliar a utilização de
cada prática em ambientes reais
• Classificar os dados por faixa de utilização
• Identificar a existência ou não de um conjunto mínimo
16
17. Solução Proposta
Diferença dos demais trabalhos/Estudos já existentes:
• Focado em práticas, não em métodos;
• Utilização de um meta-modelo agnóstico a processos de
software;
• Estudo direcionado a um nicho específico e pouco explorado;
• Análise de aderência, não de eficácia;
17
20. Solução Proposta
Critérios para práticas serem elegíveis ao ambiente de uma
startup:
• Consumo de recursos, financeiros ou não;
• Excesso de burocracia, ainda que sejam práticas ágeis;
• Melhora na comunicação entre os envolvidos;
Dentro de 58 possíveis, foram eleitas 34 práticas.
20
21. Estudo de Caso - Introdução
- Questionário baseado em escalas Likert
- Divulgação: e-mail para incubadoras, grupos de discussão
sobre startups, blogs sobre empreendedorismo e redes sociais
- Os respondentes se basearam em experiências presentes ou
passadas em um ambiente de startup
- Um total de 28 respondentes, com 27 aceitando participar
do estudo
21
22. Estudo de Caso - Método
• 34 práticas selecionadas reduzidas a um conjunto de 26 em
um agrupamento por similaridade;
• Questionário dividido em 6 seções;
• Foi desenvolvido um total de 32 questões baseadas em
afirmações diretas
– 26 capazes de medir a atitude do respondente em alta ou baixa
concordância
– 6 para confirmação ou antítese
22
23. Estudo de Caso – Análise dos Resultados
Quanto aos respondentes
- Idade 𝑋 = 27 anos, 𝜎 = 5 anos
Experiência:
Colaboradores presentes na startup:
- 59,3% para até 9 pessoas e 37% para empresa de 10 a 49
pessoas
23
24. 24
Estudo de Caso – Análise dos Resultados
1 2 3 4 5
Pouco utilizadas UtilizadasNeutro
Escala
Likert
- Pouco utilizada <= 40%
- Medianamente utilizada > 40% e <= 50%
- Utilizada se sua > 50% e <= 60%
- Muito utilizada > 60%
Critérios de classificação:
25. Estudo de Caso – Análise dos Resultados
Agrupamento primário das
respostas obtidas, incluindo
a análise contracenada com
suas respectivas antíteses
e perguntas de reforço.
Práticas
Não utilização
(%)
Neutro
(%)
Utilização
(%)
Seleção Voluntária de Tarefas 25,9 29,6 44,4
Integração Contínua 25,9 25,9 48,1
Implantação Contínua 33,3 14,8 51,9
Histórias de Usuário 37 18,5 44,4
Propriedade Coletiva 14,8 22,2 63
Design Simples 29,6 33,3 37
Refatoração 11,1 22,2 66,7
Testes - Código 33,3 18,5 48,1
Testes - Aplicação 34,6 19,2 46,2
Padrões de Codificação 18,5 22,2 59,3
Visão do fluxo de trabalho e
riscos/Kanban Board 18,5 18,5 63
Limitação do trabalho em
progresso 33,3 18,5 48,1
Tornar o processo explícito 18,5 11,1 70,4
Implementar ciclos de
feedback 25 17,3 57,7
Aumentar colaborativamente
e evoluir experimentalmente 11,5 30,8 57,7
Desenvolvimento Iterativo,
Incremental e timeboxed 15,4 19,2 65,4
25
27. Estudo de Caso – Análise dos Resultados
Explorar Possibilidades
Compreender as Necessidades dos
Stakeholders
Garantir a Satisfação dos
Stakeholders
Utilizar o Sistema
Histórias de Usuário Histórias de Usuário
Implantação Contínua
Testes (Código e Aplicação)
Desenvolvimento
Incremental e Iterativo
Desenvolvimento Incremental e
Iterativo
Desenvolvimento
Incremental e Iterativo
Timebox Timebox Timebox
Backlog Backlog
Tratamento de Backlog Tratamento de Backlog
Realimentação de
Informação
Realimentação de Informação
Opções de Decisão
Decidir no Último Momento
Integridade Conceitual
Espaços de Atividades do Domínio: Cliente
Aplicação de código de cores à distribuição de práticas mapeadas
27
Explorar Possibilidades
Compreender as Necessidades dos
Stakeholders
Garantir a Satisfação dos
Stakeholders
Utilizar o Sistema
Histórias de Usuário Histórias de Usuário
Implantação Contínua
Testes
Desenvolvimento Incremental
e Iterativo
Desenvolvimento Incremental
e Iterativo
Desenvolvimento
Incremental e Iterativo
Timebox Timebox Timebox
Backlog Backlog
Tratamento de Backlog Tratamento de Backlog
Realimentação de Informação Realimentação de Informação
Opções de Decisão
Decidir no Último Momento
Integridade Conceitual
Espaços de Atividades do Domínio: Cliente
28. Compreensão dos Requisitos Modelar o Sistema Implementar o Sistema Testar o Sistema Implantar o Sistema Operar o Sistema
Integração Contínua Integração Contínua Integração Contínua
Histórias de Usuário Histórias de Usuário
Propriedade Coletiva Propriedade Coletiva
Implantação Contínua
Design Simples Design Simples
Refatoração Refatoração
Testes (Código e
Aplicação)
Padrões de Código
Desenvolvimento Incremental e
Iterativo
Desenvolvimento
Incremental e Iterativo
Desenvolvimento
Incremental e Iterativo
Desenvolvimento
Incremental e
Iterativo
Timebox Timebox Timebox
Backlog
Tratamento de Backlog
Realimentação de Info Realimentação de Info
Desenvolvimento em Conjunto
Desenvolvimento em
Conjunto
Desenvolvimento em
Conjunto
Opções de Decisão Opções de Decisão Opções de Decisão
Decidir no Último Momento
Decidir no Último
Momento
Integridade Conceitual e
Percebida
Integridade Conceitual e
Percebida
Limitar o Trabalho em
Progresso
Espaços de Atividades do Domínio: Solução
Estudo de Caso – Análise dos Resultados
28
Compreensão dos Requisitos Modelar o Sistema Implementar o Sistema Testar o Sistema Implantar o Sistema Operar o Sistema
Integração Contínua Integração Contínua Integração Contínua
Histórias de Usuário Histórias de Usuário
Propriedade Coletiva Propriedade Coletiva
Implantação Contínua
Design Simples Design Simples
Refatoração Refatoração
Testes
Padrões de Código
Desenvolvimento Incremental e
Iterativo
Desenvolvimento
Incremental e Iterativo
Desenvolvimento
Incremental e Iterativo
Desenvolvimento
Incremental e Iterativo
Timebox Timebox Timebox
Backlog
Tratamento de Backlog
Realimentação de Info Realimentação de Info
Desenvolvimento em Conjunto
Desenvolvimento em
Conjunto
Desenvolvimento em
Conjunto
Opções de Decisão Opções de Decisão Opções de Decisão
Decidir no Último Momento
Decidir no Último
Momento
Integridade Conceitual e
Percebida
Integridade Conceitual e
Percebida
Limitar o Trabalho em
Progresso
Espaços de Atividades do Domínio: Solução
29. Preparar-se para fazer o
trabalho
Coordenar atividades Apoiar a Equipe Identificar o Progresso Parar o Trabalho
Seleção Voluntária de Tarefas
Histórias de Usuário Histórias de Usuário
Propriedade Coletiva
Testes (Código e Aplicação)
Visão de Fluxo de Trabalho Visão de Fluxo de Trabalho Visão de Fluxo de Trabalho
Limitação do Trabalho em
Progresso
Limitação do Trabalho em
Progresso
Tornar o Processo Explícito
Implementar Ciclos de Feedback
Aumentar Colaborativamente,
Evoluir Experimentalmente
Aumentar Colaborativamente,
Evoluir Experimentalmente
Aumentar Colaborativamente,
Evoluir Experimentalmente
Desenvolvimento Incremental e
Iterativo
Desenvolvimento Incremental e
Iterativo
Desenvolvimento Incremental e
Iterativo
Timebox Timebox Timebox
Reunião Diária + 3 perguntas Reunião Diária + 3 perguntas Reunião Diária + 3 perguntas
Taskboard + Kanban Taskboard + Kanban Taskboard + Kanban
Estimativa Relativa Estimativa Relativa Estimativa Relativa
Planning Poker Planning Poker
Backlog Backlog Backlog
Estimular o Sistema Estimular o Sistema
Motivação
Espaços de Atividades do Domínio: Empreitada
Estudo de Caso – Análise dos Resultados
29
Preparar-se para fazer o
trabalho
Coordenar atividades Apoiar a Equipe Identificar o Progresso Parar o Trabalho
Seleção Voluntária de Tarefas
Histórias de Usuário Histórias de Usuário
Propriedade Coletiva
Testes
Visão de Fluxo de Trabalho Visão de Fluxo de Trabalho Visão de Fluxo de Trabalho
Limitação do Trabalho em
Progresso
Limitação do Trabalho em
Progresso
Tornar o Processo Explícito
Implementar Ciclos de Feedback
Aumentar Colaborativamente,
Evoluir Experimentalmente
Aumentar Colaborativamente,
Evoluir Experimentalmente
Aumentar Colaborativamente,
Evoluir Experimentalmente
Desenvolvimento Incremental e
Iterativo
Desenvolvimento Incremental e
Iterativo
Desenvolvimento Incremental e
Iterativo
Timebox Timebox Timebox
Reunião Diária + 3 perguntas Reunião Diária + 3 perguntas Reunião Diária + 3 perguntas
Taskboard + Kanban Taskboard + Kanban Taskboard + Kanban
Estimativa Relativa Estimativa Relativa Estimativa Relativa
Planning Poker Planning Poker
Backlog Backlog Backlog
Estimular o Sistema Estimular o Sistema
Motivação
Espaços de Atividades do Domínio: Empreitada
30. Conclusão
• Não há homogeneidade de práticas para que se sobressaia
algum método no ambiente de uma startup;
• Práticas voltadas ao aspecto humano são de maior utilização
em contrapartida a práticas de foco técnico;
• Há um Conjunto Mínimo de Práticas que cobre toda a
essência;
• A heterogeneidade de práticas confirma a hipótese de que
práticas são melhores que métodos;
30
31. Conclusão
Este estudo confirmou a hipótese de que o melhor método ágil
para uma startup é um método composto (YAU; MURPHY, 2013).
31
Práticas que envolvam maior consumo de recursos possuem
baixa utilização devido ao alto custo envolvido
(GIARDINO, 2014).
O Conjunto Mínimo de Práticas serve de ponto de partida
para a inicialização de um processo ágil neste tipo de
ambiente.
32. Conclusão - Contribuições
Principais contribuições desta pesquisa:
32
• Mapeamento das práticas ágeis identificadas no
SEMAT Kernel;
• Análise da aderência de práticas ao ambiente de
startups;
• Classificação das práticas ágeis mais utilizadas;
• Identificação de um Conjunto Mínimo de Práticas
ágeis com alta aderência ao ambiente de startups;
33. Conclusão - Limitações
• Limitação geográfica, cultural e de perfil dos respondentes;
• Apesar da obtenção de uma amostra considerável o
engajamento do ecossistema de startups ainda é pequeno
com a academia;
• Outras formas de análise dos dados obtidos podem melhorar
a acuracidade deste trabalho;
33
As limitações desta pesquisa são:
34. Conclusão – Trabalhos Futuros
• Validação da utilização do Conjunto Mínimo em um ambiente
real;
• Escrita do Conjunto Mínimo na linguagem de descrição de
métodos SEMAT para benchmarking;
• Analisar os dados obtidos sob outra ótica:
– Uma análise por grafo permitirá a utilização do ferramental
matemático sobre as redes formadas por estas práticas;
– Análise de relações de utilização forte ou fraca entre práticas;
34
35. Escola Politécnica da Universidade de São Paulo
Candidato: Marvin Ferreira da Silva
Orientador: Prof. Dr. Edison Spina
Análise de aderência de práticas ágeis na
cultura de startups de software:
o mapeamento de práticas através do
SEMAT Kernel
Notas do Editor
1
Ainda não se sabe o impacto da ausência de práticas da engenharia de software neste tipo de empresa;
Alguns dos problemas eficientemente resolvidos pelos métodos ágeis podem nem existir em startups de tecnologia;
Apesar disso a filosofia ágil é a que melhor se encaixa no contexto real destas empresas;
O problema de pesquisa que me propus a investigar foi...
Este trabalho tem como seu objeto de estudo empresas startups de software
(sabendo de antemão que o agile é o ideal e práticas são melhores que métodos)
Hipótese: As práticas mais aderentes são as menos burocráticas e que prezam por maior interação entre as pessoas.
Analisar os principais métodos ágeis quanto à aplicabilidade de suas práticas em um ambiente com as restrições de uma empresa startup;
Mapear as práticas mais aplicadas de forma que atendam minimamente as nuances de uma empreitada de desenvolvimento de software;
Analisar a aplicabilidade das práticas elencadas em cenários reais de desenvolvimento através de um questionário;
Propor uma forma de utilizar estas práticas de acordo com os resultados obtidos através deste estudo;
Sendo assim, meu trabalho ficou dividido da seguinte forma...
A relevância do tema se da pelo seguinte contexto..
O Brasil vem seguindo esta tendência com relação as pequenas empresas de base tecnológica e o mercado de startups vem crescendo continuamente;
Apenas nos Estados Unidos, 476.000 novas empresas são criadas a cada mês;
Correspondendo a 20% da criação de novos postos de trabalho.
Nem tudo o que se aplica a empresas com negócio bem definido ou com sua base formada é possível aplicar em startups;
Processo é importante para uma startup fazer parcerias, ter seu negócio definido e alinhado e um time que possibilite mitigação de certos riscos;
Área carece de estudos específicos relacionados ao tema;
- Apesar de uma startup poder ter o mesmo número de colaboradores de uma pequena empresa comum, elas são distintas em suas características.
- Empresas comuns surgem pelo aumento de demanda em um mercado já existente ou para concorrer com outras empresas por uma parte do mercado.
Startups procuram um negócio escalável, que envolve alto risco, pouco ou nenhum conhecimento de um mercado normalmente não explorado por propostas altamente inovadoras.
Micro/Pequena empresa tradicional, seu risco pode ser avaliado analisando outras empresas presentes no mercado, sendo possível realizar um estudo de viabilidade do empreendimento e principalmente buscar know-how com empresas já situadas no mercado.
No caso de uma empresa que não se trata de uma startup, seu risco pode ser avaliado analisando outras empresas presentes no mercado, sendo possível realizar um estudo de viabilidade do empreendimento e principalmente buscar know how com empresas já situadas no mercado ou apoio de instituições como o SEBRAE para a criação da empresa.
O movimento ágil marcou o rompimento com os processos pesados de engenharia de software;
O manifesto ágil é composto por 4 ideias/valores que norteiam a filosofia ágil;
Junto a estes 4 valores são apresentados 12 princípios:(1) Nossa maior prioridade é satisfazer o cliente através da entrega contínua e adiantada de software com valor agregado;
(2) Mudanças nos requisitos são benvindas, mesmo tardiamente no desenvolvimento. Processos ágeis tiram vantagem das mudanças visando vantagem competitiva para o cliente;
(3) Entregar software funcionando com frequência, na escala de semanas até meses, com preferência aos períodos mais curtos;
(4) Pessoas de negócio e desenvolvedores devem trabalhar diariamente em conjunto por todo o projeto;
(5) Construa projetos em torno de indivíduos motivados. Dê a eles o ambiente e o suporte necessário e confie neles para fazer o trabalho;
(6) O método mais eficiente e eficaz de transmitir informações para e entre uma equipe de desenvolvimento é através de conversa face a face;
(7) Software funcionando é a medida primária de progresso;
(8) Os processos ágeis promovem desenvolvimento sustentável. Os patrocinadores, desenvolvedores e usuários devem ser capazes de manter um ritmo constante indefinidamente;
(9) Contínua atenção à excelência técnica e bom design aumenta a agilidade;
(10) Simplicidade - a arte de maximizar a quantidade de trabalho não realizado – é essencial;
(11) As melhores arquiteturas, requisitos e designs emergem de equipes auto organizáveis;
(12) Em intervalos regulares, a equipe reflete sobre como se tornar mais eficaz e então refina e ajusta seu comportamento de acordo.
Estas duas definições vão de encontro ao que deve ser vivenciado em um ambiente de negócios dinâmicos como o das startups;
Os métodos ágeis são reconhecidos como a forma de trabalho indicada para desenvolvimentos inovadores;
Segundo dados de uma pesquisa realizada pela VersionOne (2014), referentes ao levantamento feito no ano de 2013 com 3501 participantes de diferentes empresas, foi constatado que 88% dos participantes afirmaram que suas empresas utilizam processos de desenvolvimento ágil, mostrando um aumento sobre o resultado da mesma pesquisa realizada em 2012 (84%) e daquela de 2011 (com 80%).
Segundo dados relacionados ao levantamento feito em 2013 o método ágil mais utilizado é o Scrum
Levando em consideração que Kanban possui 5% e Scrumban 7%, o Kanban pode ser considerado de alta utilização
De forma isolada temos: Scrum, XP, Kanban e Lean que foram os métodos utilizados para o escopo desta pesquisa;
Explicar estes 4 métodos brevemente;
Esse kernel pode ser utilizado tanto para o estudo de práticas existentes (composição/comparação) quanto para o desenvolvimento de novas
A iniciativa semat propõe a seguinte arquitetura, onde existe
um kernel ESSENCE de elementos que são indispensáveis
práticas que são descritas utilizando esse kernel
um conjunto dessas práticas se torna um método.
Para as definições dessa estrutura foi proposta uma linguagem
Método: uma composição de práticas dinâmicas e usadas para dar suporte as atividades diárias dos desenvolvedores;
Prática: abordagem repetível de se fazer algo com um propósito específico em mente, uma prática proporciona uma forma sistemática e verificável de se alcançar algum objetivo específico do trabalho;
Kernel: incluí os elementos essenciais da engenharia de software; e
Linguagem: vocabulário de um domínio específico para definir métodos, práticas e os elementos essenciais do kernel.
O kernel do SEMAT está organizado em ALPHAS.
São 7 alphas no total.
Oportunidade
Stakeholders
Requisitos
Sistema de software
Trabalho
Equipe
Forma de trabalho
Existem práticas que são similares entre os métodos e inclusive práticas que se complementam...- Identificar os 4 métodos ágeis mais utilizados
- Isolar as práticas de seus métodos
- Mapeá-las a quais domínios do SEMAT estão relacionadas
- Mapeá-las entre os alphas de cada um dos respectivos domínios a qual está ligada
- Agrupá-las caso haja similaridade
- Desenvolver um questionário capaz avaliar a utilização de cada prática em um ambiente real de uma startup
- Analisar os dados obtidos de modo que seja possível separá-los por faixa de utilização e agrupamentos relevantes
- Identificar a existência ou não de um conjunto mínimo de práticas altamente utilizadas capazes de serem aplicadas a este ambiente
Práticas > Métodos
Meta-modelo melhor, pois não possui prescrição
Exploração de um nicho negligenciado
Busca pela utilização e não eficácia de prática especificamente, aindaque seja possível justificar sua aderência apenas pelos efeitos gerados por cada prática;
Não busca por um novo método, mas a busca por um norte inicial para este tipo de empresa;
Este trabalhou identificou um total de 58 práticas contidas nos 4 métodos mais utilizados
Estas são algumas das práticas apresentadas ágeis mapeadas pela Agile Alliance (2015)
Podemos ver que há uma interseção, como citado pelo SEMAT, há muitas semelhançasentre os métodos existes, sendo muitas vezes difícil dizer com exatidão o que está sendo usado
Foram consideradas como práticas as 22 ferramentas contidas no método Lean
Os domínios do Kernel possuem duas divisões internas relacionadas a sua composição de práticas:
“Coisas com o que trabalhamos”: são os alphas que representam os elementos que sempre estarão presentes em uma empreitada de software e o produto de um trabalho que representa uma evidência gerada pelo progresso de um alpha específico através de um documento físico, relatório ou algo que mostre o indício de seu progresso;
“Coisas a fazer”: abrangem os espaços de atividades, que representam as atividades independentes de métodos que em algum momento serão adicionadas no topo do kernel para atuarem como diretivas para alcançarem os estados dos alphas;
Para que seja possível compreender como práticas de métodos distintos atuam em conjunto é necessário descrevê-las em uma linguagem em comum que possibilite sua composição, sendo esta uma das principais utilidades proporcionadas pela linguagem contida na essência.
Objetivos: Analisar o grau de aderência de cada prática independente de seu método em um ambiente real de startups de software
LIKERT: Medição psicométrica, utilizada para medir grau de concordância/emoção de um respondente relacionada a alguma questão.
Não necessariamente o respondente tem que ser alguém técnico
Aproximadamente 3 semanas de duração a coleta dos dados
Questionário dividido em 6 seções, sendo a primeira com objetivo de descrição da população e as seguintes referentes a avaliação;
- As questões foram embaralhadas para que não houvesse influência de uma prática sobre a outra
Caracteristicas da população...
A idade está dentro do range esperado para o tipo de pessoa que atua neste tipo de empresa;
Quantidade de colaboradoras:
- O total resulta que a quantidade de colaboradores em 96,3% das startups se enquadram na definição de micro/pequena empresa.
Essa escala possui ordem de classificação mas os intervalos não são considerados. A utilização de média para escalas de Likert e testes paramétricos são inapropriadas, pois se tratam de dados ordinais e devem ser tratados a partir de mediana ou moda.
Práticas que foram avaliadas em conjunto de uma questão de antítese ou de reforço, tiveram seu percentual de utilização construído através da média das duas questões.
Todas as 34 práticas selecionadas são contempladas nesta tabela, para que houvesse uma melhor ilustração desse primeiro resultado a tabela não foi colocada completamente devido a seu tamanho
27 respondentes, 32 questões => 864 respostas
Agrupamento sem divisão por faixa de aderência
No trabalho são encontrados todos os gráficos e análises completas que fundamentaram as análises e discussões sobre a utilização de cada prática;
A alta utilização de “Propriedade Coletiva”, com 63% de uso, representa a importância do nível de engajamento do time responsável pelo desenvolvimento do produto dentro de uma startup.
A alta utilização de “Refatoração”, 66,7% representa a busca por um código que se mantenha constantemente coeso, limpo e manutenível
A pouca utilização de “Design Simples”, 37% indica que os times tentam prever a evolução do produto ao projetá-lo produzindo código que não será necessariamente utilizado no exato momento.
A alta utilização de 70,4% indica que “Tornar o Processo Explícito” é uma prática importante para que haja transparência na forma de trabal
As práticas “Opções de decisão” e “Decidir no Último Momento”, com pouca utilização de 37,5%, indicam equilíbrio esperado em um ambiente de uma startup, onde certos riscos são assumidos como apostas para ganho de mercado, muitas vezes sem haver garantia do retorno esperado.
A partir da primeira análise foi possível dividir as práticas por faixa de utilização, como podeser visto na figura acima
As práticas consideradas muito utilizadas em sua maioria são práticas relacionadas ao processo de desenvolvimento e relacionamento humano, não a aspectos técnicos propriamente dito
Para isso as 4 faixar foram divididas por um código de cores:
Amarelo: prática muito utilizada;
Verde: prática utilizada;
Azul: prática medianamente utilizada;
Cinza: prática não utilizada/pouco utilizada;
Domínio Cliente
- O domínio cliente é mais relacionado a práticas que lidam com requisitos, gestão de expectativas dos stakeholders e validação se suas necessidades foram realmente atendidas...
Domínio Solução
- É mais relacionado a práticas de desenvolvimento de software propriamente ditas, de modo que prevalecem práticas também ligadas a tecnologia...
Domínio Empreitada
- Prevalecem práticas ligadas a gestão do time, gestão de entregas, resumindo, ao tratamento dado as atividades dos recursos humanos ligados a produção de software...- Há pelo menos uma prática do conjunto de alta utilização presente em cada um dos “espaços de atividades” dos três domínios.
A utilização de práticas compostas ao invés de métodos confirma que realmente existam aspectos tratados pelos métodos já existentes que não necessariamente devem ser um problema ou existir no ambiente de uma startup;
Apesar de ter sido encontrado um conjunto mínimo de práticas ágeis para a execução de empreitadas em startups, a adição de práticas de outras faixas de utilização pode ser feita de acordo com a sua necessidade para que haja um processo que melhor se ajuste ao ambiente
A descoberta de um conjunto mínimo heterogêneo de alta utilização mostra a importância da seleção de práticas que melhor se adequem as especificidades de um ambiente;
Práticas custosas como “planning poker”, “testes” de um modo geral e “reunião diária” ...
-Classificação das práticas ágeis mais utilizadas sob a ótica do SEMAT Kernel;
-Mapeamento de cada uma das práticas ágeis identificadas nas atividades ligadas a cada um dos três domínios do SEMAT Kernel;
-Verificação através de questionário da faixa de aderência ao ambiente de startups de cada uma das práticas ágeis eleitas independentes de seus métodos;
-Identificação de um conjunto mínimo de práticas ágeis com alta aderência ao ambiente de startups que serve como conjunto de práticas iniciais mínimas para a aplicação de um método ágil composto para as especificidades deste contexto;
Apesar da amostra utilizada neste trabalho ser considerável e permitir a descoberta de um conjunto mínimo de práticas, ela possui limitações com relação a distribuição geográfica e perfil de respondentes. A aplicação do questionário em outros grupos, por exemplo, pode melhorar o escopo desse trabalho.
Outra visão: como por exemplo um grafo, onde seus vértices representam as práticas e o peso de suas arestas indicam a força da utilização de uma prática específica com relação à outra prática;