Comparing Semantic Graph Representations of Source Code: The Case of Automatic Feedback on Programming Assignments

被引:1
|
作者
Paiva, Jose Carlos [1 ,2 ]
Leal, Jose Paulo [1 ,2 ]
Figueira, Alvaro [1 ,2 ]
机构
[1] CRACS INESC TEC, Porto, Portugal
[2] DCC FCUP Porto, Porto, Portugal
关键词
semantic representation; source code; graph; source code analysis; automated assessment; programming; SIMILARITY;
D O I
10.2298/CSIS230615004P
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Static source code analysis techniques are gaining relevance in automated assessment of programming assignments as they can provide less rigorous evaluation and more comprehensive and formative feedback. These techniques focus on source code aspects rather than requiring effective code execution. To this end, syntactic and semantic information encoded in textual data is typically represented internally as graphs, after parsing and other preprocessing stages. Static automated assessment techniques, therefore, draw inferences from intermediate representations to determine the correctness of a solution and derive feedback. Consequently, achieving the most effective semantic graph representation of source code for the specific task is critical, impacting both techniques' accuracy, outcome, and execution time. This paper aims to provide a thorough comparison of the most widespread semantic graph representations for the automated assessment of programming assignments, including usage examples, facets, and costs for each of these representations. A benchmark has been conducted to assess their cost using the Abstract Syntax Tree (AST) as a baseline. The results demonstrate that the Code Property Graph (CPG) is the most feature -rich representation, but also the largest and most space -consuming (about 33% more than AST).
引用
收藏
页码:117 / 142
页数:26
相关论文
共 36 条
  • [21] Learning Graph-based Code Representations for Source-level Functional Similarity Detection
    Liu, Jiahao
    Zeng, Jun
    Wang, Xiang
    Liang, Zhenkai
    2023 IEEE/ACM 45TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ICSE, 2023, : 345 - 357
  • [22] An Efficient and Scalable Platform for Java']Java Source Code Analysis Using Overlaid Graph Representations
    Rodriguez-Prieto, Oscar
    Mycroft, Alan
    Ortin, Francisco
    IEEE ACCESS, 2020, 8 : 72239 - 72260
  • [23] Source-code queries with graph databases-with application to programming language usage and evolution
    Urma, Raoul-Gabriel
    Mycroft, Alan
    SCIENCE OF COMPUTER PROGRAMMING, 2015, 97 : 127 - 134
  • [24] Tensor-based gated graph neural network for automatic vulnerability detection in source code
    Yang, Jia
    Ruan, Ou
    Zhang, JiXin
    SOFTWARE TESTING VERIFICATION & RELIABILITY, 2024, 34 (02):
  • [25] Tangent: Automatic differentiation using source-code transformation for dynamically typed array programming
    van Merrienboer, Bart
    Moldovan, Dan
    Wiltschko, Alexander B.
    ADVANCES IN NEURAL INFORMATION PROCESSING SYSTEMS 31 (NIPS 2018), 2018, 31
  • [26] Providing test quality feedback using static source code and automatic test suite metrics
    Nagappan, Nachiappan
    Williams, Laurie
    Osborne, Jason
    Vouk, Mladen
    Abrahamsson, Pekka
    16TH IEEE INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING, PROCEEDINGS, 2005, : 85 - 94
  • [27] Automatic assessment of object oriented programming assignments with unit testing in Python']Python and a real case assignment
    Climent, Laura
    Arbelaez, Alejandro
    COMPUTER APPLICATIONS IN ENGINEERING EDUCATION, 2023, 31 (05) : 1321 - 1338
  • [28] Software Defect Prediction Based on Deep Representation Learning of Source Code From Contextual Syntax and Semantic Graph
    Abdu, Ahmed
    Zhai, Zhengjun
    Abdo, Hakim A.
    Algabri, Redhwan
    IEEE TRANSACTIONS ON RELIABILITY, 2024, 73 (02) : 820 - 834
  • [29] The relationship between pre-verbal event representations and semantic structures: The case of goal and source paths
    Lakusta, Laura
    Spinelli, Danielle
    Garcia, Kathryn
    COGNITION, 2017, 164 : 174 - 187
  • [30] Effect of flipped classroom and automatic source code evaluation in a CS1 programming course according to the Kirkpatrick evaluation model
    Jose Miguel Llanos Mosquera
    Carlos Giovanny Hidalgo Suarez
    Victor Andres Bucheli Guerrero
    Education and Information Technologies, 2023, 28 : 13235 - 13252