TY - GEN
T1 - Preliminary Study on the Reproducibility of Fix Templates in Static Analysis Tool
AU - Kim, Sohyun
AU - Kim, Youngkyoung
AU - Lee, Eunseok
N1 - Publisher Copyright:
© 2023 IEEE.
PY - 2023
Y1 - 2023
N2 - Automated Program Repair (APR) automatically generates patches for identified defects. As a result, APR can encourage novice students to learn coding by providing appropriate patches. Since students have their coding conventions, we should be able to deal with many types of defects. Existing studies have used predefined RuleId-driven templates to automatically fix defects in Static Analysis Tools(SATs). However, the community periodically adds, deletes, or changes SAT's RuleIds. This is difficult for existing RuleId-based templates to reflect those changes immediately. Existing studies only cover about 10 RuleIds, making it difficult to address all defects faced by all students. Therefore, it is necessary to establish appropriate criteria for classifying templates. The SAT has a predefined format for how Error Messages are written, and since Error Messages contain fixing actions, defects with similar Error Messages tend to have similar fixing actions. These characteristics of the Error Message are suitable for reproducible template classification criteria. Our preliminary study demonstrated that by classifying patterns based on Error Messages, we could effectively address various defects, including those in different programming languages, using a single template. This means that if a newly added RuleId corresponds to an Error Message format already in the predefined Error Message-based template, it can be modified without additional effort. We plan to construct reproducible templates for each Error Message and provide ongoing patching of defects to students.
AB - Automated Program Repair (APR) automatically generates patches for identified defects. As a result, APR can encourage novice students to learn coding by providing appropriate patches. Since students have their coding conventions, we should be able to deal with many types of defects. Existing studies have used predefined RuleId-driven templates to automatically fix defects in Static Analysis Tools(SATs). However, the community periodically adds, deletes, or changes SAT's RuleIds. This is difficult for existing RuleId-based templates to reflect those changes immediately. Existing studies only cover about 10 RuleIds, making it difficult to address all defects faced by all students. Therefore, it is necessary to establish appropriate criteria for classifying templates. The SAT has a predefined format for how Error Messages are written, and since Error Messages contain fixing actions, defects with similar Error Messages tend to have similar fixing actions. These characteristics of the Error Message are suitable for reproducible template classification criteria. Our preliminary study demonstrated that by classifying patterns based on Error Messages, we could effectively address various defects, including those in different programming languages, using a single template. This means that if a newly added RuleId corresponds to an Error Message format already in the predefined Error Message-based template, it can be modified without additional effort. We plan to construct reproducible templates for each Error Message and provide ongoing patching of defects to students.
KW - Automated Program Repair
KW - Fix Pattern
KW - Novice Programs
KW - Static Analysis Tool
UR - https://www.scopus.com/pages/publications/85173590021
U2 - 10.1109/CSEET58097.2023.00041
DO - 10.1109/CSEET58097.2023.00041
M3 - Conference contribution
AN - SCOPUS:85173590021
T3 - Software Engineering Education Conference, Proceedings
SP - 189
EP - 190
BT - Proceedings - 2023 IEEE 35th International Conference on Software Engineering Education and Training, CSEE and T 2023
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 35th IEEE International Conference on Software Engineering Education and Training, CSEE and T 2023
Y2 - 7 August 2023 through 9 August 2023
ER -