@mastersthesis{MTMT:26135521, title = {Transformations of Erlang programs based on complexity metrics}, url = {https://m2.mtmt.hu/api/publication/26135521}, author = {Király, Roland}, unique-id = {26135521}, year = {2013} } @article{MTMT:1639725, title = {Software engineering education in cooperation with industrial partners}, url = {https://m2.mtmt.hu/api/publication/1639725}, author = {Horváth, Zoltán and Kozsik, Tamás and Lövei, László}, doi = {10.5485/TMCS.2010.0249}, journal-iso = {TEACH MATH COMP SCI}, journal = {TEACHING MATHEMATICS AND COMPUTER SCIENCE}, volume = {8}, unique-id = {1639725}, issn = {1589-7389}, abstract = {This paper presents our experiences on teaching software engineering in teams which are organized around dierent R+D projects. These long-running, innovative projects are carried out in cooperation with industrial partners, and are supported by student exchange. While MSc and PhD students work together with faculty staff members on the projects in an industrial-like environment, the students develop skills that would be otherwise very hard for them to obtain. The methodological contributions of the paper are illustrated by, and substantiated with, the description of a concrete software engineering project.}, year = {2010}, eissn = {2676-8364}, pages = {133-148}, orcid-numbers = {Horváth, Zoltán/0000-0001-9213-2681; Kozsik, Tamás/0000-0003-4484-9172} } @article{MTMT:1639731, title = {Layout preserving parser for refactoring in Erlang}, url = {https://m2.mtmt.hu/api/publication/1639731}, author = {Kitlei, Róbert and Lövei, László and Nagy, Tamás and Horváth, Zoltán and Kozsik, Tamás}, journal-iso = {ACTA ELECTROTECH INF}, journal = {ACTA ELECTROTECHNICA ET INFORMATICA}, volume = {9}, unique-id = {1639731}, issn = {1335-8243}, year = {2009}, eissn = {1338-3957}, pages = {54-63}, orcid-numbers = {Kitlei, Róbert/0000-0001-8534-8177; Horváth, Zoltán/0000-0001-9213-2681; Kozsik, Tamás/0000-0003-4484-9172} } @CONFERENCE{MTMT:1653157, title = {Building a Refactoring Tool for Erlang}, url = {https://m2.mtmt.hu/api/publication/1653157}, author = {Horváth, Zoltán and Lövei, László and Kozsik, Tamás and Kitlei, Róbert and Nagyné, Víg Anikó and Nagy, Tamás and Tóth, Melinda and Király, Roland}, booktitle = {1st International Workshop on Academic Software Development Tools and Techniques (WASDeTT-1)}, unique-id = {1653157}, year = {2008}, orcid-numbers = {Horváth, Zoltán/0000-0001-9213-2681; Kozsik, Tamás/0000-0003-4484-9172; Kitlei, Róbert/0000-0001-8534-8177; Tóth, Melinda/0000-0001-6300-7945} } @article{MTMT:2073824, title = {Use Cases for Refactoring in Erlang}, url = {https://m2.mtmt.hu/api/publication/2073824}, author = {Kozsik, Tamás and Csörnyei, Zoltán and Horváth, Zoltán and Király, Roland and Kitlei, Róbert and Lövei, László and Nagy, T. and Tóth, Melinda and Vig, A.}, doi = {10.1007/978-3-540-88059-2_7}, journal-iso = {LECT NOTES COMPUT SC}, journal = {LECTURE NOTES IN COMPUTER SCIENCE}, volume = {5161}, unique-id = {2073824}, issn = {0302-9743}, abstract = {Tool support for refactoring provides guarantees for the preservation of the program semantics during program transformation. This paper explains how RefactorErl, a refactoring tool for the Erlang language helps the programmer raise the quality of Erlang code or make the code suitable for further changes and improvements. Many examples illustrate the seven transformations currently implemented in RefactorErl. The paper also discusses the problems the refactor tool has to face.}, keywords = {Tool support; Refactoring tools; Program transformations; Program semantics; Functional programming; Refactorings}, year = {2008}, eissn = {1611-3349}, pages = {250-285}, orcid-numbers = {Kozsik, Tamás/0000-0003-4484-9172; Horváth, Zoltán/0000-0001-9213-2681; Kitlei, Róbert/0000-0001-8534-8177; Tóth, Melinda/0000-0001-6300-7945} } @inproceedings{MTMT:2158642, title = {Refactoring module structure}, url = {https://m2.mtmt.hu/api/publication/2158642}, author = {Lövei, László and Hoch, Csaba and Köllö, Hanna and Nagy, Tamás and Nagyné Víg, Anikó and Horpácsi, Dániel and Kitlei, Róbert and Király, Roland}, booktitle = {Erlang '08, Proceedings of the SIGPLAN Erlang Workshop}, doi = {10.1145/1411273.1411285}, unique-id = {2158642}, abstract = {This paper focuses on restructuring software written in Erlang. In large software projects, it is a common problem that internal structural complexity can grow to an extent where maintenance becomes impossible. This situation can be avoided by careful design, building loosely coupled components with strictly defined interfaces. However, when these design decisions are not made in the right time, it becomes necessary to split an already working software into such components, without breaking its functionality. There is strong industrial demand for such transformations in refactoring legacy code. A refactoring tool is very useful in the execution of such a restructuring. This paper shows that the semantical analysis required for refactoring is also useful for making suggestions on clustering. Existing analysis results are used to cover the whole process of module restructuring, starting with planning the new structure, and finishing by making the necessary source code transformations.}, year = {2008}, pages = {83-89}, orcid-numbers = {Horpácsi, Dániel/0000-0003-0261-0091; Kitlei, Róbert/0000-0001-8534-8177} } @inproceedings{MTMT:1960798, title = {Introducing records by refactoring}, url = {https://m2.mtmt.hu/api/publication/1960798}, author = {Lövei, László and Horváth, Zoltán and Kozsik, Tamás and Király, Roland}, booktitle = {Erlang'07: Proceedings of the 2007 SIGPLAN Erlang Workshop}, doi = {10.1145/1292520.1292524}, unique-id = {1960798}, abstract = {This paper focuses on introducing a new transformation to our existing model for refactoring Erlang programs. The goal of the transformation is to introduce a new abstraction level in data representation by substituting a group ofrelated data with a record. Using records enhances the legibility of the source code, makes further development easier, and makes programming less error-prone by providing better possibilities for both compilation time and runtime checks. There is a strong industrial demand for such a transformation in refactoring legacy code. Erlang is a dynamically typed language, and many of its semantical rules are also dynamic. Therefore the main challenge in this research is to ensure the safety of statically performed refactoring steps. Copyright © 2007 ACM.}, keywords = {data mining; Dynamical systems; Abstracting; records; Security of data; Data representation; Computer programming languages; Legibility; Compilation time; Refactoring; Erlang}, year = {2007}, pages = {18-28}, orcid-numbers = {Horváth, Zoltán/0000-0001-9213-2681; Kozsik, Tamás/0000-0003-4484-9172} }