SW-Context : um modelo para software analytics baseado em sensibilidade ao contexto
Data de defesa
Autor(a)
Orientador(a)
Coorientador(a)
Título do periódico
ISSN
Título do volume
Nome da instituição
Departamento
Programa
Agência de fomento
PROSUP - Programa de Suporte à Pós-Gradução de Instituições de Ensino Particulares
Diariamente, desenvolvedores de software precisam se envolver com atividades de manutenção para adaptar aplicações existentes a novos cenários e necessidades, como por exemplo, novas funcionalidades, correções de defeitos e requerimentos legais. Entretanto, algumas questões organizacionais podem interferir nas atividades dos desenvolvedores impactando na qualidade e manutenabilidade do software produzido. Grande volume de documentação obsoleta, dificuldades na utilização desta documentação, dependências entre módulos de software e especialistas que deixam as empresas levando o conhecimento de determinados módulos e/ou sistemas são fatores determinantes para o sucesso dos projetos. Uma das formas de mitigar o impacto destas questões seria a disponibilização de informações úteis referentes aos módulos ou artefatos de software de forma qualitativa. A disponibilização destas informações propicia um melhor entendimento do desenvolvedor em relação aos aspectos que cercam o software e o seu ambiente. De acordo com a natureza das informações disponibilizadas, os desenvolvedores podem adquirir informações relevantes sobre o softwareem questão. Essa dissertação apresenta o SW-Context, um modelo que permite a combinação de diferentes informações relacionadas a artefatos de software, a fim de aprimorar a consciência situacional dos desenvolvedores nas atividades de desenvolvimento e manutenção. Desta forma, os principais desafios do modelo são: a definição de quais informações devem compor o contexto para software, o armazenamento estruturado destas informações em históricos de contextos e, finalmente, a análise e disponibilização destas informações de contexto, de forma que possam auxiliar a atividade de desenvolvimento e manutenção de software, utilizando o conceito SoftwareAnalytics. Foi implementado um protótipo contendo os principais conceitos do modelo proposto. Este protótipo utilizou as informações contextuais de aplicações reais de uma empresa de desenvolvimento de software e foi avaliado através de um estudo de caso, onde 12 desenvolvedores o utilizaram pelo período de um mês em suas atividades diárias. Ao final deste período, os desenvolvedores responderam um questionário que abordou a utilidade da ferramenta e a facilidade de uso percebida. A avaliação do modelo obteve respostas com percentuais satisfatórios tanto em relação à facilidade de uso percebida quanto à utilidade do sistema. Pode-se avaliar que a consolidação das informações contextuais em um local único e a disponibilização qualitativa das informações correlacionadas, através de dashboard, atingiu o objetivo de melhorar a consciência situacional dos desenvolvedores nas atividades de manutenção.
