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

Publications by CRACS

2021

A Survey on Subgraph Counting: Concepts, Algorithms, and Applications to Network Motifs and Graphlets

Authors
Ribeiro, P; Paredes, P; Silva, MEP; Aparicio, D; Silva, F;

Publication
ACM COMPUTING SURVEYS

Abstract
Computing subgraph frequencies is a fundamental task that lies at the core of several network analysis methodologies, such as network motifs and graphlet-based metrics, which have been widely used to categorize and compare networks from multiple domains. Counting subgraphs is, however, computationally very expensive, and there has been a large body of work on efficient algorithms and strategies to make subgraph counting feasible for larger subgraphs and networks. This survey aims precisely to provide a comprehensive overview of the existing methods for subgraph counting. Our main contribution is a general and structured review of existing algorithms, classifying them on a set of key characteristics, highlighting their main similarities and differences. We identify and describe the main conceptual approaches, giving insight on their advantages and limitations, and we provide pointers to existing implementations. We initially focus on exact sequential algorithms, but we also do a thorough survey on approximate methodologies (with a trade-off between accuracy and execution time) and parallel strategies (that need to deal with an unbalanced search space).

2021

Energy-aware adaptive offloading of soft real-time jobs in mobile edge clouds

Authors
Silva, J; Marques, ERB; Lopes, LMB; Silva, F;

Publication
JOURNAL OF CLOUD COMPUTING-ADVANCES SYSTEMS AND APPLICATIONS

Abstract
We present a model for measuring the impact of offloading soft real-time jobs over multi-tier cloud infrastructures. The jobs originate in mobile devices and offloading strategies may choose to execute them locally, in neighbouring devices, in cloudlets or in infrastructure cloud servers. Within this specification, we put forward several such offloading strategies characterised by their differential use of the cloud tiers with the goal of optimizing execution time and/or energy consumption. We implement an instance of the model using Jay, a software framework for adaptive computation offloading in hybrid edge clouds. The framework is modular and allows the model and the offloading strategies to be seamlessly implemented while providing the tools to make informed runtime offloading decisions based on system feedback, namely through a built-in system profiler that gathers runtime information such as workload, energy consumption and available bandwidth for every participating device or server. The results show that offloading strategies sensitive to runtime conditions can effectively and dynamically adjust their offloading decisions to produce significant gains in terms of their target optimization functions, namely, execution time, energy consumption and fulfilment of job deadlines.

2021

FGPE Gamification Service: A GraphQL Service to Gamify Online Education

Authors
Paiva, JC; Haraszczuk, A; Queirós, R; Leal, JP; Swacha, J; Kosta, S;

Publication
Trends and Applications in Information Systems and Technologies - Volume 4, WorldCIST 2021, Terceira Island, Azores, Portugal, 30 March - 2 April, 2021.

Abstract
Keeping students engaged while learning programming is becoming more and more imperative. Of the several proposed techniques, gamification is presumably the most widely studied and has already proven as an effective means to engage students. However, there is a complete lack of public and customizable solutions to gamified programming education that can be reused with personalized rules and learning material. FGPE Gamification Service (FGPE GS) is an open-source GraphQL service that transforms a package containing the gamification layer – adhering to a dedicated open-source language, GEdIL – into a game. The game provides students with a gamified experience leveraging on the automatically-assessable activities referenced by the challenges. This paper presents FGPE GS, its architecture, data model, and validation. © 2021, The Author(s), under exclusive license to Springer Nature Switzerland AG.

2021

Matching User Interfaces to Assess Simple Web Applications (Short Paper)

Authors
Primo, M; Leal, JP;

Publication
Second International Computer Programming Education Conference, ICPEC 2021, May 27-28, 2021, University of Minho, Braga, Portugal.

Abstract
This paper presents ongoing research aiming at the automatic assessment of simple web applications, like those used in introductory web technologies courses. The distinctive feature of the proposed approach is a web interface matching procedure. This matching procedure verifies if the web interface being assessed corresponds to that of a reference application; otherwise, provides detailed feedback on the detected differences. Since web interfaces are event-driven, this matching is instrumental to assess the functionality. After mapping web interface elements from two applications, these can be targeted with events and property changes can be compared. This paper details the proposed matching algorithm and the current state of its implementation. It also discusses future work to embed this approach in a web environment for solving web application exercises with automatic assessment. © Marco Primo and José Paulo Leal; licensed under Creative Commons License CC-BY 4.0 Second International Computer Programming Education Conference (ICPEC 2021).

2021

An Open-Source Gamified Programming Learning Environment (Short Paper)

Authors
Paiva, JC; Queirós, R; Leal, JP; Swacha, J; Miernik, F;

Publication
Second International Computer Programming Education Conference, ICPEC 2021, May 27-28, 2021, University of Minho, Braga, Portugal.

Abstract
The importance of e-learning tools facilitating the process of learning to program is growing, especially as the pandemic-caused lockdown enforced distance learning in many countries. The key success factor in this process is the provision of an instant and relevant feedback to students. In this paper, we describe a novel open-source programming learning environment featuring automatic assessment of students' solutions and customized gamification. This environment has been developed as a part of the FGPE framework. © José Carlos Paiva, Ricardo Queirós, José Paulo Leal, Jakub Swacha, and Filip Miernik; licensed under Creative Commons License CC-BY 4.0 Second International Computer Programming Education Conference (ICPEC 2021).

2021

Programming Exercises Interoperability: The Case of a Non-Picky Consumer

Authors
Queirós, R; Paiva, JC; Leal, JP;

Publication
10th Symposium on Languages, Applications and Technologies, SLATE 2021, July 1-2, 2021, Vila do Conde/Póvoa de Varzim, Portugal.

Abstract
Problem-solving is considered one of the most important skills to retain in the coming decades for building a modern and proactive society. In this realm, computer programming learning is vital to enrich those skills. Practicing in this area boils down to solve programming exercises. In order to foster this practice, it is necessary to provide students with the best of the breed automated tools and a good set of exercises in a fair quantity covering the curricula of a typical programming course. Despite the increasing appearance of automated tools such as program evaluators, gamification engines and sophisticated web environments, access to exercises remains problematic. In fact, although the existence of several code repositories (most for feed computer programming contests), the majority of them store the exercises in proprietary formats and without any access facilities hindering their use. This leaves no other option to teachers but to manually create programming exercises which is time-consuming and error prone, or simply, reuse the same exercises, from previous years, which is considered as a detrimental and limiting approach to enhance multi-faceted and creative programmers. The article surveys the current interoperability efforts on programming exercises, more precisely, in terms of serialization formats and communication protocols. This study will sustain the selection of an API to feed a code playground called LearnJS with random programming exercises.

  • 25
  • 192