Juri Di Rocco

Dr. Juri Di Rocco

Department of Information Engineering, Computer Science and Mathematics, University of L’Aquila, L'Aquila, Italy

Research Focus & Metrics

Academic Career Length

10Years (2017-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
31 January 2025 in Software and Systems Modeling
Verified
Journal Article
Closed access
PDF file
Juri Di RoccoJuri Di Rocco
Juri Di Rocco
DRDavide Di Ruscio
Davide Di Ruscio
CSClaudio Di Sipio
Claudio Di Sipio
Phuong T. NguyenPhuong T. Nguyen
Phuong T. Nguyen
RRRiccardo Rubei
Riccardo Rubei

1 March 2020 in Journal of Systems and Software
Verified
Journal Article
Closed access
Phuong T. NguyenPhuong T. Nguyen
Phuong T. Nguyen
Juri Di RoccoJuri Di Rocco
Juri Di Rocco
DRDavide Di Ruscio
Davide Di Ruscio
MPMassimiliano Di Penta
Massimiliano Di Penta

16 April 2024 in Journal of Systems and Software
Verified
Journal Article
Open access
Phuong T. NguyenPhuong T. Nguyen
Phuong T. Nguyen
Juri Di RoccoJuri Di Rocco
Juri Di Rocco
CSClaudio Di Sipio
Claudio Di Sipio
RRRiccardo Rubei
Riccardo Rubei
DRDavide Di Ruscio
Davide Di Ruscio
MPMassimiliano Di Penta
Massimiliano Di Penta

14 May 2021 in Empirical Software Engineering
Verified
Journal Article
Open access
PDF file
Juri Di RoccoJuri Di Rocco
Juri Di Rocco
DRDavide Di Ruscio
Davide Di Ruscio
CSClaudio Di Sipio
Claudio Di Sipio
Phuong T. NguyenPhuong T. Nguyen
Phuong T. Nguyen
RRRiccardo Rubei
Riccardo Rubei
To perform their daily tasks, developers intensively make use of existing resources by consulting open source software (OSS) repositories. Such platforms contain rich data sources, e.g., code snippets, documentations, and user discussions, that can be useful for supporting development activities. Over the last decades, several techniques and tools have been promoted to provide developers with innovative features, aiming to bring in improvements in terms of development effort, cost savings, and productivity. In the context of the EU H2020 CROSSMINER project, a set of recommendation systems has been conceived to assist software programmers in different phases of the development process. The systems provide developers with various artifacts, such as third-party libraries, documentation about how to use the APIs being adopted, or relevant API function calls. To develop such recommendations, various technical choices have been made to overcome issues related to several aspects including the lack of baselines, limited data availability, decisions about the performance measures, and evaluation approaches. This paper is an experience report to present the knowledge pertinent to the set of recommendation systems developed through the CROSSMINER project. We explain in detail the challenges we had to deal with, together with the related lessons learned when developing and evaluating these systems. Our aim is to provide the research community with concrete takeaway messages that are expected to be useful for those who want to develop or customize their own recommendation systems. The reported experiences can facilitate interesting discussions and research work, which in the end contribute to the advancement of recommendation systems applied to solve different issues in Software Engineering.

19 February 2021 in IEEE Transactions on Software Engineering
Verified
Journal Article
Closed access
Phuong T. NguyenPhuong T. Nguyen
Phuong T. Nguyen
Juri Di RoccoJuri Di Rocco
Juri Di Rocco
CSClaudio Di Sipio
Claudio Di Sipio
DRDavide Di Ruscio
Davide Di Ruscio
MPMassimiliano Di Penta
Massimiliano Di Penta
Software development activity has reached a high degree of complexity, guided by the heterogeneity of the components, data sources, and tasks. The proliferation of open-source software (OSS) repositories has stressed the need to reuse available software artifacts efficiently. To this aim, it is necessary to explore approaches to mine data from software repositories and leverage it to produce helpful recommendations. We designed and implemented FOCUS as a novel approach to provide developers with API calls and source code while they are programming. The system works on the basis of a context-aware collaborative filtering technique to extract API usages from OSS projects. In this work, we show the suitability of FOCUS for Android programming by evaluating it on a dataset of 2,600 mobile apps. The empirical evaluation results show that our approach outperforms two state-of-the-art API recommenders, UP-Miner and PAM, in terms of prediction accuracy. We also point out that there is no significant relationship between the categories for apps defined in Google Play and their API usages. Finally, we show that participants of a user study positively perceive the API and source code recommended by FOCUS as relevant to the current development context.

29 March 2022 in Software and Systems Modeling
Verified
Journal Article
Open access
PDF file
Juri Di RoccoJuri Di Rocco
Juri Di Rocco
DRDavide Di Ruscio
Davide Di Ruscio
CSClaudio Di Sipio
Claudio Di Sipio
Phuong T. NguyenPhuong T. Nguyen
Phuong T. Nguyen
APAlfonso Pierantonio
Alfonso Pierantonio
Model-driven engineering has been widely applied in software development, aiming to facilitate the coordination among various stakeholders. Such a methodology allows for a more efficient and effective development process. Nevertheless, modeling is a strenuous activity that requires proper knowledge of components, attributes, and logic to reach the level of abstraction required by the application domain. In particular, metamodels play an important role in several paradigms, and specifying wrong entities or attributes in metamodels can negatively impact on the quality of the produced artifacts as well as other elements of the whole process. During the metamodeling phase, modelers can benefit from assistance to avoid mistakes, e.g., getting recommendations like metaclasses and structural features relevant to the metamodel being defined. However, suitable machinery is needed to mine data from repositories of existing modeling artifacts and compute recommendations. In this work, we propose MemoRec, a novel approach that makes use of a collaborative filtering strategy to recommend valuable entities related to the metamodel under construction. Our approach can provide suggestions related to both metaclasses and structured features that should be added in the metamodel under definition. We assess the quality of the work with respect to different metrics, i.e., success rate, precision, and recall. The results demonstrate that MemoRec is capable of suggesting relevant items given a partial metamodel and supporting modelers in their task.