Repository logo
 

ISEP - DM – Engenharia Informática

Permanent URI for this collection

O curso de mestrado encontra-se dividido em três áreas de especialização em Engenharia Informática: Tecnologias do Conhecimento e Decisão; Arquitecturas, Sistemas e Redes e Sistemas Gráficos e Multimédia. 1. ÁREA TECNOLOGIAS DO CONHECIMENTO E DECISÃO - Esta área desenvolve competências que permitem o salto qualitativo da Sociedade da Informação para a Sociedade do Conhecimento e posteriormente para a Sociedade da Decisão. Os diplomados desta área para além de saberem lidar com os dados em sistemas de armazém de dados e fazer o respectivo processamento analítico, são também capazes de planear, desenhar e implementar o desenvolvimento de Sistemas de Apoio à Decisão, Sistemas Baseados em Conhecimento e, em particular, os Sistemas Periciais. Nesta área são também fornecidos aos alunos conhecimentos para o desenvolvimento de sistemas através do paradigma de programação Agentes Inteligentes e Sistemas Multi-agente. É dado ênfase à usabilidade de sistemas e ambientes através de tecnologias de conhecimento e aprendizagem automática; são estudadas, meta-heurísticas, optimização combinatória, métodos gerais de pesquisa, computação evolucionária e abordagens híbridas para optimização de problemas. São estudados os principais algoritmos de Data Mining para extracção do conhecimento implícito em grandes repositórios de dados; é também proporcionado um conjunto de conhecimentos teóricos e práticos no âmbito da simulação discreta e contínua e finalmente são dotados aos alunos conhecimentos e competências teóricas e práticas fundamentais sobre engenharia de ontologias e a sua aplicação a sistemas de informação e de conhecimento distribuídos, heterogéneos e abertos, nomeadamente no contexto da World Wide Web e da Web Semântica. 2. ÁREA ARQUITECTURA, SISTEMAS E REDES - A área de Arquitecturas, Sistemas e Redes visa dotar os alunos de conhecimentos transversais relativamente à integração de sistemas computacionais, com particular atenção em arquitecturas avançadas, interligando sistemas heterogéneas e distribuídos. Abordam-se por isso os conceitos necessários ao desenvolvimento de sistemas distribuídos e heterogéneos (incluindo sistemas embebidos e móveis), tanto ao nível da concepção de software como ao nível das plataformas computacionais (sistemas operativos, máquinas virtuais, linguagens). De igual forma, são abordados os conceitos, requisitos e métodos inerentes à interligação de aplicações e sistemas heterogéneos, e os conhecimentos em segurança e gestão de sistemas que permitam colocar em funcionamento aplicações complexas, heterogéneas e distribuídas com elevados graus de fiabilidade. Em paralelo são leccionadas competências transversais e estruturantes, como, por exemplo, processos de gestão da inovação, empreendedorismo e desenvolvimento de negócio. 3. ÁREA SISTEMAS GRÁFICOS E MULTIMÉDIA - Aborda os processos de concepção, desenvolvimento e aplicação avançada de sistemas gráficos interactivos e multimédia. As competências transmitidas incluem a aplicação de metodologias e processos de concepção, autoria e desenvolvimento destes sistemas em ambientes de Engenharia e a utilização de ambientes e de ferramentas padronizadas que lhe estão associadas. Transversalmente a estas áreas de desenvolvimento são apresentados os conceitos gerais como a usabilidade e acessibilidade, bem como metodologias de construção de interfaces com o utilizador, numa perspectiva de sensibilização dos alunos para o papel fundamental que os processos de interacção entre o utilizador e a máquina desempenham no sucesso das aplicações informáticas. São também considerados aspectos ligados ao planeamento, gestão e implementação em equipa destes sistemas e respectivo plano de negócio. É dado especial relevo à aplicação destas capacidades ao contexto específico de concepção e especificação, implementação e avaliação de conteúdos digitais de carácter educativo como software educativo, bem como produção de conteúdos de imagem, áudio e vídeo.

