TY - CHAP AU - Fekete, Anett AU - Cserép, Máté ED - Heričko, Marjan TI - Incremental Parsing of Large Legacy C/C++ Software T2 - Proceedings of the 21st International Multiconference on Information Society (IS) PB - University of Maribor, Faculty of Electrical Engineering and Computer Science (UM FERI) CY - Ljubljana SN - 9789612641412 PY - 2018 SP - 51 EP - 54 PG - 4 UR - https://m2.mtmt.hu/api/publication/30602653 ID - 30602653 AB - CodeCompass is an open source project intended to support code comprehension by providing textual information, source code metrics, version control information and visualization views of the file and directory level relations for the analyzed project. Regarding the typical software development methodologies (especially the agile ones), only a smaller portion of the code base is affected by any change during a shorter amount of time (e.g. between nightly builds), therefore parsing the entire project each time is unnecessary and expensive. A newly introduced feature, incremental parsing is intended to solve this problem by only processing files that have been recently changed and leaving the rest alone. This is achieved by the maintenance of the project workspace database followed by the partial parsing of the project. The feature has been tested both on medium and large scale projects and proved to be an effective tool in CodeCompass. LA - English DB - MTMT ER - TY - CHAP AU - Porkoláb, Zoltán AU - Brunner, Tibor AU - Dániel, Krupp AU - Márton, Csordás TI - CodeCompass. An Open Software Comprehension Framework for Industrial Usage TS - An Open Software Comprehension Framework for Industrial Usage T2 - ICPC 2018 PB - Association for Computing Machinery (ACM) CY - New York, New York SN - 9781450357142 PY - 2018 SP - 361 EP - 369 PG - 9 DO - 10.1145/3196321.3197546 UR - https://m2.mtmt.hu/api/publication/3384852 ID - 3384852 LA - English DB - MTMT ER - TY - CHAP AU - Szalay, Richárd AU - Porkoláb, Zoltán AU - Dániel, Krupp ED - Coen, De Roover ED - Jianjun, Zhao TI - Towards Better Symbol Resolution for C/C++ Programs: A Cluster-Based Solution T2 - 2017 IEEE 17th International Working Conference on Source Code Analysis and Manipulation (SCAM) (2017) PB - IEEE Computer Society CY - Washington DC SN - 9781538632383 PY - 2017 SP - 101 EP - 110 PG - 10 DO - 10.1109/SCAM.2017.15 UR - https://m2.mtmt.hu/api/publication/3288718 ID - 3288718 N1 - 3in(EFOP-3.6.2-16-2017-00013) Támogató: EFOP Innovatív Informatikai és Infokommunikációs Megoldásokat Megalapozó Tematikus Kutatási Együttműködések AB - Resolving symbol references is an important part of many application areas from development environments to various static analyser tools, especially when it is used for code comprehension purposes. Different occurrences of the same program elements, like function definitions and their call sites, variable declarations and their usage, or type definitions and their applications should be connected. In case of the C++ programming language, the most current tools use mangled names to correlate symbols, e.g. when implementing actions like "go to definition" or "list all references". However, for large projects, where multiple binaries are created, symbol resolution based on mangled names can be, and usually is, ambiguous. This leads to inaccurate behaviour even in major development tools. In this paper we explore the reason of this ambiguity, and propose our clustering algorithm based on essential build information to improve the accuracy of symbol resolution. We implemented our method as part of the CodeCompass open source code comprehension tool and measured its efficiency. LA - English DB - MTMT ER - TY - JOUR AU - Cserép, Máté AU - Krupp, Dániel TI - Visualization Techniques of Components for Large Legacy C/C++ software JF - STUDIA UNIVERSITATIS BABES-BOLYAI SERIES INFORMATICA J2 - STUD UNIV BABES-BOLYAI SER INFO VL - 59 PY - 2014 IS - Special Issue 1 SP - 59 EP - 74 PG - 16 SN - 1224-869X UR - https://m2.mtmt.hu/api/publication/2801222 ID - 2801222 LA - English DB - MTMT ER -