Pasquale Ardimento | Università degli Studi di Bari (original) (raw)

Uploads

Papers by Pasquale Ardimento

Research paper thumbnail of Technical Debt Dataset

Research paper thumbnail of UML Miner: A Tool for Mining UML Diagrams

Research paper thumbnail of Enhancing Bug-Fixing Time Prediction with LSTM-Based Approach

Lecture Notes in Computer Science, Dec 1, 2023

Research paper thumbnail of Mining Developer's Behavior from Web-Based IDE Logs

The birth of cloud-based development environments makes available an increasing number of data co... more The birth of cloud-based development environments makes available an increasing number of data coming out from the interaction of different developers with a diverse level of expertise. This data, if opportunely captured and analyzed, can be useful to understand how developers head the coding activities and can suggest members of developers community how to improve their performances. This paper presents a framework allowing to generate event logs from cloud-based IDE. These event logs are then examined using a process mining technique to extract the developers' coding processes and compare them in the shared coding environment. The approach can be used to discover emergent and interesting developers' behavior. Thus, we compare the coding process extracted by developers with different skills. To validate our approach, we describe the results of a study in which we investigate the coding activities of forty students of an advanced Java programming course performing a given programming task—during four assignments. Results also prove that users with different performances possess distinct attitudes highlighting that the adopted process mining technique can be useful to comprehend how developers can improve their coding skills.

Research paper thumbnail of Flipping the Laboratory in an Academic Course on Object-Oriented Paradigm

Research paper thumbnail of Knowledge Management Integrated with e-learning in Open Innovation

DOAJ (DOAJ: Directory of Open Access Journals), Oct 1, 2012

