Joana Coutinho

dblp:384/6125 · DBLP profile ↗
← Back
3ranked-venue papers
2as first author
3since 2021 · last 2026
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 3 · 2 first-author · 3 since 2021Theory of computation · 1 · 1 first-author · 1 since 2021
YearPublicationVenuePosition
2026 Verifiably UX Compliant and User-Intent Layout Generation (Extended Abstract)
abstract
Abstract Low-code platforms accelerate development of mission-critical applications, enabling users with less technical backgrounds to become proficient developers. AI-powered multi-agent systems further boost this experience. Large language models (LLMs) excel at understanding user intent, but alone cannot guarantee that design rules are followed - formal methods can provide such guarantees. We propose a hybrid approach that leverages both LLMs and a maximum satisfiability solver to generate layouts that comply with UX guidelines (e.g., widget ordering and grouping rules) while respecting user intent. We evaluate the approach in production against an LLM-only baseline.
Joana Coutinho, Alexandre Lemos, Pedro Resende
FM (2)1
2025 AI Mentor System: Building a Technical Debt Dashboard for Low Code
abstract
Low-code platforms enable rapid development of complex mission-critical software applications. High-level abstractions accompanied by AI assistance allow users with less technical backgrounds to become proficient developers. Technical debt is the cost of additional rework in software development caused by choosing a fast delivery over maintainability. Even though low-code abstracts significantly complex applications, projects can still suffer from technical debt. OutSystems guides developers through the AI Mentor System (AIMS), a centralized platform to monitor code quality. This paper explores the application of state-of-the-art tools in an industry setting of low-code editors. OutSystems has users with and without technical background, providing new challenges and mixed user feedback. We address the challenges of managing technical debt, where users have a wide range of experience, focusing on the results of the different patterns present in AIMS since its release in 2017. For instance, the usefulness of a pattern is determined not only by its correct detection, as it can have an unclear path (or be time-consuming) for refactoring. In the paper, we deep dive into the feedback and insights focusing primarily on two patterns: duplicated code and missing descriptions. Finally, we discuss the broader challenges of developing and evolving AIMS itself, particularly in the context of the mental models and expectations that low-code users bring.
Alexandre Lemos, Joana Coutinho
ICSME2
2024 BugOut: Automated Test Generation and Bug Detection for Low-Code
abstract
Low-code platforms enable rapid development of complex mission critical software applications. Nevertheless, these applications still must adhere to software principles. In particular, the developers need to create tests as part of their development cycle. However, this process involves significant effort from manual testing to manually coding tests. This process can be time-consuming and error-prone, especially for large and complex applications. In this paper, we propose using symbolic execution to generate tests for low-code applications. Symbolic execution is a technique that allows the exploration of all possible paths of a program, without requiring it to be executed with concrete values. Although symbolic execution has scalability issues due to path explosion, we mitigate the problem by exploring the properties of the low-code framework. We evaluate our approach using a set of real-world low-code applications and compare it to equivalent testing techniques for text-based programming languages. Our results show that symbolic execution can produce high quality results in a short amount of time when applied to visual programming languages. We believe that our approach has the potential to improve the quality and reliability of low-code applications while reducing the time and effort required for testing.
Joana Coutinho, Alexandre Lemos, Miguel Terra-Neves, André Ribeiro, Vasco Manquinho, Rui Quintino, Bartlomiej Matejczyk
ICST1