Cookies Policy
The website need some cookies and similar means to function. If you permit us, we will use those means to collect data on your visits for aggregated statistics to improve our service. Find out More
Accept Reject
  • Menu
Publications

2025

Alloy Repair Hint Generation Based on Historical Data

Authors
Barros, A; Neto, H; Cunha, A; Macedo, N; Paiva, ACR;

Publication
FORMAL METHODS, PT II, FM 2024

Abstract
Platforms to support novices learning to program are often accompanied by automated next-step hints that guide them towards correct solutions. Many of those approaches are data-driven, building on historical data to generate higher quality hints. Formal specifications are increasingly relevant in software engineering activities, but very little support exists to help novices while learning. Alloy is a formal specification language often used in courses on formal software development methods, and a platform-Alloy4Fun-has been proposed to support autonomous learning. While non-data-driven specification repair techniques have been proposed for Alloy that could be leveraged to generate next-step hints, no data-driven hint generation approach has been proposed so far. This paper presents the first data-driven hint generation technique for Alloy and its implementation as an extension to Alloy4Fun, being based on the data collected by that platform. This historical data is processed into graphs that capture past students' progress while solving specification challenges. Hint generation can be customized with policies that take into consideration diverse factors, such as the popularity of paths in those graphs successfully traversed by previous students. Our evaluation shows that the performance of this new technique is competitive with non-data-driven repair techniques. To assess the quality of the hints, and help select the most appropriate hint generation policy, we conducted a survey with experienced Alloy instructors.

2025

Interference-Aware Edge Runtime Prediction with Conformal Matrix Completion

Authors
Huang, Tianshu; Ramesh, Arjun; Ruppel, Emily; Pereira, Nuno; Rowe, Anthony; Joe-Wong, Carlee;

Publication

Abstract
Accurately estimating workload runtime is a longstanding goal in computer systems, and plays a key role in efficient resource provisioning, latency minimization, and various other system management tasks. Runtime prediction is particularly important for managing increasingly complex distributed systems in which more sophisticated processing is pushed to the edge in search of better latency. Previous approaches for runtime prediction in edge systems suffer from poor data efficiency or require intensive instrumentation; these challenges are compounded in heterogeneous edge computing environments, where historical runtime data may be sparsely available and instrumentation is often challenging. Moreover, edge computing environments often feature multi-tenancy due to limited resources at the network edge, potentially leading to interference between workloads and further complicating the runtime prediction problem. Drawing from insights across machine learning and computer systems, we design a matrix factorization-inspired method that generates accurate interference-aware predictions with tight provably-guaranteed uncertainty bounds. We validate our method on a novel WebAssembly runtime dataset collected from 24 unique devices, achieving a prediction error of 5.2% -- 2x better than a naive application of existing methods.

2025

Addressing the Agony of Recruitment for Human-centric Computing Studies

Authors
Madampe, K; Grundy, J; Good, J; Hidellaarachchi, D; Cunha, J; Brown, C; Kuang, P; Tamime, RA; Anik, AI; Sarkar, A; Zhou, W; Khalid, S; Turchi, T; Wickramathilaka, S; Jiang, Y;

Publication
ACM SIGSOFT Softw. Eng. Notes

Abstract
We conducted a workshop on ''Addressing Challenges in Recruiting Participants for Human-Centric Computing Research Studies'' at the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC)'24 Conference. In the workshop, we conducted a brainstorming session on ''roadmap development of making participant recruitment easier for human-centric computing studies in both industry and academia''. This article presents 7 stages of participant recruitment and key strategies identified by the authors (workshop participants) during the brainstorming session.

2025

End-to-End Occluded Person Re-Identification With Artificial Occlusion Generation

Authors
Capozzi, L; Cardoso, JS; Rebelo, A;

Publication
IEEE ACCESS

Abstract
In recent years, the task of person re-identification (Re-ID) has improved considerably with the advances in deep learning methodologies. However, occluded person Re-ID remains a challenging task, as parts of the body of the individual are frequently hidden by various objects, obstacles, or other people, making the identification process more difficult. To address these issues, we introduce a novel data augmentation strategy using artificial occlusions, consisting of random shapes and objects from a small image dataset that was created. We also propose an end-to-end methodology for occluded person Re-ID, which consists of three branches: a global branch, a feature dropping branch, and an occlusion detection branch. Experimental results show that the use of random shape occlusions is superior to random erasing using our architecture. Results on six datasets consisting of three tasks (holistic, partial and occluded person Re-ID) demonstrate that our method performs favourably against state-of-the-art methodologies.

2025

The CAOS framework for Scala: Computer-aided design of SOS

Authors
Proença, J; Edixhoven, L;

Publication
SCIENCE OF COMPUTER PROGRAMMING

Abstract
We present Caos: a programming framework for computer-aided design of structural operational semantics for formal models. This framework includes a set of Scala libraries and a workflow to produce visual and interactive diagrams that animate and provide insights over the structure and the semantics of a given abstract model with operational rules. Caos follows an approach where theoretical foundations and a practical tool are built together, as an alternative to foundations-first design (tool justifies theory) or tool-first design (foundations justify practice). The advantage of Caos is that the tool-under-development can immediately be used to automatically run numerous and sizeable examples in order to identify subtle mistakes, unexpected outcomes, and unforeseen limitations in the foundations-under-development, as early as possible. More concretely, Caos supports the quick creation of interactive websites that help the end-users better understand a new language, structure, or analysis. End-users can be research colleagues trying to understand a companion paper or students learning about a new simple language or operational semantics. We include a list of open-source projects with a web frontend supported by Caos that are used both in research and teaching contexts.

2025

Specification of paraconsistent transition systems, revisited

Authors
Cunha, J; Madeira, A; Barbosa, LS;

Publication
SCIENCE OF COMPUTER PROGRAMMING

Abstract
The need for more flexible and robust models to reason about systems in the presence of conflicting information is becoming more and more relevant in different contexts. This has prompted the introduction of paraconsistent transition systems, where transitions are characterized by two pairs of weights: one representing the evidence that the transition effectively occurs and the other its absence. Such a pair of weights can express scenarios of vagueness and inconsistency. . This paper establishes a foundation for a compositional and structured specification approach of paraconsistent transition systems, framed as paraconsistent institution. . The proposed methodology follows the stepwise implementation process outlined by Sannella and Tarlecki.

  • 251
  • 4496