Submissions due: December 1, 2020
Decisions: March 25, 2021
Final materials due for edit: April 1, 2021
Programming mistakes—in source code, configurations, tests, or other artifacts—are a wide-ranging and expensive problem. Developers must dedicate a significant proportion of engineering time and effort to finding and fixing bugs in their code; businesses lose market share when vulnerabilities in the software they sell impact customers; and overall productivity is impacted by software that does not work as intended or is
prone to vulnerabilities.
There has been considerable recent interest and progress, in both research and practice, in techniques that automatically construct program patches. This has resulted in a diversity of techniques that seek to, for example, automatically patch programs to cause failing regression test cases to pass, address statically detected violations, or repair compilation errors. In engineering practice, recently developed repair tools range from simple “quick fix” suggestions to address linter checks performed at commit time and vulnerability-suggesting bots on GitHub to more robust automated patching run in production against automatically generated tests. Overall, automated tooling, analysis, and bots that automatically patch programs are a growing emergent phenomenon of relevance to both SE researchers and practitioners.
The goal of this IEEE Software special issue is to provide a forum to discuss promising approaches and current and future best practices surrounding the use of automatic program patching technology. We are interested in articles addressing this issue from a variety of angles including, but not limited to the following:
- Integration with existing quality assurance, DevOps, and continuous integration tool chains
- Interactions of repair bots with developers
- Repair quality, including functional and non-functional attributes, how it can or should be measured, and what standards of quality are necessary for practical application
- Repair of non-primary code artifacts, like configuration, build files, or tests
- Innovative use cases in industry
- Use of automated repair in programming education
- Methodologies and benchmarks for evaluating program repair techniques
- Representations of repairs or code changes
- Emerging topics or trends in program repair
We are particularly interested in articles that help bridge the gap between research and practice.
Manuscripts must not exceed 3,000 words, including figures and tables, which count for 250 words each, the abstract, and references. Submissions exceeding these limits might be rejected without refereeing. Articles deemed within the theme and scope will be peer reviewed and are subject to editing for magazine style, clarity, organization, and space. Be sure to include the name of the theme for which you are submitting. Articles should have a practical orientation and be written in a style accessible to a broad audience, including researchers and practitioners. Overly complex, purely research-oriented or theoretical treatments are not appropriate. Articles should be novel. IEEE Software does not republish material published previously in other venues, including other periodicals and formal conference or workshop proceedings, whether previous publication was in print or electronic form.
For general author guidelines: www.computer.org/publications/author-resources/peer-review/magazines
To submit an article (through the ScholarOne system): https://mc.manuscriptcentral.com/sw-cs
Claire Le Goues