This paper presents a framework aiming to support an «innovation chain» in an Open Innovation (OI... more This paper presents a framework aiming to support an «innovation chain» in an Open Innovation (OI) perspective. In order to transfer research results from producers to users, it is necessary to develop a Knowledge Manage-ment System supporting formalization, packaging and characterization to be able to select, understand and collect research results and/or innovations deriving from them. Suitable skills are required to transfer and collect innovation. Since in OI the knowledge producer and fi nal users are by defi nition geographically distant, the required specialist skills have to be acquired through an e-learning system. This system must offer Learning Objects that can be combined within a course that also takes into account the user’s past experiences. This work proposes an approach based on the integration of these two systems, and presents PROMETHEUS, a tool supporting this approach. The results of preliminary experimentation highlighted the strengths and weaknesses of the approach. They will be used to plan further experimentation and initiatives serving to facilitate the transfer of research results from state of the art to state of practice.

Research paper thumbnail of Predicting Bug-Fixing Time: DistilBERT Versus Google BERT

Research paper thumbnail of Design patterns mining using neural sub-graph matching

Proceedings of the 37th ACM/SIGAPP Symposium on Applied Computing

Research paper thumbnail of Evo-GUNet3++: Using evolutionary algorithms to train UNet-based architectures for efficient 3D lung cancer detection

Research paper thumbnail of Just-in-time software defect prediction using deep temporal convolutional networks

Neural Computing and Applications, 2021

Software maintenance and evolution can introduce defects in software systems. For this reason, th... more Software maintenance and evolution can introduce defects in software systems. For this reason, there is a great interest to identify defect prediction and estimation techniques. Recent research proposes just-in-time techniques to predict defective changes just at the commit level allowing the developers to fix the defect when it is introduced. However, the performance of existing just-in-time defect prediction models still requires to be improved. This paper proposes a new approach based on a large feature set containing product and process software metrics extracted from commits of software projects along with their evolution. The approach also introduces a deep temporal convolutional networks variant based on hierarchical attention layers to perform the fault prediction. The proposed approach is evaluated on a large dataset, composed of data gathered from six Java open-source systems. The obtained results show the effectiveness of the proposed approach in timely predicting defect proneness of code components.

Research paper thumbnail of Transfer Learning for Just-in-Time Design Smells Prediction using Temporal Convolutional Networks

This paper investigates whether the adoption of a transfer learning approach can be effective for... more This paper investigates whether the adoption of a transfer learning approach can be effective for just-in-time design smells prediction. The approach uses a variant of Temporal Convolutional Networks to predict design smells and a carefully selected fine-grained process and product metrics. The validation is performed on a dataset composed of three open-source systems and includes a comparison between transfer and direct learning. The hypothesis, which we want to verify, is that the proposed transfer learning approach is feasible to transfer the knowledge gained on mature systems to the system of interest to make reliable predictions even at the beginning of development when the available historical data is limited. The obtained results show that, when the class imbalance is high, the transfer learning provides F1-scores very close to the ones obtained by

Research paper thumbnail of Transfer Learning for Just-in-Time Design Smells Prediction using Temporal Convolutional Networks

Proceedings of the 16th International Conference on Software Technologies

This paper investigates whether the adoption of a transfer learning approach can be effective for... more This paper investigates whether the adoption of a transfer learning approach can be effective for just-in-time design smells prediction. The approach uses a variant of Temporal Convolutional Networks to predict design smells and a carefully selected fine-grained process and product metrics. The validation is performed on a dataset composed of three open-source systems and includes a comparison between transfer and direct learning. The hypothesis, which we want to verify, is that the proposed transfer learning approach is feasible to transfer the knowledge gained on mature systems to the system of interest to make reliable predictions even at the beginning of development when the available historical data is limited. The obtained results show that, when the class imbalance is high, the transfer learning provides F1-scores very close to the ones obtained by direct learning.

Research paper thumbnail of Just-in-time software defect prediction using deep temporal convolutional networks

Neural Computing and Applications, Nov 14, 2021

Software maintenance and evolution can introduce defects in software systems. For this reason, th... more Software maintenance and evolution can introduce defects in software systems. For this reason, there is a great interest to identify defect prediction and estimation techniques. Recent research proposes just-in-time techniques to predict defective changes just at the commit level allowing the developers to fix the defect when it is introduced. However, the performance of existing just-in-time defect prediction models still requires to be improved. This paper proposes a new approach based on a large feature set containing product and process software metrics extracted from commits of software projects along with their evolution. The approach also introduces a deep temporal convolutional networks variant based on hierarchical attention layers to perform the fault prediction. The proposed approach is evaluated on a large dataset, composed of data gathered from six Java open-source systems. The obtained results show the effectiveness of the proposed approach in timely predicting defect proneness of code components.

Research paper thumbnail of Using deep temporal convolutional networks to just-in-time forecast technical debt principal

Journal of Systems and Software

Research paper thumbnail of Evo-GUNet3++: Using evolutionary algorithms to train UNet-based architectures for efficient 3D lung cancer detection

Research paper thumbnail of Temporal convolutional networks for just-in-time design smells prediction using fine-grained software metrics

Research paper thumbnail of Predicting Bug-Fixing Time Using the Latent Dirichlet Allocation Model with Covariates

Communications in computer and information science, 2023

Research paper thumbnail of Managing Domain Analysis in Software Product Lines with Decision Tables: An Approach for Decision Representation, Anomaly Detection and Resolution

Proceedings of the 18th International Conference on Evaluation of Novel Approaches to Software Engineering

Research paper thumbnail of A Supervised Generative Topic Model to Predict Bug-fixing Time on Open Source Software Projects

Research paper thumbnail of Towards automatic assessment of object-oriented programs

Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Companion Proceedings

The computing education community has shown a long-time interest in how to analyze the Object-Ori... more The computing education community has shown a long-time interest in how to analyze the Object-Oriented (OO) source code developed by students to provide them with useful formative tips. In this paper, we propose and evaluate an approach to analyze how students use Java and its language constructs. The approach is implemented through a cloud-based integrated development environment (IDE) and it is based on the analysis of the most common violations of the OO paradigm in the student source code. Moreover, the IDE supports the automatic generation of reports about student’s mistakes and misconceptions that can be used by instructors to improve the course design. The paper discusses the preliminary results of an experiment performed in a class of a Programming II course to investigate the effects of the provided reports in terms of coding ability (concerning the correctness of the produced code).

Research paper thumbnail of Technical Debt Dataset

Research paper thumbnail of UML Miner: A Tool for Mining UML Diagrams

Research paper thumbnail of Enhancing Bug-Fixing Time Prediction with LSTM-Based Approach

Lecture Notes in Computer Science, Dec 1, 2023

Research paper thumbnail of Mining Developer's Behavior from Web-Based IDE Logs

The birth of cloud-based development environments makes available an increasing number of data co... more The birth of cloud-based development environments makes available an increasing number of data coming out from the interaction of different developers with a diverse level of expertise. This data, if opportunely captured and analyzed, can be useful to understand how developers head the coding activities and can suggest members of developers community how to improve their performances. This paper presents a framework allowing to generate event logs from cloud-based IDE. These event logs are then examined using a process mining technique to extract the developers' coding processes and compare them in the shared coding environment. The approach can be used to discover emergent and interesting developers' behavior. Thus, we compare the coding process extracted by developers with different skills. To validate our approach, we describe the results of a study in which we investigate the coding activities of forty students of an advanced Java programming course performing a given programming task—during four assignments. Results also prove that users with different performances possess distinct attitudes highlighting that the adopted process mining technique can be useful to comprehend how developers can improve their coding skills.

Research paper thumbnail of Flipping the Laboratory in an Academic Course on Object-Oriented Paradigm

Research paper thumbnail of Knowledge Management Integrated with e-learning in Open Innovation

DOAJ (DOAJ: Directory of Open Access Journals), Oct 1, 2012

This paper presents a framework aiming to support an «innovation chain» in an Open Innovation (OI... more This paper presents a framework aiming to support an «innovation chain» in an Open Innovation (OI) perspective. In order to transfer research results from producers to users, it is necessary to develop a Knowledge Manage-ment System supporting formalization, packaging and characterization to be able to select, understand and collect research results and/or innovations deriving from them. Suitable skills are required to transfer and collect innovation. Since in OI the knowledge producer and fi nal users are by defi nition geographically distant, the required specialist skills have to be acquired through an e-learning system. This system must offer Learning Objects that can be combined within a course that also takes into account the user’s past experiences. This work proposes an approach based on the integration of these two systems, and presents PROMETHEUS, a tool supporting this approach. The results of preliminary experimentation highlighted the strengths and weaknesses of the approach. They will be used to plan further experimentation and initiatives serving to facilitate the transfer of research results from state of the art to state of practice.

Research paper thumbnail of Predicting Bug-Fixing Time: DistilBERT Versus Google BERT

Research paper thumbnail of Design patterns mining using neural sub-graph matching

Proceedings of the 37th ACM/SIGAPP Symposium on Applied Computing

Research paper thumbnail of Evo-GUNet3++: Using evolutionary algorithms to train UNet-based architectures for efficient 3D lung cancer detection

Research paper thumbnail of Just-in-time software defect prediction using deep temporal convolutional networks

Neural Computing and Applications, 2021

Software maintenance and evolution can introduce defects in software systems. For this reason, th... more Software maintenance and evolution can introduce defects in software systems. For this reason, there is a great interest to identify defect prediction and estimation techniques. Recent research proposes just-in-time techniques to predict defective changes just at the commit level allowing the developers to fix the defect when it is introduced. However, the performance of existing just-in-time defect prediction models still requires to be improved. This paper proposes a new approach based on a large feature set containing product and process software metrics extracted from commits of software projects along with their evolution. The approach also introduces a deep temporal convolutional networks variant based on hierarchical attention layers to perform the fault prediction. The proposed approach is evaluated on a large dataset, composed of data gathered from six Java open-source systems. The obtained results show the effectiveness of the proposed approach in timely predicting defect proneness of code components.

Research paper thumbnail of Transfer Learning for Just-in-Time Design Smells Prediction using Temporal Convolutional Networks

This paper investigates whether the adoption of a transfer learning approach can be effective for... more This paper investigates whether the adoption of a transfer learning approach can be effective for just-in-time design smells prediction. The approach uses a variant of Temporal Convolutional Networks to predict design smells and a carefully selected fine-grained process and product metrics. The validation is performed on a dataset composed of three open-source systems and includes a comparison between transfer and direct learning. The hypothesis, which we want to verify, is that the proposed transfer learning approach is feasible to transfer the knowledge gained on mature systems to the system of interest to make reliable predictions even at the beginning of development when the available historical data is limited. The obtained results show that, when the class imbalance is high, the transfer learning provides F1-scores very close to the ones obtained by

Research paper thumbnail of Transfer Learning for Just-in-Time Design Smells Prediction using Temporal Convolutional Networks

Proceedings of the 16th International Conference on Software Technologies

This paper investigates whether the adoption of a transfer learning approach can be effective for... more This paper investigates whether the adoption of a transfer learning approach can be effective for just-in-time design smells prediction. The approach uses a variant of Temporal Convolutional Networks to predict design smells and a carefully selected fine-grained process and product metrics. The validation is performed on a dataset composed of three open-source systems and includes a comparison between transfer and direct learning. The hypothesis, which we want to verify, is that the proposed transfer learning approach is feasible to transfer the knowledge gained on mature systems to the system of interest to make reliable predictions even at the beginning of development when the available historical data is limited. The obtained results show that, when the class imbalance is high, the transfer learning provides F1-scores very close to the ones obtained by direct learning.

Research paper thumbnail of Just-in-time software defect prediction using deep temporal convolutional networks

Neural Computing and Applications, Nov 14, 2021

Software maintenance and evolution can introduce defects in software systems. For this reason, th... more Software maintenance and evolution can introduce defects in software systems. For this reason, there is a great interest to identify defect prediction and estimation techniques. Recent research proposes just-in-time techniques to predict defective changes just at the commit level allowing the developers to fix the defect when it is introduced. However, the performance of existing just-in-time defect prediction models still requires to be improved. This paper proposes a new approach based on a large feature set containing product and process software metrics extracted from commits of software projects along with their evolution. The approach also introduces a deep temporal convolutional networks variant based on hierarchical attention layers to perform the fault prediction. The proposed approach is evaluated on a large dataset, composed of data gathered from six Java open-source systems. The obtained results show the effectiveness of the proposed approach in timely predicting defect proneness of code components.

Research paper thumbnail of Using deep temporal convolutional networks to just-in-time forecast technical debt principal

Journal of Systems and Software

Research paper thumbnail of Evo-GUNet3++: Using evolutionary algorithms to train UNet-based architectures for efficient 3D lung cancer detection

Research paper thumbnail of Temporal convolutional networks for just-in-time design smells prediction using fine-grained software metrics

Research paper thumbnail of Predicting Bug-Fixing Time Using the Latent Dirichlet Allocation Model with Covariates

Communications in computer and information science, 2023

Research paper thumbnail of Managing Domain Analysis in Software Product Lines with Decision Tables: An Approach for Decision Representation, Anomaly Detection and Resolution

Proceedings of the 18th International Conference on Evaluation of Novel Approaches to Software Engineering

Research paper thumbnail of A Supervised Generative Topic Model to Predict Bug-fixing Time on Open Source Software Projects

Research paper thumbnail of Towards automatic assessment of object-oriented programs

Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Companion Proceedings

The computing education community has shown a long-time interest in how to analyze the Object-Ori... more The computing education community has shown a long-time interest in how to analyze the Object-Oriented (OO) source code developed by students to provide them with useful formative tips. In this paper, we propose and evaluate an approach to analyze how students use Java and its language constructs. The approach is implemented through a cloud-based integrated development environment (IDE) and it is based on the analysis of the most common violations of the OO paradigm in the student source code. Moreover, the IDE supports the automatic generation of reports about student’s mistakes and misconceptions that can be used by instructors to improve the course design. The paper discusses the preliminary results of an experiment performed in a class of a Programming II course to investigate the effects of the provided reports in terms of coding ability (concerning the correctness of the produced code).