Impact of Tool Support in Patch Construction
Document type :
Communication dans un congrès avec actes
DOI :
Title :
Impact of Tool Support in Patch Construction
Author(s) :
Koyuncu, Anil [Auteur]
Interdisciplinary Centre for Security, Reliability and Trust [Luxembourg] [SnT]
Bissyandé, Tegawendé [Auteur]
Interdisciplinary Centre for Security, Reliability and Trust [Luxembourg] [SnT]
Kim, Dongsun [Auteur]
Interdisciplinary Centre for Security, Reliability and Trust [Luxembourg] [SnT]
Klein, Jacques [Auteur]
Interdisciplinary Centre for Security, Reliability and Trust [Luxembourg] [SnT]
Monperrus, Martin [Auteur]
Université de Lille, Sciences et Technologies
Self-adaptation for distributed services and large software systems [SPIRALS]
Le Traon, Yves [Auteur]
Interdisciplinary Centre for Security, Reliability and Trust [Luxembourg] [SnT]
Interdisciplinary Centre for Security, Reliability and Trust [Luxembourg] [SnT]
Bissyandé, Tegawendé [Auteur]
Interdisciplinary Centre for Security, Reliability and Trust [Luxembourg] [SnT]
Kim, Dongsun [Auteur]
Interdisciplinary Centre for Security, Reliability and Trust [Luxembourg] [SnT]
Klein, Jacques [Auteur]
Interdisciplinary Centre for Security, Reliability and Trust [Luxembourg] [SnT]
Monperrus, Martin [Auteur]
Université de Lille, Sciences et Technologies
Self-adaptation for distributed services and large software systems [SPIRALS]
Le Traon, Yves [Auteur]
Interdisciplinary Centre for Security, Reliability and Trust [Luxembourg] [SnT]
Conference title :
26th ACM SIGSOFT International Symposium on Software Testing and Analysis
City :
Santa Barbara
Country :
Etats-Unis d'Amérique
Start date of the conference :
2017-07-10
Journal title :
ISSTA 2017
Publisher :
ACM
Publication date :
2017
English keyword(s) :
Automation
Debugging
Empirical
Linux
Patch
Repair
Tools
Debugging
Empirical
Linux
Patch
Repair
Tools
HAL domain(s) :
Informatique [cs]/Génie logiciel [cs.SE]
English abstract : [en]
In this work, we investigate the practice of patch construction in the Linux kernel development, focusing on the dfferences between three patching processes: (1) patches crafted entirely manually to fix bugs, (2) those ...
Show more >In this work, we investigate the practice of patch construction in the Linux kernel development, focusing on the dfferences between three patching processes: (1) patches crafted entirely manually to fix bugs, (2) those that are derived from warnings of bug detection tools, and (3) those that are automatically generated based on fix patterns. With this study, we provide to the research community concrete insights on the practice of patching as well as how the development community is currently embracing research and commercial patching tools to improve productivity in repair. The result of our study shows that tool-supported patches are increasingly adopted by the developer community while manually-written patches are accepted more quickly. Patch application tools enable developers to remain committed to contributing patches to the code base. Our findings also include that, in actual development processes, patches generally implement several change operationsspread over the code, even for patches fixing warnings by bug detection tools. Finally, this study has shown that there is an opportunity to directly leverage the output of bug detection tools to readily generate patches that are appropriate for fixing the problem and that are consistent with manually-written patches.Show less >
Show more >In this work, we investigate the practice of patch construction in the Linux kernel development, focusing on the dfferences between three patching processes: (1) patches crafted entirely manually to fix bugs, (2) those that are derived from warnings of bug detection tools, and (3) those that are automatically generated based on fix patterns. With this study, we provide to the research community concrete insights on the practice of patching as well as how the development community is currently embracing research and commercial patching tools to improve productivity in repair. The result of our study shows that tool-supported patches are increasingly adopted by the developer community while manually-written patches are accepted more quickly. Patch application tools enable developers to remain committed to contributing patches to the code base. Our findings also include that, in actual development processes, patches generally implement several change operationsspread over the code, even for patches fixing warnings by bug detection tools. Finally, this study has shown that there is an opportunity to directly leverage the output of bug detection tools to readily generate patches that are appropriate for fixing the problem and that are consistent with manually-written patches.Show less >
Language :
Anglais
Peer reviewed article :
Oui
Audience :
Internationale
Popular science :
Non
Collections :
Source :
Files
- https://hal.archives-ouvertes.fr/hal-01575214/document
- Open access
- Access the document
- http://orbilu.uni.lu/bitstream/10993/31858/1/issta.pdf
- Open access
- Access the document
- https://hal.archives-ouvertes.fr/hal-01575214/document
- Open access
- Access the document
- https://hal.archives-ouvertes.fr/hal-01575214/document
- Open access
- Access the document