@conference {KHF16c, title = {Assessment of the Code Refactoring Dataset Regarding the Maintainability of Methods}, booktitle = {Proceedings of the 16th International Conference on Computational Science and Its Applications (ICCSA 2016)}, year = {2016}, month = {jul}, pages = {610{\textendash}624}, publisher = {Springer International Publishing}, organization = {Springer International Publishing}, address = {Beijing, China}, abstract = {Code refactoring has a solid theoretical background while being used in development practice at the same time. However, previous works found controversial results on the nature of code refactoring activities in practice. Both their application context and impact on code quality needs further examination. Our paper encourages the investigation of code refactorings in practice by providing an excessive open dataset of source code metrics and applied refactorings through several releases of 7 open-source systems. We already demonstrated the practical value of the dataset by analyzing the quality attributes of the refactored source code classes and the values of source code metrics improved by those refactorings. In this paper, we have gone one step deeper and explored the effect of code refactorings at the level of methods. We found that similarly to class level, lower maintainability indeed triggers more code refactorings in practice at the level of methods and these refactorings significantly decrease size, coupling and clone metrics.}, keywords = {Code refactoring, Empirical study, Refactoring dataset, Software maintainability}, doi = {10.1007/978-3-319-42089-9_43}, url = {https://link.springer.com/chapter/10.1007\%2F978-3-319-42089-9_43}, author = {K{\'a}d{\'a}r, Istv{\'a}n and P Heged{\H u}s and Rudolf Ferenc and Tibor Gyim{\'o}thy} } @conference {KHF15, title = {Adding Constraint Building Mechanisms to a Symbolic Execution Engine Developed for Detecting Runtime Errors}, booktitle = {Proceedings of the 15th International Conference on Computational Science and Its Applications (ICCSA 2015)}, series = {Lecture Notes in Computer Science (LNCS)}, volume = {9159}, year = {2015}, month = {jun}, pages = {20{\textendash}35}, publisher = {Springer-Verlag}, organization = {Springer-Verlag}, address = {Banff, Alberta, Canada}, abstract = {Most of the runtime failures of a software system can be revealed during test execution only, which has a very high cost. The symbolic execution engine developed at the Software Engineering Department of University of Szeged is able to detect runtime errors (such as null pointer dereference, bad array indexing, division by zero) in Java programs without running the program in real-life environment. In this paper we present a constraint system building mechanism which improves the accuracy of the runtime errors found by the symbolic execution engine mentioned above. We extend the original principles of symbolic execution by tracking the dependencies of the symbolic variables and substituting them with concrete values if the built constraint system unambiguously determines their value. The extended symbolic execution checker was tested on real-life open-source systems as well.}, keywords = {Constraint system building, Java runtime errors, Software engineering, symbolic execution}, doi = {10.1007/978-3-319-21413-9_2}, url = {https://link.springer.com/chapter/10.1007\%2F978-3-319-21413-9_2}, author = {K{\'a}d{\'a}r, Istv{\'a}n and P Heged{\H u}s and Rudolf Ferenc} } @mastersthesis {Heg15, title = {Advances in Software Product Quality Measurement and its Applications in Software Evolution}, year = {2015}, note = {Supervisor: Rudolf Ferenc}, school = {University of Szeged}, type = {phdphdthesis}, address = {Szeged, Hungary}, url = {http://doktori.bibl.u-szeged.hu/2265/}, author = {P Heged{\H u}s} }