Análise de desperdícios no desenvolvimento de software: um método baseado em Lean e Métodos Estatísticos
Data
2021-06-29
Tipo
Dissertação de mestrado
Título da Revista
ISSN da Revista
Título de Volume
Resumo
Uma maneira de aumentar a produtividade de um time de desenvolvimento de software pode ser executada por meio da remoção de atividades conhecidas como desperdícios, que não agregam valor ao cliente. Esta boa prática foi trazida da Toyota Motors Co para a engenharia de software. Uma possível abordagem seria analisar o fluxo de valor para identificar quais seriam estas atividades. No âmbito dessa pesquisa, por estar relacionada à área de desenvolvimento de software, desperdícios são todos os fatores que impedem o fluxo de entrega de valor ao cliente. Essa pesquisa visa encontrar desperdícios na base de dados de software de gerenciamento de projetos, o que pode tornar a análise dos desperdícios mais simples, uma vez que a informação estaria disponível mais rapidamente aos engenheiros de software. Em consequência, e de forma complementar, o acompanhamento dos itens de trabalho dos times de desenvolvimento seria uma maneira de aprimorar a análise do processo como um todo. Medidas de tendência central e de dispersão, boxplot, estimadores livres de distribuição, correlação de Spearman, teste de Mann-Whitney e análise de tendências foram aplicadas para detectar desperdícios e encontrar sua causa raiz. A aplicação dessas técnicas conduziu ao desenvolvimento de um método e um software capaz de ler tarefas de sistemas de gerenciamento de projetos, como o Trello, e avaliar a capacidade de entrega de valor mensurando a situação do fluxo. A avaliação da situação do fluxo de valor se faz a partir da análise da tendência das entregas e dos desperdícios presentes. A tendência dos desperdícios é consequência das tendências da duração das tarefas e dos defeitos. A aplicação do método na empresa que participou da pesquisa permitiu detectar a presença de tarefas com duração maior que quatro semanas e o registro de mais de um defeito por dia. Foram encontradas causas raiz como, por exemplo, o designer desenvolvendo telas com capricho desnecessário, um desenvolvedor que apresentava problemas pessoais e trocas de prioridade pelo cliente. Essas informações permitiram a atuação da liderança junto aos times de desenvolvimento para promover mudanças, o que resultou em melhorias como diminuição da duração das tarefas mais longas, redução de defeitos e redução da variabilidade da quantidade das entregas por dia.
One way to increase the productivity of a software development team can be performed by removing activities known as waste, which do not add value to the customer. This good practice was brought from Toyota Motors Co to software engineering. A possible approach would be to analyze the value stream to identify what these activities would be. Within the scope of this research, as it is related to the area of software development, waste is all the factors that impede the flow of value delivery to the customer. This research aims to find waste in the project management software database, which can make the analysis of waste simpler, as the information would be available more quickly to software engineers. As a result, and in a complementary way, monitoring the work items of the development teams would be a way to improve the analysis of the process as a whole. Measures of central tendency and dispersion, boxplot, distribution-free estimators, Spearman correlation, Mann-Whitney test and trend analysis were applied to detect waste and find its root cause. The application of these techniques led to the development of a method and software capable of reading tasks from project management systems, such as Trello, and evaluating the value delivery capacity by measuring the flow situation. The evaluation of the value stream situation is made from the analysis of the trend of deliveries and present waste. The trend towards waste is a consequence of trends in the duration of tasks and defects. The application of the method in the company that participated in the research allowed detecting the presence of tasks lasting longer than four weeks and recording more than one defect per day. Root causes were found, such as, for example, the designer developing screens with unnecessary whimsy, a developer who had personal problems and priority changes by the client. This information allowed the leadership to work with the development teams to promote changes, which resulted in improvements such as reducing the duration of longer tasks, reducing defects and reducing the variability of the amount of deliveries per day.
One way to increase the productivity of a software development team can be performed by removing activities known as waste, which do not add value to the customer. This good practice was brought from Toyota Motors Co to software engineering. A possible approach would be to analyze the value stream to identify what these activities would be. Within the scope of this research, as it is related to the area of software development, waste is all the factors that impede the flow of value delivery to the customer. This research aims to find waste in the project management software database, which can make the analysis of waste simpler, as the information would be available more quickly to software engineers. As a result, and in a complementary way, monitoring the work items of the development teams would be a way to improve the analysis of the process as a whole. Measures of central tendency and dispersion, boxplot, distribution-free estimators, Spearman correlation, Mann-Whitney test and trend analysis were applied to detect waste and find its root cause. The application of these techniques led to the development of a method and software capable of reading tasks from project management systems, such as Trello, and evaluating the value delivery capacity by measuring the flow situation. The evaluation of the value stream situation is made from the analysis of the trend of deliveries and present waste. The trend towards waste is a consequence of trends in the duration of tasks and defects. The application of the method in the company that participated in the research allowed detecting the presence of tasks lasting longer than four weeks and recording more than one defect per day. Root causes were found, such as, for example, the designer developing screens with unnecessary whimsy, a developer who had personal problems and priority changes by the client. This information allowed the leadership to work with the development teams to promote changes, which resulted in improvements such as reducing the duration of longer tasks, reducing defects and reducing the variability of the amount of deliveries per day.