SoftCheck, uma plataforma de construção de análises estáticas para a segurança de programas, genérica e composicional - Reis, João Santos (2018)
A implementação de análises estáticas de programas é muitas vezes feita de forma ad-hoc ou especializada para um desígnio particular num contexto programático particular. Como tal, a extensão ou adaptação de análises para outros contextos ou linguagens de programação é um processo moroso. Neste trabalho endereçamos este problema apresentando uma plataforma computacional que permite a expressão de análises estáticas para a segurança de programas arbitrariamente complexas e centrada em análises de fluxos de dados. Tirando proveito de um sistema de módulos expressivo, a plataforma SoftCheck permite a definição e resolução de análises de uma forma abstrata à linguagem fonte do programa, tornando o processo mais simples e as análises mais facilmente extensíveis e reutilizáveis. Retratamos também um caso de estudo sobre o uso da plataforma para a linguagem de programação CAO, uma linguagem dedicada à programação de componentes criptográficas. Neste caso de estudo, mostramos como se obtém um conjunto de análises clássicas de fluxos de dados e uma análise para a segurança, recorrendo simplesmente ao referido mecanismo de instanciação do SoftCheck, demonstrando como as caraterísticas desta permitem instanciar estas ou outras análises com esforço reduzido.