2021
Authors
Campos, D; Restivo, A; Ferreira, HS; Ramos, A;
Publication
2021 14TH IEEE CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION (ICST 2021)
Abstract
Automated Program Repair (APR) is an area of research focused on the automatic generation of bug-fixing patches. Current APR approaches present some limitations, namely overfitted patches and low maintainability of the generated code. Several works are tackling this problem by attempting to come up with algorithms producing higher quality fixes. In this experience paper, we explore an alternative. We believe that by using existing low-cost APR techniques, fast enough to provide real-time feedback, and encouraging the developer to work together with the APR inside the IDE, will allow them to immediately discard proposed fixes deemed inappropriate or prone to reduce maintainability. Most developers are familiar with real-time syntactic code suggestions, usually provided as code completion mechanisms. What we propose are semantic code suggestions, such as code fixes, which are seldom automatic and rarely real-time. To test our hypothesis, we implemented a Visual Studio Code extension (named pAPRika), which leverages unit tests as specifications and generates code variations to repair bugs in JavaScript. We conducted a preliminary empirical study with 16 participants in a crossover design. Our results provide evidence that, although incorporating APR in the IDE improves the speed of repairing faulty programs, some developers are too eager to accept patches, disregarding maintenance concerns.
2021
Authors
Silva, M; Dias, JP; Restivo, A; Ferreira, HS;
Publication
PROCEEDINGS OF THE 17TH EAI INTERNATIONAL CONFERENCE ON MOBILE AND UBIQUITOUS SYSTEMS: COMPUTING, NETWORKING AND SERVICES (MOBIQUITOUS 2020)
Abstract
In this work, we propose a method for extending Node-RED to allow the automatic decomposition and partitioning of the system towards higher decentralization. We provide a custom firmware for constrained devices to expose their resources, as well as new nodes and modifications in the Node-RED engine that allow automatic orchestration of tasks. The firmware is responsible for low-level management of health and capabilities, as well as executing MicroPython scripts on demand. Node-RED then takes advantage of this firmware by (1) providing a device registry allowing devices to announce themselves, (2) generating MicroPython code from dynamic analysis of flow and nodes, and (3) automatically (re-)assigning nodes to devices based on pre-specified properties and priorities. A mechanism to automatically detect abnormal run-time conditions and provide dynamic self-adaptation was also explored. Our solution was tested using synthetic home automation scenarios, where several experiments were conducted with both virtual and physical devices. We then exhaustively measured each scenario to allow further understanding of our proposal and how it impacts the system's resiliency, efficiency, and elasticity.
2021
Authors
Dias, JP; Restivo, A; Ferreira, HS;
Publication
2021 IEEE/ACM 3RD INTERNATIONAL WORKSHOP ON SOFTWARE ENGINEERING RESEARCH AND PRACTICES FOR THE IOT (SERP4IOT)
Abstract
Internet-of-Things (IoT) systems have spread among different application domains, from home automation to industrial manufacturing processes. The rushed development by competing vendors to meet the market demand of IoT solutions, the lack of interoperability standards, and the overall lack of a defined set of best practices have resulted in a highly complex, heterogeneous, and frangible ecosystem. Several works have been pushing towards visual programming solutions to abstract the underlying complexity and help humans reason about it. As these solutions begin to meet widespread adoption, their building blocks usually do not consider reliability issues. Node-RED, being one of the most popular tools, also lacks such mechanisms, either built-in or via extensions. In this work we present SHEN (Self-Healing Extensions for Node-RED) which provides 17 nodes that collectively enable the implementation of self-healing strategies within this visual framework. We proceed to demonstrate the feasibility and effectiveness of the approach using real devices and fault injection techniques.
2021
Authors
Alves, A; Morais, AJ; Filipe, V; Pereira, JA;
Publication
Distributed Computing and Artificial Intelligence, Volume 2: Special Sessions 18th International Conference, DCAI 2021, Salamanca, Spain, 6-8 October 2021.
Abstract
Climate change affects global temperature and precipitation patterns. These effects, in turn, influence the intensity and, in some cases, the frequency of extreme environmental events, such as forest fires, hurricanes, heat waves, floods, droughts, and storms. In general, these events can be particularly conducive to the appearance of plant pests and diseases. The availability of models and a data collection system is crucial to manage pests and diseases in sustainable agricultural ecosystems. Agricultural ecosystems are known to be complex, multivariable, and unpredictable. It is important to anticipate crop pests and diseases in order to improve its control in a more ecological and economical way (e.g., precision in the use of pesticides). The development of an intelligent monitoring and management platform for the prevention of pests and diseases in olive groves at Trás-os- Montes region will be very beneficial. This platform must: a) integrate data from multiple data sources such as sensory data (e.g., temperature), biological observations (e.g., insect counts), georeferenced data (e.g., altitude) or digital images (e.g., plant images); b) systematize these data into a regional repository; c) provide relevant forecasts for pest and diseases. Convolutional Neural Networks (CNNs) can be a valuable tool for the identification and classification of images acquired by Internet of Things (IoT).
2021
Authors
Sayers, D; Sousa-Silva, R; Höhn, S; Ahmedi, L; Allkivi-Metsoja, K; Anastasiou, D; Benuš, Š; Bowker, L; Bytyçi, E; Catala, A; Çepani, A; Chacón-Beltrán, R; Dadi, S; Dalipi, F; Despotovic, V; Doczekalska, A; Drude, S; Fort, K; Fuchs, R; Galinski, C; Gobbo, F; Gungor, T; Guo, S; Höckner, K; Láncos, PL; Libal, T; Jantunen, T; Jones, D; Klimova, B; Korkmaz, EE; Maucec, MS; Melo, M; Meunier, F; Migge, B; Mititelu, VB; Névéol, A; Rossi, A; Pareja-Lora, A; Sanchez-Stockhammer, C; Sahin, A; Soltan, A; Soria, C; Shaikh, S; Turchi, M; Yildirim Yayilgan, S;
Publication
Abstract
2021
Authors
Devezas, JL; Nunes, S;
Publication
XRDS
Abstract
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.