FC-DI - Master Thesis (projects)
Permanent URI for this collection
Browse
Recent Submissions
- Painel de higiene cibernética para o CISOPublication . Cristo, João Pacheco; Sá, Alan Oliveira deO "Grupo Altice Portugal", daqui em diante apenas referida como Altice Portugal, possui um grande número de entidades interligadas (MEO, MEO Empresas, Altice Labs, ...) que tornam a coordenação global da cibersegurança uma tarefa difícil para o Chief Information Security Officer (CISO), pois ele deve monitorizar continuamente a ciber-higiene de cada uma, assim como as suas interdependências. Este projeto tem como objetivo dar continuidade ao trabalho realizado pela Altice Portugal e desenvolver um sistema de monitorização diária da ciber-higiene e do risco de ransomware da Altice Portugal e de cada uma de suas entidades constituintes. De modo a chegar a este objetivo, são recolhidos e analisados dados de várias fontes, abrangendo diversos aspetos da segurança e ciber-higiene e são realizados Dashboards constituído por várias worksheets, cada uma delas com o intuito de fornecer diferentes níveis de informações valiosas ao CISO para permitir uma melhor análise e conseguir melhorar a prevenção ativa da empresa. Este relatório fornecerá uma visão geral do trabalho realizado, as tecnologias usadas para atingir o objetivo, algumas funcionalidades que poderão vir a ser desenvolvidas futuramente por forma a tornar esta solução ainda mais útil para a empresa e para o CISO. Também vai mostrar os resultados alcançados onde se confirma a eficácia do sistema desenvolvido, demonstrando que o sistema cumpre o seu papel de análise da ciber-higiene da Altice ao longo do tempo a partir das métricas escolhidas.
- Anonimização automáticaPublication . Santos, Luís Bernardo Crisóstomo e Silva Rodrigues Esteves dos; Mendonça, Vânia Patrícia PadrãoA partilha de informação é uma realidade que traz novos riscos associados como o acesso não autorizado a informação sensível. Como proposta para responder a estes riscos e continuando a permitir a partilha de informação estudamos neste projeto a elaboração de um sistema de anonimização automático de dados não estruturados que deteta e anonimiza informação sensível com recurso a abordagens de Aprendizagem Automática para a tarefa Reconhecimento de Entidades Mencionadas. O sistema a desenvolver deve poder ser executado localmente e assegurar confidencialidade dos dados. Um grande desafio na criação de um sistema de deteção é a necessidade de dados úteis ao treino, que variam consoante o contexto a que o sistema se destina, podendo existir escassez de dados para determinado contexto. O caso de estudo determinado para este projeto é o domínio legal em português europeu, para o qual existe efetivamente escassez de dados anotados. Analisámos e comparámos neste projeto vários modelos de Aprendizagem Automática, sujeitos a diferentes condições de fine-tuning, para a deteção e anonimização da informação sensível em texto livre, e também quais os erros mais comuns e possíveis causas. Para que a comparação seja justa e porque atualmente existe escassez de dados úteis para o treino e avaliação deste tipo de sistemas criámos um pequeno corpus de documentos anotados manualmente no domínio legal em português europeu. Criámos também um corpus de documentos gerados e anotados pela ferramenta ChatGPT. O resultado final do projeto é um sistema de anonimização automática que será posteriormente integrado numa ferramenta da TrustSystems, empresa em que o projeto foi realizado. Os dois modelos com melhores resultados apresentam valores de recall que se aproximam dos 70%.
- Leveraging Microsoft teams for user-focused cybersecurity initiatives and engagementPublication . Fino, Daniel Filipe Fidalgo; Teixeira, Carlos Jorge da ConceiçãoThis thesis presents the process of creating and developing the CyberCloud application for the company EMVENCI, designed to improve user engagement with cybersecurity education within the corporate environment, specifically through the Microsoft Teams platform. As organizations increasingly rely on collaborative platforms like Microsoft Teams, traditional methods of promot ing cybersecurity, such as email campaigns, have become less effective. Therefore, it is essential to implement innovative approaches that align with user habits, promoting greater participation in cybersecurity initiatives and cultivating a more informed culture. Based on EMVENCI’s existing Cybersecurity Cloud platform, the CyberCloud application was created to provide employees with easy access to cybersecurity content within Microsoft Teams. Key features include single sign-on (SSO) authentication and a notifications bot for real-time up dates on new elearning content and news, designed to integrate into users daily routines and im prove ongoing engagement. The development process followed a four-phase methodology: (1) requirements analysis, (2) user interface (UI) and technical architecture design, (3) technical development, and (4) testing plan. In the analysis phase, relevant features from the existing platform were identified and aligned with the project objectives. The development process was based on Angular and TypeScript for the UI, Firebase Cloud Functions for real-time notifications, and Microsoft tools to ensure compatibility with Microsoft Teams. Due to time constraints and design changes, delays affected the execution of the planned test ing and deployment to the Microsoft Teams Store, limiting data collection and the ability to assess the application long-term effectiveness in improving user engagement with cybersecurity initia tives. Despite this, user feedback from 6 participants highlighted positive responses to features like Single-Sign On (SSO) and the clean UI design, though improvements were suggested for load times when opening multimedia content and navigation between sections of the application. The application showed potential in engaging users with cybersecurity training, but further optimiza tions are needed, and future evaluations should perform the complete testing plan with a large and diversified sample of users to obtain a more complete assessment.
- Plataforma e metodologia de desenvolvimento de agentes conversacionais proativosPublication . Pires, Tiago Alexandre de Castro; Silva, João Carlos Balsa da; Cláudio, Ana Paula BolerThe development of conversational agents has witnessed immense improvement in recent years, being used in increasingly extensive and complex dialogues with the system users. Likewise, mobile health applications (mHealth) have found their space in the market, helping their users achieve the goals they are aiming towards. But despite this growth on both fronts, there is no unified structure of what is needed when building the architecture of a conversational agent working in this area. Based on the foundations built on the VASelfCare project, which uses Behavioral Change Techniques in an intervention with the support of a Conversational Agent, this project aims to define a Development Platform for a Proactive Conversational Agent that manages to help its user achieve certain goals on a natural language dialogue, as well as define a Methodology for the Development. The project’s main idea is to achieve a level of abstraction that allows any system developed with these principles to discuss any topic that is required from them. The Conversational Agent must be proactive to be able to guide the dialogues with the user, applying Behavioral Change Techniques when necessary to support them in achieving the objectives that the topic requires. The development of the Proof of Concept was successful, managing to combine a Natural Language Processing Service such as Dialogflow with databases and knowledge on the chosen topic, achieving a base adaptable to any topic with representation in Ontology.
- Enhancing Software Code’s Quality and Performance for Optimal ResultsPublication . Santos, Núria Carmélia Jalali Pinto dos; Lourenço, Carlos Eduardo Ramos dos SantosThis thesis explores the implementation of clean code best practices in Golang, a language designed for performance and efficiency. Emvenci is transitioning its codebase to a new architecture, adhering to modern software design principles. The primary objective is to refactor and optimize all e-learning service endpoints under this new architecture, with a focus on enhancing performance through parallelization and concurrency. A secondary objective is to propose additional guidelines, as needed. During the implementation, a systematic routine was established to streamline the process, documenting key steps and highlighting improvements to aid testers who lack direct access to the code. Performance optimization techniques were carefully applied to maintain a balance between complexity and efficiency. These techniques included parallelizing independent database accesses, consolidating repeated queries, and eliminating redundant code and unnecessary processing. Testing was conducted in two phases: clean code analysis and performance evaluation. Clean code metrics, such as maintainability index, cyclomatic complexity, and cognitive complexity, were assessed. In the performance phase, load tests measured processing time, CPU, and memory usage across endpoints. The results demonstrated significant improvements in system performance, though clean code metrics showed a decline due to the increased volume and complexity of the refactored functions. While the new architecture initially risked degrading performance, the applied optimizations ensured improvements in most endpoints. This suggests that similar techniques may yield benefits when refactoring other parts of the code. Additionally, the newly established documentation for both the clean architecture and performance testing will provide a foundation for future work at the company, setting expectations for quality and consistency.
- Automação do Processo de Mobilidade Erasmus (Incoming) no Sistema FenixPublication . Andrade, Bernardo Salgado; Domingos, Maria Dulce Pedroso, 1970-O Fenix, um Sistema Integrado de Gestão Académica (SIGA) inicialmente criado pelo Instituto Superior Técnico (IST), é utilizado nas Escolas da Universidade de Lisboa (ULisboa), estando em constante desenvolvimento, evolução e melhoria. Este projeto dedica-se a estender o módulo de Mobilidade existente no Fenix, com o objetivo de desmaterializar e automatizar os processos de entrada de estudantes Erasmus. Ao alavancar a infraestrutura do Fenix, o objetivo é alinhar a gestão do programa de mobilidade com a iniciativa Erasmus Without Paper (EWP), melhorando os processos administrativos da Instituição para a mesma e para os estudantes da Universidade de Lisboa (ULisboa). Apesar do processo de mobilidade ter uma estrutura macro definida pelo programa Erasmus e de esta ser aplicada na ULisboa, as Escolas que a compõe, possuem especificidades próprias. Assim, um dos principais desafios deste projeto é criar uma solução que respeite a estrutura geral do processo, mas permita personalizações de acordo com as necessidades particulares de cada instituição. Para atingir esse objetivo, utilizou-se a ferramenta de modelação de processos do Fenix, garantindo que o processo possa ser adaptado pelas próprias, por forma a refletir as suas exigências específicas, assegurando uma integração que respeite as necessidades locais.
- Full-Stack Application for Controlling and Directing Virtual Reality ExperiencesPublication . Pedro, Ricardo Filipe Baltazar; Fonseca, Manuel João Caneira Monteiro daThis thesis investigates the integration of Virtual Reality (VR) technologies within the TransmiXR EU project, focusing on the development of a Full-Stack application for managing multiuser Extended-Reality (XR) experiences in Performance Arts. The work addresses challenges in XR device management, user interaction, and content customization through a system designed for live control and real-time adjustments of XR environments. The proposed solution includes a management platform developed with Angular.js, providing a modular and responsive user interface that communicates with an Express.js back-end, which handles device communication and management. Integration with Unreal Engine enables scene management and AI-driven interactions, demonstrated through the use of Isaac, a virtual character in the performance. Comparison with existing XR management tools, including ArborXR and Meta Quest for Business, highlights the adaptability and cost-effectiveness of the developed application, with specific capabilities in content delivery and user interaction. The thesis also examines related technologies such as volumetric video capture and motioncaptured animation, which complement the directing functionality of the application. These tools facilitate content creation by incorporating 3D video and character animation, supporting the director’s control over XR experiences. User experience testing evaluates the usability of the application, including data analysis of its performance across different age groups, which is a significant consideration for systems with multiple operators of varying ages. This work contributes to the field of VR and XR technologies by providing a solution for managing interactive and collaborative experiences in creative industries.
- System redevelopment for competition resultsPublication . Cachão, André Fernandes; Nunes, Maria Isabel Alves Batalha Reis da GamaIn sports, a clear and effective presentation of information is crucial to engaging audiences, and gymnastics competitions are no exception. This document outlines a project developed for Acro Companion, a company that specializes in developing software solutions for gymnastics entities such as organizers, judges, coaches, and gymnasts. The project centers on the redevelopment of the Results System, which aims to provide a better experience for spectators at gymnastics competitions by using large displays named Hall Screens and optimizing how they can be controlled by a set of graphical user interfaces called Mechanism Controller. The project has three primary objectives. The first goal is to enhance the control and presentation of the Hall Screens, ensuring they effectively cover the various competition scenarios to improve the audience’s experience and make the Mechanism Controller more responsive and user-friendly, streamlining the experience for competition officials. The second objective focuses on improving the system’s internal structure by refining the codebase with modern techniques and best practices to optimize maintainability, performance, and readability. The third and final objective focuses on getting robust system testing and introducing new tools and implementations that streamline the testing process and reduce the likelihood of bugs in production. As a result, the project has achieved several key improvements. New ways of displaying competition information were implemented, along with enhancements to the Mechanism Controller. Internally, the system structure was optimized, components were prepared to support deferred loading and the reactive pattern was migrated from observables to signals. Finally, system testing was expanded to cover the implementations made, with its framework being updated to Playwright, bringing several benefits to the testing process. In summary, the Acro Companion Results System was transformed into a more robust and efficient solution, making it better prepared to withstand large-scale gymnastics competitions.
- Advanced Blacklisting: Aperfeiçoamento de Algoritmos para Deteção de Correspondências em Listas de Pessoas Politicamente Expostas (PEP)Publication . Ferreira, Bárbara Filipa Felizardo; Antunes, Luís Alberto dos Santos, 1967-O objetivo deste trabalho consiste em aprimorar o algoritmo de correspondência de nomes para superar as atuais limitações, utilizando a Distância de Levenshtein como base. Ao utilizar este algoritmo isoladamente verificou-se uma grande ineficácia, resultando numa taxa de falsos positivos de 99 %. Para solucionar este desafio, a Distância de Levenshtein foi combinada com três métricas: Jaro-Winkler, N-Gram e Similaridade de Cosseno. Um experimento adicional com a técnica Soft TF-IDF foi efetuada para comparar com os métodos anteriores. A melhor combinação foi a Distância de Levenshtein com N-Gram, apresentando-se mais eficaz na deteção de correspondências, considerando os parâmetros utilizados. A combinação com Jaro-Winkler obteve uma taxa de falsos positivos de 14 %, mas teve dificuldade com nomes em ordens diferentes. A Similaridade de Cosseno apresentou uma taxa semelhante à do N-Gram (25 %), mas ocorreu uma alteração no valor dos pesos das funções. O Soft TF-IDF, teve eficácia na identificação de similaridade, mas obteve uma taxa de falsos positivos de 45 %, tornando-o o menos eficiente. O conjunto de dados inicial era pequeno, pelo que foi necessário realizar um teste com um conjunto maior onde o algoritmo eleito obteve uma taxa de falsos positivos de 13 % e um tempo de processamento de 49 minutos, confirmando a sua robustez e escalabilidade. Deste modo, ocorreu uma melhoria uma melhoria mínima de 75 % em relação à taxa inicial de falsos positivos, beneficiando o vendedor e o cliente, ao garantir um programa eficiente.
- VA|PREVENTION – Protótipo e Testes de UsabilidadePublication . Ramires, Renato Jorge Rosa Mesquita; Silva, João Carlos Balsa da; Carmo, Maria Beatriz Duarte Pereira doType 2 diabetes is one of the most common diseases, causing various impacts on pa tients’ quality of life, burdening healthcare systems, and resulting in significant economic costs. This work is part of the VA—PREVENTION project, funded by the Foundation for Science and Technology (FCT), which aims to help prevent this condition by pro moting behavioral changes in diet and physical activity among at-risk individuals. The VA—PREVENTION application was developed to create conversation simulations be tween a user and a virtual character (Ema), thus helping users adopt healthier lifestyle habits. This project involved two main phases. The first was the development of applica tion prototypes and the integration of functionalities outlined by VA—PREVENTION. This required a preliminary study on architectures to determine the most suitable for the project. Additionally, configuring the server was an important task to ensure everything functioned smoothly. The second phase involved conducting usability studies of the ap plication through metrics such as efficiency, effectiveness, and user satisfaction. These usability tests were carried out through interviews that followed a Think-Aloud protocol. At the end of the interviews, questionnaires (demographic, PSSUQ) were completed to gather relevant data for determining the usability level. This document describes the project’s development process, the methodologies used in usability testing, and their results. Thus, this work not only enabled the development of an innovative tool for diabetes prevention but also provided valuable experience in developing health technology projects within a multidisciplinary team.