Browse

Recent Submissions

Now showing 1 - 10 of 927
  • Development of microservices-based APIs for smart energy systems
    Publication . COSTA, RODRIGO OLIVEIRA; Ramos, Sérgio Filipe Carvalho; Soares, João André Pinto
    The transition to sustainable energy systems requires the seamless integration of diverse and distributed technologies. However, challenges related to standardization and interoperability across international platforms continue to hinder this progress. This thesis explores the development of a microservices-ready API tailored for Smart Energy Systems, addressing these integration barriers through a modular and scalable backend design. While a fully distributed microservices architecture was initially envisioned, the implemented solution adopts a monolithic architecture structured according to microservices principles, enabling future service decomposition without significant redesign. The developed API aims to empower citizens to actively participate as prosumers within Energy Communities, supporting functionalities such as peer-to-peer energy trading, load management, and energy storage optimization. Designed with interoperability in mind, the platform promotes collaboration with international partners and facilitates integration into broader smart energy ecosystems. This work includes a comprehensive analysis of requirements, system architecture, implementation, and validation in realistic use cases. By aligning architectural flexibility with future scalability goals, the research contributes to the advancement of citizen-centric and sustainable energy systems.
  • Tradeoffs entre desempenho e energia em aplicações Java entre bases de dados relacionais e não relacionais
    Publication . SOUSA, ROGÉRIO MOURA DE; Azevedo, Isabel de Fátima Silva
    This dissertation investigates the performance and energy consumption tradeoffs in Java applications using relational and non-relational database technologies. With the increasing complexity and volume of data, the selection of an appropriate database system has become a critical decision for developers and system architects. Traditional relational databases such as PostgreSQL are known for their reliability and efficiency in structured data and complex queries, while non-relational databases like MongoDB and Apache Cassandra provide greater flexibility and scalability for handling unstructured or large datasets. The study adopts a rigorous methodology combining a literature review and controlled experiments to analyse three core aspects: the impact of the database type on performance and energy consumption in different database operations, the benefits of query optimisation techniques such as indexing, and the role of data volume in system efficiency. Multiple test scenarios were designed and executed using tools such as Grafana k6 and Kepler to measure relevant performance and energy metrics. The results confirm that no single solution fits all cases. While relational databases perform better in consistency-heavy select operations and structured query workloads, non-relational systems offer superior scalability and responsiveness in high-throughput or large-scale data environments. Additionally, the use of optimisation strategies was shown to significantly improve both energy efficiency and performance across database types. These findings highlight the importance of aligning database technologies with application-specific requirements to achieve energy-aware and performance-optimised solutions.
  • Technological interventions in mental health: A VR and mobile-based gamification approach for anxiety management
    Publication . MASCARENHAS, RICARDO OLIVEIRA; Carvalho, Carlos Miguel Miranda Vaz de
    Anxiety and panic attacks are among the most prevalent mental health challenges today, significantly impacting individuals’ daily lives, emotional stability, and overall well-being. Despite the availability of effective therapeutic techniques, such as guided meditation and breathing exercises, many individuals struggle to access and apply these tools consistently, particularly during acute episodes. This gap reveals the need for accessible, personalized, and engaging digital interventions that support both prevention and crisis management. This thesis presents the design, development, and evaluation of a digital solution that leverages Virtual Reality (VR) and mobile applications to assist individuals in managing anxiety. The system integrates evidence-based techniques into two primary modules: a Daily Work Module, promoting regular emotional regulation, and an SOS Module, for immediate intervention during crises. To maximize user engagement, the solution incorporates gamification elements grounded in psychological principles. Specifically, it maps the 5-4-3-2-1 grounding technique to a sequence of interactive, sensory-focused mini-games. The development follows a lifecyclebased Work Breakdown Structure (WBS) and a Design-Based Research (DBR) methodology. The prototype was evaluated with two major approaches, involving usability testing (SUS) and qualitative feedback from both mental health experts and end-users. The results confirmed the high usability and therapeutic potential of the application. Participants reported significant feelings of calmness and immersion, highlighting the effectiveness of the breathing and interactive grounding phases. The SOS mode was consistently validated as a valuable and reassuring feature for crisis management. Ethical considerations, such as data privacy and informed consent under GDPR, were paramount throughout the design. The outcome is a validated, user-centered framework for a gamified mental health tool that combines therapeutic efficacy with technological innovation, demonstrating a promising direction for accessible and engaging digital interventions.
  • Gamificação e automação na manutenção preventiva: Uma abordagem para redução de não conformidades em auditorias industriais
    Publication . RIBEIRO, RENATO FERNANDES; Carvalho, Carlos Miguel Miranda Vaz de
    A aplicação de automação robótica de processos, do inglês Robotic Process Automation (RPA) e a aplicação de gamificação em contexto industrial têm demonstrado potencial para otimizar significativamente práticas de manutenção preventiva. A presente dissertação explora as possíveis sinergias entre estas abordagens, unindo ambas com o objetivo de melhorar a gestão de processos industriais e ajudar na redução de não conformidades frequentemente identificadas em auditorias. Com base na análise do estado da arte, destacam-se os benefícios observados da gamificação na motivação e no envolvimento dos trabalhadores, especialmente transformando atividades rotineiras em experiências interativas e mais engajantes. Por outro lado, a RPA permite a automação de tarefas repetitivas, oferecendo garantia de uma maior consistência operacional. O trabalho aqui descrito procura investigar como a combinação das duas ferramentas pode contribuir para a melhoria contínua, alinhando-se às exigências da Indústria 4.0. A revisão teórica, bem como as propostas metodológicas discutidas, servem de base para futuras implementações em cenários reais, visando promover avanços na eficiência e na fiabilidade dos processos.
  • Apple vision pro and spatial computing: A feasibility study for game development
    Publication . SANTOS, PEDRO NUNO LAPA; Carvalho, Carlos Miguel Miranda Vaz de; Jacob, João
    Apple has recently launched a new spatial computing and Extended Reality (XR) platform that aims to combine virtual, augmented and mixed reality to offer users an unique experience in the Apple ecosystem. The Apple Vision Pro and its visionOS operating system mark an exciting new player in the market. As this is a new platform with a mostly unexplored market, organizations like Mindera have an exciting opportunity to be early adopters of this platform, if it proves to be a worthy investment. This project explores the Apple Vision Pro’s feasibility from a game development perspective through a systematic literature review, as well as the design and development of an original tabletop game that leverages the platform’s unique capabilities. Semi-structured interviews with XR and game development experts were conducted to validate the prototype and gather insights on the platform’s technical and practical aspects. Findings reveal that, while it offers exciting features such as controller-free natural interactions that use eye-tracking and gesture recognition, it has some noticeable limitations like its limited availability and high price. Overall, the study concludes that, although the Apple Vision Pro demonstrates promising potential for XR game development, it still is at an intermediate stage of technological maturity (TRL6).
  • Sistemas de interação por gestos e voz aplicados a jogos
    Publication . RODRIGUES, PAULO FILIPE MELO; Castro, António Abel Vieira de
    Este trabalho explora a utilização de sistemas de rastreamento de mãos e comando de voz aplicados em jogos com ênfase na acessibilidade e no estímulo de funções cognitivas (como memória e raciocínio) e terapêutica. Foi efetuada uma revisão do estado da arte e desenvolvidos dois protótipos funcionais: um baseado em rastreamento de mãos e outro em reconhecimento de voz, integrados em minijogos. Realizaram-se dois ciclos de testes com utilizadores, que combinaram medições de desempenho dos protótipos, observação e inquéritos para recolher perceções subjetivas sobre usabilidade, intuitividade e potencial de aplicação. Os resultados indicam viabilidade técnica e interesse dos participantes, apontando o comando de voz como mais acessível em hardware comum e o rastreamento de mãos como promissor, embora sensível a condições de iluminação e qualidade de câmara. São discutidas limitações (amostra dos teste e necessidade de otimização de performance) e propostas futuras, como a junção dos dois sistemas, modos multijogador e aplicações dirigidas a públicos com necessidades especiais. São discutidas limitações (amostra dos teste e necessidade de otimização de performance) e proposta futuras, como a junção dos dois sistemas, modos multijogador e aplicações dirigidas a públicos com necessidades especiais.
  • Análise comparativa da tolerância a falhas em elixir e outras linguagens distribuídas e concorrentes
    Publication . RIBEIRO, NUNO DINIS GONÇALVES; Nogueira, Luís Miguel Pinho
    Fault tolerance is a critical component of distributed systems, particularly considering the exponential growth in internet usage and system scale. The resilience and fault tolerance capabilities are essential for maintaining reliability and minimizing downtime. Elixir, with its fault-tolerant features and foundation in Erlang’s “let it crash” philosophy, stands out as a robust tool for building such systems. Nevertheless, other distributed and concurrent languages offer solutions, often leveraging similar concepts in different environments. For instance, Akka, inspired by “let it crash,” provides a toolkit built for Scala. Similarly, Go, celebrated for its built-in concurrency primitives like goroutines and channels, can integrate with the Actor Model through the Proto.Actor framework. Although all three languages are capable of implementing the Actor Model, Elixir adopts it as a first-class paradigm through its native integration with the Bogdan/Björn’s Erlang Abstract Machine (BEAM) Virtual Machine and the Open Telecom Platform (OTP) toolkit. In contrast, Akka leverages the maturity and optimizations of the Java Virtual Machine (JVM), offering a powerful abstraction over traditional concurrency models. Proto.Actor, on the other hand, introduces a language-agnostic approach to the Actor Model, built upon Protocol Buffers, which promotes interoperability. These modern tools bring significant fault-tolerant capabilities to software development. However, it is essential to understand how each compares, necessitating the execution of benchmarking. Thus, based on existing literature, the most effective methodology for benchmarking involves designing a generic application that simulates distributed and fault-tolerant operations. This approach led to a proposed test framework with a distributed, configurable architecture and test scenarios designed to yield measurable results. Empirical benchmarks revealed Elixir consistently delivers high throughput and low variance under moderate to low fault rates, though reconnection latency increases at scale due to centralized coordination bottlenecks. Scala with Akka demonstrated the most stable fault recovery and reconnection latency across all scales, well-suited for large systems with rigorous stability. Go with Proto.Actor offered competitive throughput in small-scale deployments but exhibited scalability limitations in fault detection and recovery. These findings show no single runtime dominate and each provides distinct trade-offs between throughput, fault recovery and detection. The results highlight how architecture-level decisions, such communication models, significantly impact runtime behavior under fault-prone conditions. Future work includes enhancing multi-node support, simulating more complex fault types, and exploring different actor system designs.
  • Editor de código para objetos de negócio
    Publication . FOLHA, ÓSCAR MARQUES MENDES; Sousa, Paulo Alexandre Gandra de
    This document addresses the challenges and benefits associated with implementing real-time code editing and validation systems in web-based environments, with a particular focus on the integration of data structures and models. This project was motivated by a clear limitation in PMWeb, a web tool used by insurance companies to manage data with version control. Although PMWeb works well for handling structural updates, it doesn’t yet support writing or validating formulas directly in the platform. Because of this, many users still depend on older desktop software, which limits their ability to work independently and adapt quickly. The goal of this work is to address that gap by bringing formula editing into the browser. This includes real-time syntax checking, helpful suggestions during editing, and direct integration with the system’s structured data models.The research involved reviewing current technologies and identifying shortcomings, while also recognizing promising tools such as the Language Server Protocol (LSP), Monaco Editor, and version-controlled databases like Dolt. The proposed solution combines these technologies into a single architecture that improves usability, encourages collaboration, and helps bring PMWeb closer to becoming a fully self-contained platform for insurance product configuration.
  • Realidade virtual no ensino de atos de enfermagem: Da simulação à gamificação
    Publication . RIBEIRO, MARTA MARIA MOREIRA; Escudeiro, Paula Maria de Sá Oliveira; Barata, Ana Margarida Sousa Júlio Mendes
    A presente dissertação apresenta o desenho, desenvolvimento e avaliação de uma aplicação de Realidade Virtual gamificada para apoio à formação em enfermagem. O trabalho envolveu a análise de requisitos, desenho da solução, implementação e avaliação da aplicação junto de utilizadores, com o objetivo de promover aprendizagem prática em contexto seguro e controlado. A avaliação foi realizada através de um questionário online (Microsoft Forms) e do Quantitative Evaluation Framework (QEF), considerando três dimensões principais: Funcionalidade, Experiência de Jogo e Qualidade Técnica. Os resultados evidenciam um elevado índice de qualidade global de 91%, refletindo o equilíbrio entre desempenho técnico, envolvimento do utilizador e imersão na experiência de aprendizagem. Foram identificadas limitações relativas à contagem de tempo, interpretação de questões sobre estímulo e adaptabilidade, bem como restrições na amostra de testes devido à disponibilidade de equipamento e à aprovação ética. O estudo demonstra o potencial da integração de simulação em Realidade Virtual e estratégias de gamificação como ferramentas eficazes para a formação em enfermagem, oferecendo oportunidades para evolução futura, expansão para outros contextos da saúde e melhoria contínua da experiência pedagógica.
  • Personalização de recomendações turísticas através de mineração de padrões e dados de contexto
    Publication . PINTO, LUÍS CARLOS FERNANDES; Alves, Patrícia Raquel de Jesus Araújo; Marreiros, Maria Goreti Carvalho
    Os sistemas de recomendação são ferramentas concebidas para apoiar os utilizadores nas suas escolhas, tornando-as progressivamente mais personalizadas. Com a evolução destes sistemas, as recomendações alcançam cada vez mais níveis superiores de precisão e coerência. Contudo, quando utilizados em recomendações de grupos, surge um problema decorrente do facto de os diferentes membros apresentarem preferências distintas, sendo, por isso, necessários métodos mais avançados que conciliem preferências e resolvam potenciais conflitos. O trabalho realizado incidiu sobre a melhoria de um sistema de recomendação para grupos (GRS) de turismo, Grouplanner, em desenvolvimento no Grupo de Investigação em Engenharia e Computação Inteligente para a Inovação e Desenvolvimento (GECAD) com o objetivo de resolver os problemas de heterogeneidade de preferências em grupos de turismo. Esta aplicação é suportada por uma arquitetura baseada em cinco microserviços, através da qual são disponibilizadas funcionalidades como a gestão de utilizadores, a definição de preferências e a geração de recomendações. As funcionalidades adicionadas permitem a melhoria das recomendações com base nos perfis dos utilizadores, através da extração de padrões de comportamento. Para tal, foram integrados três algoritmos distintos de mineração de padrões frequentes — Apriori, FP-Growth e Eclat — possibilitando a comparação entre diferentes abordagens e a escolha dinâmica da técnica mais adequada por meio de configuração. A extração destas regras foi incorporada no serviço multiagente (MAMS), para serem consideradas no motor de recomendações pelo motor de recomendação (REMS), permitindo a geração de sugestões mais personalizadas. A metodologia proposta foi concebida considerando não apenas os dados demográficos declarados dos utilizadores, mas também fatores como medos, limitações físicas, avaliações dos POI e dados de contexto, o que resulta em recomendações mais personalizadas e adequadas ao perfil dos turistas. Foram realizados testes para avaliar o impacto da escolha do algoritmo de mineração de padrões frequentes e do número de utilizadores na qualidade das recomendações geradas e no desempenho computacional. Os resultados obtidos demonstraram que o algoritmo FP-Growth apresentou o melhor desempenho neste contexto. Estes resultados também demonstraram que a utilização de regras de associação contribuiu para melhorar a personalização das recomendações, promovendo experiências mais relevantes para os utilizadores.