Luca Ardito

h-index19
2papers
971citations

2 Papers

8.0SEApr 24
Enhancing a gamified tool for UML modeling education

Giacomo Garaccione, Riccardo Coppola, Luca Ardito

Unified Modeling Language (UML) Use Case and Class Diagrams are fundamental modeling notations in Software Engineering (SE) education due to their importance for requirements and model-based engineering, yet their relevance is underestimated by students, who tend to dismiss the topic as secondary. Gamification has been adopted to make modeling education more appealing, but existing tools focus almost exclusively on class diagrams, leaving support for use cases and other notations unexplored. In 2025, we designed UMLegend, a gamified tool for class diagrams that offered dynamic feedback to help students learn correct modeling practices and multiple long-term mechanics to increase engagement, and performed a study with the tool. With this paper, we describe how we enhanced UMLegend following the results of the experiment so that it can support more modeling languages, with use case diagrams being added to the type of available exercises in the tool. The revised version has been refactored to have a modular architecture, to make it easier to add other software engineering topics and additional modeling notations. We also describe the potential impact we expect the new version to have, and outline a longitudinal study we intend to perform in 2026 where we will assess whether long-term UML gamification leads to improved student performance.

9.9SEAug 18, 2019Code
Characterizing the transition to Kotlin of Android apps: a study on F-Droid, Play Store and GitHub

Riccardo Coppola, Luca Ardito, Marco Torchiano

Kotlin is a novel language that represents an alternative to Java, and has been recently adopted as a first-class programming language for Android applications. Kotlin is achieving a significant diffusion among developers, and several studies have highlighted various advantages of the language when compared to Java. The objective of this paper is to analyze a set of open-source Android apps, to evaluate their transition to the Kotlin programming language throughout their lifespan and understand whether the adoption of Kotlin has impacts on the success of Android apps. We mined all the projects from the F-Droid repository of Android open-source applications, and we found the corresponding projects on the official Google Play Store and on the GitHub platform. We defined a set of eight metrics to quantify the relevance of Kotlin code in the latest update and through all releases of an application. Then, we statistically analyzed the correlation between the presence of Kotlin code in a project and popularity metrics mined from the platforms where the apps were released. Of a set of 1232 projects that were updated after October 2017, near 20% adopted Kotlin and about 12% had more Kotlin code than Java; most of the projects that adopted Kotlin quickly transitioned from Java to the new language. The projects featuring Kotlin had on average higher popularity metrics; a statistically significant correlation has been found between the presence of Kotlin and the number of stars on the GitHub repository. The Kotlin language seems able to guarantee a seamless migration from Java for Android developers. With an inspection on a large set of open-source Android apps, we observed that the adoption of the Kotlin language is rapid (when compared to the average lifespan of an Android project) and seems to come at no cost in terms of popularity among the users and other developers.