@conference {LTF15, title = {A Software Quality Model for {RPG}}, booktitle = {Proceedings of the 22nd IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER 2015)}, year = {2015}, month = {mar}, pages = {91{\textendash}100}, publisher = {IEEE Computer Society}, organization = {IEEE Computer Society}, address = {Montr{\'e}al, Canada}, abstract = {The IBM i mainframe was designed to manage business applications for which the reliability and quality is a matter of national security. The RPG programming language is the most frequently used one on this platform. The maintainability of the source code has big influence on the development costs, probably this is the reason why it is one of the most attractive, observed and evaluated quality characteristic of all. For improving or at least preserving the maintainability level of software it is necessary to evaluate it regularly. In this study we present a quality model based on the ISO/IEC 25010 international standard for evaluating the maintainability of software systems written in RPG. As an evaluation step of the quality model we show a case study in which we explain how we integrated the quality model as a continuous quality monitoring tool into the business processes of a mid-size software company which has more than twenty years of experience in developing RPG applications.}, keywords = {Case Study, IBM i mainframe, ISO/IEC 25010, RPG quality model, Software maintainability}, doi = {10.1109/SANER.2015.7081819}, url = {http://ieeexplore.ieee.org/document/7081819/}, author = {Lad{\'a}nyi, Gergely and T{\'o}th, Zolt{\'a}n and Rudolf Ferenc and Keresztesi, Tibor} } @conference {DVF14, title = {Service Layer for {IDE} Integration of {C/C++} Preprocessor Related Analysis}, booktitle = {Proceedings of the 14th International Conference on Computational Science and Its Applications (ICCSA 2014)}, series = {Lecture Notes in Computer Science (LNCS)}, volume = {8583}, year = {2014}, month = {jun}, publisher = {Springer-Verlag}, organization = {Springer-Verlag}, address = {Guimar{\~a}es, Portugal}, abstract = {Software development in C/C++ languages is tightly coupled with preprocessor directives. While the use of preprocessor constructs cannot be avoided, current IDE support for developers can still be improved. Early feedback from IDEs about misused macros or conditional compilation has positive effects on developer productivity and code quality as well. In this paper we introduce a service layer for the Visual Studio to make detailed preprocessor information accessible for any type of IDE extensions. The service layer is built upon our previous work on the analysis of directives. We wrap the analyzer tool and provide its functionality through an API. We present the public interface of the service and demonstrate the provided services through small plug-ins implemented using various extension mechanisms. These plug-ins work together to aid the daily work of developers in several ways. We provide (1) an editor extension through the Managed Extensibility Framework which provides macro highlighting within the source code editor; (2) detailed information about actual macro substitutions and an alternative code view to show the results of macro calls; (3) a managed package for discovering the intermediate steps of macro replacements through a macro explorer. The purpose of this work is twofold: we present an additional layer designed to aid the work of tool developers; second, we provide directly usable IDE components to express its potentials.}, doi = {10.1007/978-3-319-09156-3_29}, url = {https://link.springer.com/chapter/10.1007\%2F978-3-319-09156-3_29}, author = {D{\'e}vai, Rich{\'a}rd and L{\'a}szl{\'o} Vid{\'a}cs and Rudolf Ferenc and Tibor Gyim{\'o}thy} } @inbook {FHG14, title = {Software Product Quality Models}, booktitle = {Evolving Software Systems}, year = {2014}, pages = {65{\textendash}100}, publisher = {Springer Berlin Heidelberg}, organization = {Springer Berlin Heidelberg}, chapter = {3}, abstract = {Both for software developers and managers it is crucial to have information about different aspects of the quality of their systems. This chapter gives a brief overview about the history of software product quality measurement, focusing on software maintainability, and the existing approaches and high-level models for characterizing software product quality. The most widely accepted and used practical maintainability models and the state-of-the-art works in the subject are introduced. These models play a very important role in software evolution by allowing to estimate future development costs, assess risks, or support management decisions. Based on objective aspects, the implementations of the most popular software maintainability models are compared and evaluated. The evaluation includes the Quality Index, SQALE, SQUALE, SIG, QUAMOCO, and Columbus Quality Model. The chapter presents the result of comparing the features and stability of the tools and the different models on a large number of open-source Java projects.}, isbn = {978-3-642-45397-7}, doi = {10.1007/978-3-642-45398-4_3}, url = {https://link.springer.com/chapter/10.1007/978-3-642-45398-4_3}, author = {Rudolf Ferenc and P Heged{\H u}s and Tibor Gyim{\'o}thy} } @conference {FLS14, title = {{SourceMeter} {SonarQube} plug-in}, booktitle = {Proceedings of the 14th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2014)}, year = {2014}, month = {sep}, pages = {77{\textendash}82}, publisher = {IEEE Computer Society}, organization = {IEEE Computer Society}, address = {Victoria, British Columbia, Canada}, abstract = {The SourceMeter Sonar Qube plug-in is an extension of Sonar Qube, an open-source platform for managing code quality made by Sonar Source S.A, Switzerland. The plug-in extends the built-in Java code analysis engine of Sonar Qube with Front End ART{\textquoteright}s high-end Java code analysis engine. Most of Sonar Qubes original analysis results are replaced (including the detected source code duplications), while the range of available analyses is extended with a number of additional metrics and issue detectors. Additionally, the plug-in offers new GUI features on the Sonar Qube dashboard and drilldown views, making the Sonar Qube user experience more comfortable and the work with the tool more productive.}, keywords = {clone detection, coding issues, metrics, plug-in, software quality, Sonar Qube, Source Meter}, doi = {10.1109/SCAM.2014.31}, url = {http://ieeexplore.ieee.org/document/6975640/}, author = {Rudolf Ferenc and Lang{\'o}, L{\'a}szl{\'o} and Istv{\'a}n Siket and Tibor Gyim{\'o}thy and Tibor Bakota} } @conference {MSF13, title = {A Semi-automatic Usability Evaluation Framework}, booktitle = {Proceedings of the 13th International Conference on Computational Science and Its Applications (ICCSA 2013)}, series = {Lecture Notes in Computer Science (LNCS)}, volume = {7973}, year = {2013}, month = {jun}, pages = {529{\textendash}542}, publisher = {Springer-Verlag}, organization = {Springer-Verlag}, address = {Ho Chi Minh City, Vietnam}, abstract = {Most of the software maintenance costs come from usability bugs reported after the release and deployment. A usability bug is really subjective, hence there is a large communication overhead between the end user and the developer. Moreover, the reputation of the software development company could be decreased as well. Therefore, proactively testing and maintaining software systems from a usability point of view is unambiguously beneficial. In this paper we propose a research prototype, the Usability Evaluation Framework. The development of the framework is driven by welldefined requirements. It is built upon a usability model, it calculates usability metrics, it integrates questionnaires and it also ensures several meaningful reports. We have successfully applied the framework to evaluate and to improve the usability of two industrial software systems.}, doi = {10.1007/978-3-642-39643-4_38}, url = {https://link.springer.com/chapter/10.1007\%2F978-3-642-39643-4_38}, author = {Muhi, Korn{\'e}l and Sz{\H o}ke, G{\'a}bor and F{\"u}l{\"o}p, Lajos Jen{\H o} and Rudolf Ferenc and Berger, {\'A}goston} } @conference {16351, title = {A Semi-automatic Usability Evaluation Framework}, booktitle = {Computational Science and Its Applications {\textendash} ICCSA 2013}, year = {2013}, pages = {529{\textendash}542}, publisher = {"Springer-Verlag"address}, organization = {"Springer-Verlag"address}, address = {Berlin; Heidelberg}, abstract = {Most of the software maintenance costs come from usability bugs reported after the release and deployment. A usability bug is really subjective, hence there is a large communication overhead between the end user and the developer. Moreover, the reputation of the software development company could be decreased as well. Therefore, proactively testing and maintaining software systems from a usability point of view is unambiguously beneficial. In this paper we propose a research prototype, the Usability Evaluation Framework. The development of the framework is driven by welldefined requirements. It is built upon a usability model, it calculates usability metrics, it integrates questionnaires and it also ensures several meaningful reports. We have successfully applied the framework to evaluate and to improve the usability of two industrial software systems.}, author = {Korn{\'e}l Muhi and G{\'a}bor Sz{\H o}ke and F{\"u}l{\"o}p, L.J. and Rudolf Ferenc and {\'A}goston Berger}, editor = {Beniamino Murgante and Sanjay Misra and Maurizio Carlini and Carmelo M Torre and Hong-Quang Nguyen and David Taniar and Bernady O Apduhan and Osvaldo Gervasi} } @conference {16331, title = {Software Quality Model and Framework with Applications in Industrial Context}, booktitle = {Proceedings of the16th European Conference on Software Maintenance and Reengineering (CSMR{\textquoteright}12)}, year = {2012}, pages = {453{\textendash}456}, publisher = {IEEE Computer Society}, organization = {IEEE Computer Society}, address = {Los Alamitos}, author = {Schrettner, L. and F{\"u}l{\"o}p, L.J. and {\'A}rp{\'a}d Besz{\'e}des and {\'A}kos Kiss and Tibor Gyim{\'o}thy}, editor = {T. Mens and A. Cleve and Rudolf Ferenc} } @conference {Nagy2011CSMR, title = {Solutions for Reverse Engineering 4GL Applications, Recovering the Design of a Logistical Wholesale System}, booktitle = {Proceedings of CSMR 2011 (15th European Conference on Software Maintenance and Reengineering)}, year = {2011}, pages = {343-346}, publisher = {IEEE Computer Society}, organization = {IEEE Computer Society}, doi = {10.1109/CSMR.2011.66}, author = {Csaba Nagy and L{\'a}szl{\'o} Vid{\'a}cs and Rudolf Ferenc and Tibor Gyim{\'o}thy and Kocsis, F. and I. Kov{\'a}cs} } @conference {conf/fgit/HegedusBILFG11, title = {Source Code Metrics and Maintainability: A Case Study.}, booktitle = {FGIT-ASEA/DRBC/EL}, series = {Communications in Computer and Information Science}, volume = {257}, year = {2011}, pages = {272-284}, publisher = {Springer}, organization = {Springer}, keywords = {dblp}, isbn = {978-3-642-27206-6}, url = {http://dblp.uni-trier.de/db/conf/fgit/asea2011.html$\#$HegedusBILFG11}, author = {P Heged{\H u}s and Tibor Bakota and L. Ill{\'e}s and G. Lad{\'a}nyi and Rudolf Ferenc and Tibor Gyim{\'o}thy}, editor = {Kim, Tai-Hoon and Adeli, Hojjat and Kim, Haeng-Kon and Kang, Heau-Jo and Kim, Kyung Jung and Kiumi, Akingbehin and Kang, Byeong Ho} } @conference {HFF09, title = {Script2Ant - a tool for cross-platform scripting between different operating systems}, booktitle = {Proceedings of the 11th Symposium on Programming Languages and Software Tools and 7th Nordic Workshop on Model Driven Software Engineering (SPLST{\textquoteright}09)}, year = {2009}, month = {aug}, pages = {45-48}, author = {Gy. Heged{\H u}s and F{\"u}l{\"o}p, L.J. and Rudolf Ferenc} } @article {BFG03, title = {{Survey of Code-Size Reduction Methods}}, journal = {ACM Computing Surveys}, volume = {35}, number = {3}, year = {2003}, month = {sep}, pages = {223-267}, keywords = {software quality selected}, author = {{\'A}rp{\'a}d Besz{\'e}des and Rudolf Ferenc and Tibor Gyim{\'o}thy and A. Dolenc and K. Karsisto} } @booklet {Ferenc01ashort, title = {A short introduction to {Columbus/CAN}}, year = {2001}, author = {Rudolf Ferenc and {\'A}rp{\'a}d Besz{\'e}des and F. Magyar and Tibor Gyim{\'o}thy} }