Understanding Conditional Compilation Through Integrated Representation of Variability and Source Code

被引:1
|
作者
Baum, David [1 ]
Sixtus, Christina [1 ]
Vogelsberg, Lisa [1 ]
Eisenecker, Ulrich [1 ]
机构
[1] Univ Leipzig, Leipzig, Germany
关键词
conditional compilation; variablity; software visualization; visual analytics; Getaviz; preprocessor; software prodect line; FRAMEWORK;
D O I
10.1145/3307630.3342387
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The C preprocessor (CPP) is a standard tool for introducing variability into source programs and is often applied either implicitly or explicitly for implementing a Software Product Line (SPL). Despite its practical relevance, CPP has many drawbacks. Because of that it is very difficult to understand the variability implemented using CPP. To facilitate this task we provide an innovative analytics tool which bridges the gap between feature models as more abstract representations of variability and its concrete implementation with the means of CPP. It allows to interactively explore the entities of a source program with respect to the variability realized by conditional compilation. Thus, it simplifies tracing and understanding the effect of enabling or disabling feature flags.
引用
收藏
页码:21 / 24
页数:4
相关论文
共 50 条
  • [21] Cracking the Code: Understanding Source Code Plagiarism to Enable Learning
    Smit, Imelda
    du Plessis, Linda
    SOFTWARE ENGINEERING METHODS DESIGN AND APPLICATION, VOL 1, CSOC 2024, 2024, 1118 : 312 - 326
  • [22] SYMBOLIC DEBUGGING THROUGH INCREMENTAL COMPILATION IN AN INTEGRATED ENVIRONMENT
    FRITZSON, P
    JOURNAL OF SYSTEMS AND SOFTWARE, 1983, 3 (04) : 285 - 294
  • [23] High level language translator with machine code as representation of the source code
    Ribic, Samir
    Salihbegovic, Adnan
    PROCEEDINGS OF THE ITI 2007 29TH INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY INTERFACES, 2007, : 777 - +
  • [24] Recovering Architectural Variability from Source Code
    Lima, Crescencio
    Machado, Ivan
    Galster, Matthias
    Chavez, Christina von Flach G.
    34TH BRAZILIAN SYMPOSIUM ON SOFTWARE ENGINEERING, SBES 2020, 2020, : 808 - 817
  • [25] Understanding Understanding Source Code with Functional Magnetic Resonance Imaging
    Siegmund, Janet
    Kaestner, Christian
    Apel, Sven
    Parnin, Chris
    Bethmann, Anja
    Leich, Thomas
    Saake, Gunter
    Brechmann, Andre
    36TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2014), 2014, : 378 - 389
  • [26] Towards Reliable AI for Source Code Understanding
    Suneja, Sahil
    Zheng, Yunhui
    Zhuang, Yufan
    Laredo, Jim A.
    Morari, Alessandro
    PROCEEDINGS OF THE 2021 ACM SYMPOSIUM ON CLOUD COMPUTING (SOCC '21), 2021, : 403 - 411
  • [27] Active text for structuring and understanding source code
    Mossenbock, H
    Koskimies, K
    SOFTWARE-PRACTICE & EXPERIENCE, 1996, 26 (07): : 833 - 850
  • [28] A tool for visual understanding of source code dependencies
    Pinzger, Martin
    Graefenhain, Katja
    Knab, Patrick
    Gall, Harald C.
    PROCEEDINGS OF THE 16TH IEEE INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION, 2008, : 252 - 257
  • [29] Understanding how the requirements are implemented in source code
    Zhao, W
    Zhang, L
    Liu, Y
    Luo, J
    Sun, JS
    ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2003, : 68 - 77
  • [30] Generation of Efficient Obfuscated Code through Just-in-Time Compilation
    Hataba, Muhammad
    El-Mahdy, Ahmed
    Ueda, Kazunori
    IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, 2019, E102D (03) : 645 - 649