Guest Editorial for the Special Issue on Source Code Analysis and Manipulation, SCAM 2022

IF 1.7 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING
Banani Roy, Mohammad Ghafari, Mariano Ceccato
{"title":"Guest Editorial for the Special Issue on Source Code Analysis and Manipulation, SCAM 2022","authors":"Banani Roy,&nbsp;Mohammad Ghafari,&nbsp;Mariano Ceccato","doi":"10.1002/smr.70006","DOIUrl":null,"url":null,"abstract":"<p>This issue of the <i>Journal of Software:Evolution and Process</i> focuses on the foundation of software engineering—the source code itself. While much of the software engineering community properly emphasizes aspects like specification, design, and requirements engineering, the source code provides the only precise description of a system's behavior. Therefore, the analysis and manipulation of source code remain critical concerns.</p><p>This issue contains, among others, the extended version of the best papers presented at the 22nd IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2022) held in Limassol Cyprus, in October 2022.</p><p>The SCAM Conference aims to bring together researchers and practitioners working on theory, techniques, and applications that concern analysis and/or manipulation of the source code of software systems. The term <i>“source code”</i> refers to any fully executable description of a software system, such as machine code, (very) high-level languages, and executable graphical representations of systems. The term <i>“analysis”</i> refers to any (semi)automated procedure that yields insight into source code, while <i>“manipulation”</i> refers to any automated or semi-automated procedure that takes and returns source code. While much attention in the wider software engineering community is directed towards other aspects of systems development and evolution, such as specification, design, and requirements engineering, it is the source code that contains the only precise description of the behavior of a system. Hence, the analysis and manipulation of source code remains a pressing concern for which SCAM 2022 solicited high-quality paper submissions.</p><p>The SCAM 2022 conference received a total of 73 submissions. There were 45 submissions to the main research track, of which one was desk rejected for violation of the double-blind policy. The remaining 44 submissions went through a thorough review process. Every paper was fully reviewed by three or more program committee members for relevance, soundness and originality and discussed before final decisions were made. The program committee decided to accept 17 papers (acceptance rate 39%). The Engineering track has received 11 submissions, desk rejected one and accepted 5, the NIER track has received 16 submissions and accepted 10, and finally, the RENE track has received 4 submissions and accepted 1.</p><p>A public open call was published to invite outstanding papers by other authors on source code analysis and manipulation. In total, 10 papers were submitted to this special issue. Each of the submissions was reviewed by a minimum of three expert referees. Following the first round of review, the authors were asked to revise their papers in response to the referees' comments, and the revised drafts were then reviewed for conformance to the referees' comments. Among those, only five papers were selected for publication in this special issue. The selected papers represent some of the very best work that has appeared at SCAM and cover all of its main areas of interest, namely, refactoring by Yang Zhang and Shuai Hong and by Richárd Szalay and Zoltán Porkoláb; design pattern detection by Hugo Andrade, João Bispo and Filipe F. Correia; string analysis by Luca Negrini, Vincenzo Arceri, Agostino Cortesi and Pietro Ferrara; and regression testing by Francesco Altiero, Anna Corazza, Sergio Di Martino, Adriano Peron, and Luigi Libero Lucio Starace.</p><p>In the first paper “ReInstancer: An Automatic Refactoring Approach for Instanceof Pattern Matching”, Zhang et al. present ReInstancer, a tool for automating the refactoring of instanceof pattern matching by optimizing multibranch statements into switch expressions, improving code quality and readability. It demonstrated effectiveness by refactoring over 7700 instances across 20 real-world projects.</p><p>The paper by Szalay et al. “Refactoring to Standard C++20 Modules” presents a semi-automatic method for modularizing existing C++ projects using dependency analysis and clustering to organize elements into modules. The study reveals that upgrading to C++20 Modules is constrained by the project's existing architectural design.</p><p>In the third paper “Multi-Language Detection of Design Pattern Instances”, Andrade et al. present DP-LARA which is a multilanguage pattern detection tool that leverages the LARA framework's virtual Abstract Syntax Tree (AST) to identify design patterns across object-oriented programming languages. It enables language-agnostic code analysis for improved software comprehension.</p><p>The paper by Negrini et al. “Tarsis: an effective automata-based abstract domain for string analysis” presents a novel abstract domain for string values based on finite state automata that outperforms the baseline for string analysis, a typical task on source code analysis.</p><p>In the last paper “Regression Test Prioritization Leveraging Source Code Similarity with Tree Kernels”, Altiero et al. introduce two novel Regression Test Prioritization (RTP) techniques that apply Tree Kernels to Abstract Syntax Trees of source code to measure structural changes and prioritize tests accordingly. Evaluated across five Java projects, the proposed methods achieve superior fault detection rates compared to traditional RTP approaches.</p><p>We hope you find these papers engaging and encourage those interested to join us at future SCAM conferences.</p>","PeriodicalId":48898,"journal":{"name":"Journal of Software-Evolution and Process","volume":"37 3","pages":""},"PeriodicalIF":1.7000,"publicationDate":"2025-03-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://onlinelibrary.wiley.com/doi/epdf/10.1002/smr.70006","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of Software-Evolution and Process","FirstCategoryId":"94","ListUrlMain":"https://onlinelibrary.wiley.com/doi/10.1002/smr.70006","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0

Abstract

This issue of the Journal of Software:Evolution and Process focuses on the foundation of software engineering—the source code itself. While much of the software engineering community properly emphasizes aspects like specification, design, and requirements engineering, the source code provides the only precise description of a system's behavior. Therefore, the analysis and manipulation of source code remain critical concerns.

This issue contains, among others, the extended version of the best papers presented at the 22nd IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2022) held in Limassol Cyprus, in October 2022.

