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

2023

Bibliometric Analysis of Automated Assessment in Programming Education: A Deeper Insight into Feedback

Authors
Paiva, JC; Figueira, A; Leal, JP;

Publication
ELECTRONICS

Abstract
Learning to program requires diligent practice and creates room for discovery, trial and error, debugging, and concept mapping. Learners must walk this long road themselves, supported by appropriate and timely feedback. Providing such feedback in programming exercises is not a humanly feasible task. Therefore, the early and steadily growing interest of computer science educators in the automated assessment of programming exercises is not surprising. The automated assessment of programming assignments has been an active area of research for over a century, and interest in it continues to grow as it adapts to new developments in computer science and the resulting changes in educational requirements. It is therefore of paramount importance to understand the work that has been performed, who has performed it, its evolution over time, the relationships between publications, its hot topics, and open problems, among others. This paper presents a bibliometric study of the field, with a particular focus on the issue of automatic feedback generation, using literature data from the Web of Science Core Collection. It includes a descriptive analysis using various bibliometric measures and data visualizations on authors, affiliations, citations, and topics. In addition, we performed a complementary analysis focusing only on the subset of publications on the specific topic of automatic feedback generation. The results are highlighted and discussed.

2023

PROGpedia: Collection of source-code submitted to introductory programming assignments

Authors
Paiva, JC; Leal, JP; Figueira, A;

Publication
DATA IN BRIEF

Abstract
Learning how to program is a difficult task. To acquire the re-quired skills, novice programmers must solve a broad range of programming activities, always supported with timely, rich, and accurate feedback. Automated assessment tools play a major role in fulfilling these needs, being a common pres-ence in introductory programming courses. As programming exercises are not easy to produce and those loaded into these tools must adhere to specific format requirements, teachers often opt for reusing them for several years. There-fore, most automated assessment tools, particularly Mooshak, store hundreds of submissions to the same programming ex-ercises, as these need to be kept after automatically pro-cessed for possible subsequent manual revision. Our dataset consists of the submissions to 16 programming exercises in Mooshak proposed in multiple years within the 2003-2020 timespan to undergraduate Computer Science students at the Faculty of Sciences from the University of Porto. In particular, we extract their code property graphs and store them as CSV files. The analysis of this data can enable, for instance, the generation of more concise and personalized feedback based on similar accepted submissions in the past, the identifica-tion of different strategies to solve a problem, the under -standing of a student's thinking process, among many other findings.(c) 2023 The Author(s). Published by Elsevier Inc. This is an open access article under the CC BY license ( http://creativecommons.org/licenses/by/4.0/ )

2023

Jay: A software framework for prototyping and evaluating offloading applications in hybrid edge clouds

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

Publication
SOFTWARE-PRACTICE & EXPERIENCE

Abstract
We present Jay, a software framework for offloading applications in hybrid edge clouds. Jay provides an API, services, and tools that enable mobile application developers to implement, instrument, and evaluate offloading applications using configurable cloud topologies, offloading strategies, and job types. We start by presenting Jay's job model and the concrete architecture of the framework. We then present the programming API with several examples of customization. Then, we turn to the description of the internal implementation of Jay instances and their components. Finally, we describe the Jay Workbench, a tool that allows the setup, execution, and reproduction of experiments with networks of hosts with different resource capabilities organized with specific topologies. The complete source code for the framework and workbench is provided in a GitHub repository.

2023

Automated Assessment of Simple Web Applications (Short Paper)

Authors
Costa, LM; Leal, JP; Queirós, R;

Publication
ICPEC

Abstract
Web programming education is an important component of modern computer science curricula. Assessing students’ web programming skills can be time-consuming and challenging for educators. This paper introduces Webpal, an automated assessment tool for web programming exercises in entry-level courses. Webpal evaluates web applications coded in HTML, CSS, and Javascript, and provides feedback to students. This tool integrates with Virtual Learning Environments (VLEs) through an API, allowing the creation, storage, and access to exercises while assessing student attempts based on the created exercises. The evaluation process comprises various subcomponents: static assessment, interface matching, functional testing, and feedback management. This approach aims to provide feedback that helps students overcome their challenges in web programming assignments. This paper also presents a demo showcasing the tool’s features and functionality in a simulated VLE environment.

2023

Narrative Extraction from Semantic Graphs (Short Paper)

Authors
Lystopadskyi, D; Santos, A; Leal, JP;

Publication
SLATE

Abstract
This paper proposes an interactive approach for narrative extraction from semantic graphs. The proposed approach extracts events from RDF triples, maps them to their corresponding attributes, and assembles them into a chronological sequence to form narrative graphs. The approach is evaluated on the Wikidata graph and achieves promising results in terms of narrative quality and coherence. The paper also discusses several avenues for future work, including the integration of machine learning, graph embedding methods and the exploration of advanced techniques for attention-based narrative labeling and semantic role labeling. Overall, the proposed method offers a promising approach to narrative extraction from semantic graphs and has the potential to be useful in various applications, including chatbots, conversational agents, and content creation tools.

2023

Can a Content Management System Provide a Good User Experience to Teachers? (Short Paper)

Authors
Bauer, Y; Leal, JP; Queirós, R;

Publication
ICPEC

Abstract
The paper discusses an ongoing project that aims to enhance the UX of teachers while using e-learning systems. Specifically, the project focuses on developing the teacher’s user interface (UI) for Agni, a web-based code playground for learning JavaScript. The goal is to design an intuitive UI with valuable features that will encourage more teachers to use the system. To achieve this goal, the paper explores the use of a headless Content Management System (CMS) called Strapi. The primary research question the paper seeks to answer is whether a headless CMS, specifically Strapi, can provide a good UX to teachers. A usability evaluation of the built-in Strapi UI for content creation and management reveals it to be generally consistent and user-friendly but challenging and unintuitive to create courses with programming exercises. As a result, the decision was made to develop a new teacher’s UI based on the existing Agni UI for students in an editable version. Once the development is complete, a new usability evaluation of the fully developed teacher’s UI will be conducted with the Strapi UI evaluation as a baseline for comparison.

  • 20
  • 207