Retorno do Investimento em Qualidade de Software
Esta palestra discutirá os benefícios da melhoria de processos para a qualidade dos produtos de software e o sucesso das organizações. Nesse contexto, serão apresentados dois modelos de melhoria de processos de software (CMMI-DEV v2.0 e MR-MPS-SW:2020) e um modelo para qualidade de produtos de software (QPS). Por fim será apresentada uma abordagem para orientação dos programas de melhoria às necessidades de cada organização e ao retorno do investimento.
Em Busca de Maior Simplicidade e Confiabilidade no Processo de Integração de Código
O processo de integração de código, realizado com frequência por desenvolvedores, deveria ser mais simples e confiável. Quando integrando contribuições de código, desenvolvedores não deveriam perder tempo resolvendo conflitos de mesclagem (merge) irrelevantes. Eles também não deveriam comprometer a qualidade do sistema integrando contribuições de código que interferem de forma inesperada e causam defeitos dificilmente detectáveis durante atividades de revisão de código e testes. Com o objetivo de entender melhor e resolver esses problemas, foram realizadas várias pesquisas que serão resumidas nesta palestra. Em particular, foram desenvolvidas ferramentas avançadas de mesclagem que oferecem melhor suporte aos desenvolvedores que integram código com frequência. Essas ferramentas exploram a sintaxe e a semântica das linguagens de programação para obter melhor acurácia no processo de integração. A ferramenta de merge semi-estruturado desenvolvida foca em reduzir conflitos irrelevantes comumente reportados por ferramentas como o git merge, enquanto as ferramentas de merge semântico focam em detectar conflitos que normalmente não são detectados pelo git merge e que causam falhas que afetam usuários finais. Serão apresentados os principais resultados obtidos, as lições aprendidas e a história dessa jornada pela redução de frustrações e esforços desnecessários nas atividades de integração de código.
Paulo Borba é Professor Titular de Engenharia de Software do Centro de Informática da Universidade Federal de Pernambuco, onde lidera o Grupo de Produtividade de Software. Ele pesquisa e desenvolve ferramentas e técnicas para melhorar os níveis de qualidade e produtividade em software, especialmente através da redução de frustrações e esforços desnecessários nas atividades realizadas por desenvolvedores de software. Ele busca a mistura entre excelência em pesquisa e relevância industrial. Seus principais interesses de pesquisa são nos seguintes temas e na integração entre eles: conflitos e ferramentas de integração de código, integração e implantação contínuas, modularidade de software, linhas de produtos de software e refatoração. Paulo é Doutor em Computação pela Universidade de Oxford e Mestre e Bacharel em Ciência da Computação pela Universidade Federal de Pernambuco. Ele foi sócio-fundador da Qualiti Software Processes.