The SCAM Conference aims to bring together researchers and practitioners working on theory, techniques, and applications that concern analysis and/or manipulation of the source code of software systems. The term “source code” refers to any fully executable description of a software system, such as machine code, (very) high-level languages, and executable graphical representations of systems. The term “analysis” refers to any (semi)automated procedure that yields insight into source code, while “manipulation” refers to any automated or semi-automated procedure that takes and returns source code. While much attention in the wider software engineering community is directed towards other aspects of systems development and evolution, such as specification, design, and requirements engineering, it is the source code that contains the only precise description of the behavior of a system. Hence, the analysis and manipulation of source code remains a pressing concern for which SCAM 2022 solicited high-quality paper submissions.

The SCAM 2022 conference received a total of 73 submissions. There were 45 submissions to the main research track, of which one was desk rejected for violation of the double-blind policy. The remaining 44 submissions went through a thorough review process. Every paper was fully reviewed by three or more program committee members for relevance, soundness and originality and discussed before final decisions were made. The program committee decided to accept 17 papers (acceptance rate 39%). The Engineering track has received 11 submissions, desk rejected one and accepted 5, the NIER track has received 16 submissions and accepted 10, and finally, the RENE track has received 4 submissions and accepted 1.

A public open call was published to invite outstanding papers by other authors on source code analysis and manipulation. In total, 10 papers were submitted to this special issue. Each of the submissions was reviewed by a minimum of three expert referees. Following the first round of review, the authors were asked to revise their papers in response to the referees' comments, and the revised drafts were then reviewed for conformance to the referees' comments. Among those, only five papers were selected for publication in this special issue. The selected papers represent some of the very best work that has appeared at SCAM and cover all of its main areas of interest, namely, refactoring by Yang Zhang and Shuai Hong and by Richárd Szalay and Zoltán Porkoláb; design pattern detection by Hugo Andrade, João Bispo and Filipe F. Correia; string analysis by Luca Negrini, Vincenzo Arceri, Agostino Cortesi and Pietro Ferrara; and regression testing by Francesco Altiero, Anna Corazza, Sergio Di Martino, Adriano Peron, and Luigi Libero Lucio Starace.

In the first paper “ReInstancer: An Automatic Refactoring Approach for Instanceof Pattern Matching”, Zhang et al. present ReInstancer, a tool for automating the refactoring of instanceof pattern matching by optimizing multibranch statements into switch expressions, improving code quality and readability. It demonstrated effectiveness by refactoring over 7700 instances across 20 real-world projects.

The paper by Szalay et al. “Refactoring to Standard C++20 Modules” presents a semi-automatic method for modularizing existing C++ projects using dependency analysis and clustering to organize elements into modules. The study reveals that upgrading to C++20 Modules is constrained by the project's existing architectural design.

In the third paper “Multi-Language Detection of Design Pattern Instances”, Andrade et al. present DP-LARA which is a multilanguage pattern detection tool that leverages the LARA framework's virtual Abstract Syntax Tree (AST) to identify design patterns across object-oriented programming languages. It enables language-agnostic code analysis for improved software comprehension.

The paper by Negrini et al. “Tarsis: an effective automata-based abstract domain for string analysis” presents a novel abstract domain for string values based on finite state automata that outperforms the baseline for string analysis, a typical task on source code analysis.

In the last paper “Regression Test Prioritization Leveraging Source Code Similarity with Tree Kernels”, Altiero et al. introduce two novel Regression Test Prioritization (RTP) techniques that apply Tree Kernels to Abstract Syntax Trees of source code to measure structural changes and prioritize tests accordingly. Evaluated across five Java projects, the proposed methods achieve superior fault detection rates compared to traditional RTP approaches.

We hope you find these papers engaging and encourage those interested to join us at future SCAM conferences.

求助全文
约1分钟内获得全文 求助全文
来源期刊
Journal of Software-Evolution and Process
Journal of Software-Evolution and Process COMPUTER SCIENCE, SOFTWARE ENGINEERING-
自引率
10.00%
发文量
109
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信