Miroslaw Staron

Prof. Dr. Miroslaw Staron

Department of Computer Science and Engineering, University of Gothenburg, 405 30 Gothenburg, Sweden

Research Focus & Metrics

Academic Career Length

22Years (2005-Present)

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

Representative Publications

View All Publications
1 July 2018 in Journal of Systems and Software
Verified
Journal Article
Closed access
SMSalome Maro
Salome Maro
JSJan-Philipp Steghöfer
Jan-Philipp Steghöfer
MSMiroslaw Staron
Miroslaw Staron

1 January 2021
Verified
Book
Closed access
MSMiroslaw Staron
Miroslaw Staron

9 March 2017 in Empirical Software Engineering
Verified
Journal Article
Open access
PDF file
VAVard Antinyan
Vard Antinyan
MSMiroslaw Staron
Miroslaw Staron
ASAnna Sandberg
Anna Sandberg
Code complexity has been studied intensively over the past decades because it is a quintessential characterizer of code’s internal quality. Previously, much emphasis has been put on creating code complexity measures and applying these measures in practical contexts. To date, most measures are created based on theoretical frameworks, which determine the expected properties that a code complexity measure should fulfil. Fulfilling the necessary properties, however, does not guarantee that the measure characterizes the code complexity that is experienced by software engineers. Subsequently, code complexity measures often turn out to provide rather superficial insights into code complexity. This paper supports the discipline of code complexity measurement by providing empirical insights into the code characteristics that trigger complexity, the use of code complexity measures in industry, and the influence of code complexity on maintenance time. Results of an online survey, conducted in seven companies and two universities with a total of 100 respondents, show that among several code characteristics, two substantially increase code complexity, which subsequently have a major influence on the maintenance time of code. Notably, existing code complexity measures are poorly used in industry.

18 February 2025 in Empirical Software Engineering
Verified
Journal Article
Open access
PDF file
SPSushant Kumar Pandey
Sushant Kumar Pandey
SCSivajeet Chand
Sivajeet Chand
JHJennifer Horkoff
Jennifer Horkoff
MSMiroslaw Staron
Miroslaw Staron
MOMiroslaw Ochodek
Miroslaw Ochodek
DDDarko Durisic
Darko Durisic
Context: As Software Engineering (SE) practices evolve due to extensive increases in software size and complexity, the importance of tools to analyze and understand source code grows significantly. Objective: This study aims to evaluate the abilities of Large Language Models (LLMs) in identifying DPs in source code, which can facilitate the development of better Design Pattern Recognition (DPR) tools. We compare the effectiveness of different LLMs in capturing semantic information relevant to the DPR task. Methods: We studied Gang of Four (GoF) DPs from the P-MARt repository of curated Java projects. State-of-the-art language models, including Code2Vec, CodeBERT, CodeGPT, CodeT5, and RoBERTa, are used to generate embeddings from source code. These embeddings are then used for DPR via a k-nearest neighbors prediction. Precision, recall, and F1-score metrics are computed to evaluate performance. Results: RoBERTa is the top performer, followed by CodeGPT and CodeBERT, which showed mean F1 Scores of 0.91, 0.79, and 0.77, respectively. The results show that LLMs without explicit pre-training can effectively store semantics and syntactic information, which can be used in building better DPR tools. Conclusion: The performance of LLMs in DPR is comparable to existing state-of-the-art methods but with less effort in identifying pattern-specific rules and pre-training. Factors influencing prediction performance in Java files/programs are analyzed. These findings can advance software engineering practices and show the importance and abilities of LLMs for effective DPR in source code.

27 May 2020 in Empirical Software Engineering
Verified
Journal Article
Open access
PDF file
PPPeter Pickerill
Peter Pickerill
HJHeiko Joshua Jungen
Heiko Joshua Jungen
MOMirosław Ochodek
Mirosław Ochodek
MMMichał Maćkowiak
Michał Maćkowiak
MSMiroslaw Staron
Miroslaw Staron
Context: Within the field of Mining Software Repositories, there are numerous methods employed to filter datasets in order to avoid analysing low-quality projects. Unfortunately, the existing filtering methods have not kept up with the growth of existing data sources, such as GitHub, and researchers often rely on quick and dirty techniques to curate datasets. Objective: The objective of this study is to develop a method capable of filtering large quantities of software projects in a resource-efficient way. Method: This study follows the Design Science Research (DSR) methodology. The proposed method, PHANTOM, extracts five measures from Git logs. Each measure is transformed into a time-series, which is represented as a feature vector for clustering using the k-means algorithm. Results: Using the ground truth from a previous study, PHANTOM was shown to be able to rediscover the ground truth on the training dataset, and was able to identify “engineered” projects with up to 0.87 Precision and 0.94 Recall on the validation dataset. PHANTOM downloaded and processed the metadata of 1,786,601 GitHub repositories in 21.5 days using a single personal computer, which is over 33% faster than the previous study which used a computer cluster of 200 nodes. The possibility of applying the method outside of the open-source community was investigated by curating 100 repositories owned by two companies. Conclusions: It is possible to use an unsupervised approach to identify engineered projects. PHANTOM was shown to be competitive compared to the existing supervised approaches while reducing the hardware requirements by two orders of magnitude.

1 July 2020 in Information and Software Technology
Verified
Journal Article
Closed access
MOMirosław Ochodek
Mirosław Ochodek
SKSylwia Kopczyńska
Sylwia Kopczyńska
MSMiroslaw Staron
Miroslaw Staron