Pós-Graduação em Ciência da Computação – UFPE
Defesa de Tese de Doutorado Nº 655
Aluno: Carlos Eduardo Zimmerle de Lima
Orientador: Prof. Kiev Santos da Gama
Título: Unveiling the Usability of Reactive Programming APIs: Findings,
Tools, and Recommendations
Data: 18/12/2024
Hora/Local: 9h – Virtual – Interessados em assistir entrar em contato com o aluno
Banca Examinadora:
Prof. Paulo Henrique Monteiro Borba (UFPE / Centro de Informática)
Prof. Leopoldo Motta Teixeira (UFPE / Centro de Informática)
Prof. Gustavo Henrique Lima Pinto (UFPA / Instituto de Ciências Exatas e Naturais)
Profa. Fernanda Madeiral Delfim (Vrije Universiteit Amsterdam / Department of Computer Science)
Prof. Marco Tulio de Oliveira Valente (UFMG / Departamento de Ciência da Computação)
RESUMO:
A Programação Reativa (RP) tem ganhado força por sua capacidade de simplificar o desenvolvimento de aplicativos assíncronos e orientados a eventos. Apesar de sua crescente popularidade, a usabilidade das Interfaces de Programação de Aplicação (APIs) de RP continua sendo um desafio significativo para os desenvolvedores, com problemas que vão desde curvas de aprendizado acentuadas até práticas de design inconsistentes (por exemplo, número divergente de operadores e interfaces). Esta tese explora a usabilidade de APIs de RP através de uma dupla abordagem: estudos de mineração e avaliações centradas no usuário. A primeira parte do estudo aproveita dados do GitHub e do Stack Overflow para analisar como os desenvolvedores interagem com as APIs de RP, identificando a frequência dos operadores (um problema comum de design) e pontos problemáticos recorrentes. A segunda parte emprega uma abordagem de método misto, combinando métricas estruturais e computadas com estudo qualitativo envolvendo usuários para avaliar a usabilidade da API, empregando uma versão refinada do framework de Dimensões Cognitivas. As métricas são computadas usando uma nova ferramenta, UAX (Usability Analyzer Experience), que incorpora um conjunto de seis métricas também exploradas em outros estudos. A avaliação centrada no usuário examina adicionalmente a compreensibilidade, a capacidade de aprendizado e a eficiência por meio de avaliação baseada em tarefas e feedback do desenvolvedor. Os resultados destacam disparidades significativas no design e na usabilidade da API, oferecendo insights sobre os desafios práticos enfrentados pelos desenvolvedores. A tese culmina em um conjunto de recomendações práticas para designers de API, com o objetivo de melhorar a usabilidade da APIs de RP e alinhá-la com as necessidades dos desenvolvedores. As contribuições incluem uma análise abrangente de usabilidade de APIs de RP, insights empíricos da comunidade de código aberto, a ferramenta UAX, recomendações para desenvolvimento futuro de API e base para futuras pesquisas de usabilidade de RP. Este trabalho fornece uma base para melhorar a experiência do desenvolvedor em RP e contribui para o campo mais amplo da engenharia de software.
Palavras-chave: Programação Reativa. Usabilidade de API. Mineração de Repositórios de Software. Avaliação Centrada no Usuário.
Comentários desativados