2025
Autores
Carreira, R; Costa, NAR; Ramos, F; Frazao, LAL; Barroso, JMP; Pereira, J;
Publicação
Proceedings of the 11th International Conference on Software Development and Technologies for Enhancing Accessibility and Fighting Info-exclusion
Abstract
We live in an era where robotics and IoT represent a significant transition towards a unified and automated world. Nonetheless, this convergence faces challenges, including system compatibility and device interoperability. The lack of flexibility of conventional robotic architectures amplifies these obstacles, highlighting the urgency for solutions. Furthermore, the complexity of adopting new technologies can be overwhelming. To address these challenges, this article features a Robot Operating System (ROS2)-centered middleware, referred to as "Gateway"since it applies the concept of a gateway, designed to ease the robot integration. Focusing on the payload module and fostering several types of external communication, it enhances modularity and interoperability. Developers can select payloads and communication modes through a console, which the middleware subsequently configures, guaranteeing flexibility. The goal is to highlight this middleware's potential to overcome robotics limitations, allowing a flexible integration of robots. This work contributes to the Internet of Robotic Things (IoRT) matter, underscoring the importance of modular payload engineering and interoperable communication in robotics and IoT. © 2025 Elsevier B.V., All rights reserved.
2025
Autores
Reis, A; Barroso, JMP; Rocha, TDJVD;
Publicação
Proceedings of the 18th ACM International Conference on PErvasive Technologies Related to Assistive Environments
Abstract
This paper presents ElderMind, a mobile application designed to promote cognitive stimulation and engagement among older adults. Developed using a User-Centered Design (UCD) approach, the application incorporates gamified elements to enhance usability. ElderMind features three cognitive games - memory, puzzle, and maze-solving - each with adjustable difficulty levels, ensuring accessibility for diverse user needs. Key functionalities include performance tracking, customizable font sizes, and multilingual support, making it a versatile tool for aging populations. Accessibility and usability assessments were conducted to refine the application iteratively, addressing issues such as visual contrast and touch target sizes. Preliminary usability testing with participants aged 50-64 demonstrated ease of use, with most tasks rated as "not difficult at all."Feedback highlighted the application's simplicity and accessibility while identifying areas for improvement, such as interface aesthetics and game variety. ElderMind represents a preliminary solution toward inclusive digital solutions for cognitive health and user engagement. © 2025 Elsevier B.V., All rights reserved.
2025
Autores
Ferreira, M; Viegas, L; Faria, JP; Lima, B;
Publicação
2025 IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATION OF SOFTWARE TEST, AST
Abstract
Large language model (LLM)-powered assistants are increasingly used for generating program code and unit tests, but their application in acceptance testing remains underexplored. To help address this gap, this paper explores the use of LLMs for generating executable acceptance tests for web applications through a two-step process: (i) generating acceptance test scenarios in natural language (in Gherkin) from user stories, and (ii) converting these scenarios into executable test scripts (in Cypress), knowing the HTML code of the pages under test. This two-step approach supports acceptance test-driven development, enhances tester control, and improves test quality. The two steps were implemented in the AutoUAT and Test Flow tools, respectively, powered by GPT-4 Turbo, and integrated into a partner company's workflow and evaluated on real-world projects. The users found the acceptance test scenarios generated by AutoUAT helpful 95% of the time, even revealing previously overlooked cases. Regarding Test Flow, 92% of the acceptance test cases generated by Test Flow were considered helpful: 60% were usable as generated, 8% required minor fixes, and 24% needed to be regenerated with additional inputs; the remaining 8% were discarded due to major issues. These results suggest that LLMs can, in fact, help improve the acceptance test process, with appropriate tooling and supervision.
2025
Autores
Barros, A; Neto, H; Cunha, A; Macedo, N; Paiva, ACR;
Publicação
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
Autores
Kuroishi, PH; Paiva, ACR; Maldonado, JC; Vincenzi, AMR;
Publicação
INFORMATION AND SOFTWARE TECHNOLOGY
Abstract
Context: Testing activities are essential for the quality assurance of mobile applications under development. Despite its importance, some studies show that testing is not widely applied in mobile applications. Some characteristics of mobile devices and a varied market of mobile devices with different operating system versions lead to a highly fragmented mobile ecosystem. Thus, researchers put some effort into proposing different solutions to optimize mobile application testing. Objective: The main goal of this paper is to provide a categorization and classification of existing testing infrastructures to support mobile application testing. Methods: To this aim, the study provides a Systematic Mapping Study of 27 existing primary studies. Results: We present a new classification and categorization of existing types of testing infrastructure, the types of supported devices and operating systems, whether the testing infrastructure is available for usage or experimentation, and supported testing types and applications. Conclusion: Our findings show a need for mobile testing infrastructures that support multiple phases of the testing process. Moreover, we showed a need for testing infrastructure for context-aware applications and support for both emulators and real devices. Finally, we pinpoint the need to make the research available to the community whenever possible.
2025
Autores
Silva, M; Paiva, ACR; Mendes, A;
Publicação
SOFTWARE QUALITY JOURNAL
Abstract
Software testing plays a fundamental role in software engineering, involving the systematic evaluation of software to identify defects, errors, and vulnerabilities from the early stages of the development process. Education in software testing is essential for students and professionals, as it promotes quality and favours the construction of reliable software solutions. However, motivating students to learn software testing may be a challenge. To overcome this, educators may incorporate some strategies into the teaching and learning process, such as real-world examples, interactive learning, and gamification. Gamification aims to make learning software testing more engaging for students by creating a more enjoyable experience. One approach that has proven effective is to use serious games. This paper presents a novel serious game to teach white-box testing test case design techniques, named GAMFLEW (GAMe For LEarning White-box testing). It describes the design, game mechanics, and its implementation. It also presents a preliminary evaluation experiment with students to assess the usability, learnability, and perceived problems, among other aspects. The results obtained are encouraging.
The access to the final selection minute is only available to applicants.
Please check the confirmation e-mail of your application to obtain the access code.