Uma Interface Web para apoio à deteção de Concerns em código MATLAB - Relvas, António Capôto (2019)
Linguagens de manipulação de dados e de matrizes são ferramentas essenciais para analisadores de dados. Contudo verifica-se que estas não conferem o suporte à modularidade que seria desejável. Este trabalho apresenta um protótipo web que recorre a modelos produzidos pelo o algoritmo Mapa Auto-Organizado (em Inglês: Self-Organizing Map - SOM) sendo o acrónimo em inglês SOM, para estudar os problemas de modularidade presentes em código MATLAB. Para este efeito, a visualização de dados é fundamental na análise dos mesmos. O SOM usualmente disponibiliza dois tipos de representação: as Component Planes e a UMatrix. Todavia, estas são representações complexas que sem um conhecimento profundo sobre as mesmas, o qual não é trivial de obter, tornam difícil a compreensão dos resultados apresentados. Dessa forma, é necessário estudar soluções que permitam a compreensão fácil dos resultados produzidos pelos SOM. Esta dissertação tem como um dos focos, estudar metáforas visuais de apoio à compreensão dos dados por parte de programadores interessados em linguagens orientadas ao processamento de matrizes. Sendo o outro foco principal a validação do SOM como ferramenta de análise exploratória através das metáforas implementadas. Em particular, 3 vistas foram desenvolvidas para programadores com conhecimento da linguagem MATLAB. Uma base de dados foi concebida para armazenar dados sobre código MATLAB, a serem usados como base para análise e respectiva produção de resultados. É apresentado um sistema de anotações, através do qual os utilizadores especialistas em SOM e em análise de código, anotam código MATLAB e partes de metáforas visuais, de forma a que utilizadores não especialistas conseguem compreender os resultados apresentados com mais facilidade - e dessa maneira tirar o máximo proveito das análises. Um conjunto de funcionalidades foi desenvolvidas à volta deste conceito de forma a potenciar a sua utilidade.