default search action
20th ESEC / 29th SIGSOFT FSE 2021: Athens, Greece
- Diomidis Spinellis, Georgios Gousios, Marsha Chechik, Massimiliano Di Penta:
ESEC/FSE '21: 29th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Athens, Greece, August 23-28, 2021. ACM 2021, ISBN 978-1-4503-8562-6
Invited Presentations
- Mira Mezini:
Programming and execution models for next generation code intelligence systems (keynote). 1-2 - Nachiappan Nagappan:
The 4ps: product, process, people, and productivity: a data-driven approach to improve software engineering (keynote). 3 - Gerard J. Holzmann:
Interactive analysis of large code bases (invited talk). 4 - Han Schaminée:
Managers hate uncertainty: good and bad experiences with adaptive project management (invited talk). 5 - John Micco:
Industrial best practices for continuous integration (CI) and continuously delivery (CD) (invited talk). 6 - Wilson Wang:
Huawei's practices on trusted software engineering capability improvement (invited talk). 7
Cyber-Physical Systems
- Michael Vierhauser, Md Nafee Al Islam, Ankit Agrawal, Jane Cleland-Huang, James Mason:
Hazard analysis for human-on-the-loop interactions in sUAS systems. 8-19 - Dinghua Wang, Shuqing Li, Guanping Xiao, Yepang Liu, Yulei Sui:
An exploratory study of autopilot software bugs in unmanned aerial vehicles. 20-31 - Yuqi Chen, Christopher M. Poskitt, Jun Sun:
Code integrity attestation for PLCs using black box neural network predictions. 32-44 - Sayali Kate, Michael Chinn, Hongjun Choi, Xiangyu Zhang, Sebastian G. Elbaum:
PHYSFRAME: type checking physical frames of reference for robotic systems. 45-56
Continuous Integration and Delivery
- Daniel Sokolowski, Pascal Weisenburger, Guido Salvaneschi:
Automating serverless deployments for DevOps organizations. 57-69
Mobile Analysis and Testing
- Sydur Rahaman, Iulian Neamtiu, Xin Yin:
Algebraic-datatype taint tracking, with applications to understanding Android identifier leaks. 70-82 - Wenyu Wang, Wei Yang, Tianyin Xu, Tao Xie:
Vet: identifying and avoiding UI exploration tarpits. 83-94 - Zhen Zhang, Yu Feng, Michael D. Ernst, Sebastian Porst, Isil Dillig:
Checking conformance of applications against GUI policies. 95-106
Mobile Human-Computer Interaction
- Forough Mehralian, Navid Salehnamadi, Sam Malek:
Data-driven accessibility repair revisited: on the effectiveness of generating labels for icons in Android apps. 107-118 - Ting Su, Jue Wang, Zhendong Su:
Benchmarking automated GUI testing for Android against real-world bugs. 119-130
Model Checking
- Minjian Zhang, Umang Mathur, Mahesh Viswanathan:
Checking LTL[F, G, X] on compressed traces in polynomial time. 131-143 - Jie Su, Cong Tian, Zhenhua Duan:
Conditional interpolation: making concurrent program verification more effective. 144-154
Model-Driven Software Engineering
- Changjian Zhang, Ryan Wagner, Pedro Orvalho, David Garlan, Vasco Manquinho, Ruben Martins, Eunsuk Kang:
AlloyMax: bringing maximum satisfaction to relational specifications. 155-167 - Yanxiang Tong, Yi Qin, Yanyan Jiang, Chang Xu, Chun Cao, Xiaoxing Ma:
Timely and accurate detection of model deviation in self-adaptive software-intensive systems. 168-180
Dependability
- Martin Kellogg, Narges Shadab, Manu Sridharan, Michael D. Ernst:
Lightweight and modular resource leak verification. 181-192 - Mingxue Zhang, Wei Meng:
JSISOLATE: lightweight in-browser JavaScript isolation. 193-204
Code Recommendation
- George Mathew, Kathryn T. Stolee:
Cross-language code search using static and dynamic analyses. 205-217 - Zhipeng Gao, Xin Xia, David Lo, John C. Grundy, Thomas Zimmermann:
Automating the removal of obsolete TODO comments. 218-229
Fuzzing
- Marcel Böhme, Danushka Liyanage, Valentin Wüstholz:
Estimating residual risk in greybox fuzzing. 230-241 - Qian Zhang, Jiyuan Wang, Miryung Kim:
HeteroFuzz: fuzz testing to detect platform dependent divergence for heterogeneous applications. 242-254
Defect Prediction and Effort Estimation
- Yan Cai, Hao Yun, Jinqiu Wang, Lei Qiao, Jens Palsberg:
Sound and efficient concurrency bug prediction. 255-267
Vulnerabilities
- Song Li, Mingqing Kang, Jianwei Hou, Yinzhi Cao:
Detecting Node.js prototype pollution vulnerabilities via object lookup analysis. 268-279 - Kunpeng Yu, Chenxu Wang, Yan Cai, Xiapu Luo, Zijiang Yang:
Detecting concurrency vulnerabilities based on partial orders of memory and thread events. 280-291 - Yi Li, Shaohua Wang, Tien N. Nguyen:
Vulnerability detection with fine-grained interpretations. 292-303 - Adriana Sejfia, Yixue Zhao, Nenad Medvidovic:
Identifying casualty changes in software patches. 304-315 - Yang Hu, Wenxi Wang, Casen Hunger, Riley Wood, Sarfraz Khurshid, Mohit Tiwari:
ACHyb: a hybrid analysis approach to detect kernel access control vulnerabilities. 316-327
Program Repair
- Dowon Song, Woosuk Lee, Hakjoo Oh:
Context-aware and data-driven feedback generation for programming assignments. 328-340 - Qihao Zhu, Zeyu Sun, Yuan-an Xiao, Wenjie Zhang, Kang Yuan, Yingfei Xiong, Lu Zhang:
A syntax-guided edit decoder for neural program repair. 341-353 - Chu-Pan Wong, Priscila Santiesteban, Christian Kästner, Claire Le Goues:
VarFix: balancing edit expressiveness and search effectiveness in automated program repair. 354-366
Flaky Tests
- Zhen Dong, Abhishek Tiwari, Xiao Liang Yu, Abhik Roychoudhury:
Flaky test detection in Android via event order exploration. 367-378
Collaborative Software Engineering
- Bo Shen, Wei Zhang, Christian Kästner, Haiyan Zhao, Zhao Wei, Guangtai Liang, Zhi Jin:
SmartCommit: a graph-based interactive assistant for activity-oriented commits. 379-390 - Lin Shi, Xiao Chen, Ye Yang, Hanzhi Jiang, Ziyou Jiang, Nan Niu, Qing Wang:
A first look at developers' live chat on Gitter. 391-403 - Souti Chattopadhyay, Thomas Zimmermann, Denae Ford:
Reel life vs. real life: how software developers share their daily life through vlogs. 404-415
Cloud Computing
- Jinfeng Wen, Zhenpeng Chen, Yi Liu, Yiling Lou, Yun Ma, Gang Huang, Xin Jin, Xuanzhe Liu:
An empirical study on challenges of application development in serverless computing. 416-428
Search Based Software Engineering
- Joymallya Chakraborty, Suvodeep Majumder, Tim Menzies:
Bias in machine learning software: why? how? what to do? 429-440 - Md. Rafiqul Islam Rabin, Vincent J. Hellendoorn, Mohammad Amin Alipour:
Understanding neural code intelligence through program simplification. 441-452 - Tao Chen, Miqing Li:
Multi-objectivizing software configuration tuning. 453-465
Libraries and APIs
- Bo Li, Qiang He, Feifei Chen, Xin Xia, Li Li, John C. Grundy, Yun Yang:
Embedding app-library graph for neural third party library recommendation. 466-477 - Hao He, Runzhi He, Haiqiao Gu, Minghui Zhou:
A large-scale empirical study on Java library migrations: prevalence, trends, and rationales. 478-490 - Mingwei Liu, Xin Peng, Andrian Marcus, Christoph Treude, Xuefang Bai, Gang Lyu, Jiazhan Xie, Xiaoxin Zhang:
Learning-based extraction of first-order logic representations of API directives. 491-502
Development Tools
- Xiuheng Wu, Chenguang Zhu, Yi Li:
DIFFBASE: a differential factbase for effective software evolution management. 503-515 - Zehao Wang, Haoxiang Zhang, Tse-Hsun (Peter) Chen, Shaowei Wang:
Would you like a quick peek? providing logging support to monitor data processing in big data applications. 516-526
Code Review and Changes
- Nengwen Zhao, Junjie Chen, Zhaoyang Yu, Honglin Wang, Jiesong Li, Bin Qiu, Hongyu Xu, Wenchi Zhang, Kaixin Sui, Dan Pei:
Identifying bad software changes via multimodal anomaly detection for online service systems. 527-539
Refactoring
- Xiao Wang, Lu Xiao, Tingting Yu, Anne Woepse, Sunny Wong:
An automatic refactoring framework for replacing test-production inheritance by mocking mechanism. 540-552
Blockchain
- Wuqi Zhang, Lili Wei, Shuqing Li, Yepang Liu, Shing-Chi Cheung:
ÐArcher: detecting on-chain-off-chain synchronization bugs in decentralized applications. 553-565 - Yibo Wang, Qi Zhang, Kai Li, Yuzhe Tang, Jiaqi Chen, Xiapu Luo, Ting Chen:
iBatch: saving Ethereum fees via secure and cost-effective batching of smart-contract invocations. 566-577
Recommender Systems
- Yanjie Jiang, Hui Liu, Yuxia Zhang, Nan Niu, Yuhai Zhao, Lu Zhang:
Which abbreviations should be expanded? 578-589
Testing of Machine Learning Models
- Songqiang Chen, Shuo Jin, Xiaoyuan Xie:
Validation on machine reading comprehension software without annotated labels: a property-based method. 590-602 - Saikat Dutta, August Shi, Sasa Misailovic:
FLEX: fixing flaky tests in machine learning projects by updating assertion bounds. 603-614
Analysis and Testing of Unconventional Software
- Sangeeta Chowdhary, Santosh Nagarakatte:
Parallel shadow execution to accelerate the debugging of numerical errors. 615-626 - Ming Yan, Junjie Chen, Xiangyu Zhang, Lin Tan, Gan Wang, Zan Wang:
Exposing numerical bugs in deep learning via gradient back-propagation. 627-638 - Muhammad Numair Mansur, Maria Christakis, Valentin Wüstholz:
Metamorphic testing of Datalog engines. 639-650
Human Computer Interaction
- Dylan Lukes, John Sarracino, Cora Coleman, Hila Peleg, Sorin Lerner, Nadia Polikarpova:
Synthesis of web layouts from examples. 651-663
Machine Learning for Software Engineering
- Yiling Lou, Qihao Zhu, Jinhao Dong, Xia Li, Zeyu Sun, Dan Hao, Lu Zhang, Lingming Zhang:
Boosting coverage-based fault localization via graph-based representation learning. 664-676 - Bo Wang, Teodora Baluta, Aashish Kolluri, Prateek Saxena:
SynGuar: guaranteeing generalization in programming by example. 677-689 - Kexin Pei, Jonas Guan, Matthew Broughton, Zhongtian Chen, Songchen Yao, David Williams-King, Vikas Ummadisetty, Junfeng Yang, Baishakhi Ray, Suman Jana:
StateFormer: fine-grained type recovery from binaries using generative state modeling. 690-702 - Nadezhda Chirkova, Sergey Troshin:
Empirical study of transformers for source code. 703-715 - Jürgen Cito, Isil Dillig, Seohyun Kim, Vijayaraghavan Murali, Satish Chandra:
Explaining mispredictions of machine learning models using rule induction. 716-727 - Yi Ding, Ahsan Pervaiz, Michael Carbin, Henry Hoffmann:
Generalizable and interpretable learning for configuration extrapolation. 728-740
Program Comprehension
- Shangwen Wang, Ming Wen, Bo Lin, Xiaoguang Mao:
Lightweight global and local contexts guided method name recommendation with prior knowledge. 741-753 - Madeline Endres, Madison Fansher, Priti Shah, Westley Weimer:
To read or to rotate? comparing the effects of technical reading training and spatial skills training on novice programming ability. 754-766 - Zachary Karas, Andrew Jahn, Westley Weimer, Yu Huang:
Connecting the dots: rethinking the relationship between code and prose writing with functional connectivity. 767-779
Software Security
- Duc-Ly Vu, Fabio Massacci, Ivan Pashchenko, Henrik Plate, Antonino Sabetta:
LastPyMile: identifying the discrepancy between sources and packages. 780-792 - Nesara Dissanayake, Mansooreh Zahedi, Asangi Jayatilaka, Muhammad Ali Babar:
A grounded theory of the role of coordination in software security patch management. 793-805 - Chengxu Yang, Yuanchun Li, Mengwei Xu, Zhenpeng Chen, Yunxin Liu, Gang Huang, Xuanzhe Liu:
TaintStream: fine-grained taint tracking for big data platforms through dynamic code translation. 806-817
Debugging
- Yida Tao, Zhihui Chen, Yepang Liu, Jifeng Xuan, Zhiwu Xu, Shengchao Qin:
Demystifying "bad" error messages in data science libraries. 818-829 - Tasuku Nakagawa, Yoshiki Higo, Shinji Kusumoto:
NIL: large-scale detection of large-variance clones. 830-841 - Zhengyi Qiu, Shudi Shao, Qi Zhao, Guoliang Jin:
Understanding and detecting server-side request races in web applications. 842-854 - Paul T. Chiou, Ali S. Alotaibi, William G. J. Halfond:
Detecting and localizing keyboard accessibility failures in web applications. 855-867 - Chijung Jung, Ali Ahad, Jinho Jung, Sebastian G. Elbaum, Yonghwi Kwon:
Swarmbug: debugging configuration bugs in swarm robotics. 868-880 - Guancheng Wang, Ruobing Shen, Junjie Chen, Yingfei Xiong, Lu Zhang:
Probabilistic Delta debugging. 881-892
Bug Characterization and Fixing
- Jeho Oh, Necip Fazil Yildiran, Julian Braha, Paul Gazzillo:
Finding broken Linux configuration specifications by statically analyzing the Kconfig language. 893-905 - Jibesh Patra, Michael Pradel:
Semantic bug seeding: a learning-based approach for creating realistic bugs. 906-918
Mining Software Repositories
- Jiakun Liu, Sebastian Baltes, Christoph Treude, David Lo, Yun Zhang, Xin Xia:
Characterizing search activities on stack overflow. 919-931 - Egor Bogomolov, Vladimir Kovalenko, Yurii Rebryk, Alberto Bacchelli, Timofey Bryksin:
Authorship attribution of source code: a language-agnostic approach and applicability in software engineering. 932-944
Software Engineering for Machine Learning
- Sahil Suneja, Yunhui Zheng, Yufan Zhuang, Jim Alain Laredo, Alessandro Morari:
Probing model signal-awareness via prediction-preserving input minimization. 945-955 - Shu Lin, Na Meng, Wenxin Li:
Generating efficient solvers from constraint models. 956-967 - Qingchao Shen, Haoyang Ma, Junjie Chen, Yongqiang Tian, Shing-Chi Cheung, Xiang Chen:
A comprehensive study of deep learning compiler bugs. 968-980 - Sumon Biswas, Hridesh Rajan:
Fair preprocessing: towards understanding compositional fairness of data transformers in machine learning pipeline. 981-993 - Max Hort, Jie M. Zhang, Federica Sarro, Mark Harman:
Fairea: a model behaviour mutation approach to benchmarking bias mitigation methods. 994-1006
Software Evolution
- Paul Maximilian Bittner, Alexander Schultheiß, Thomas Thüm, Timo Kehrer, Jeffrey M. Young, Lukas Linsbauer:
Feature trace recording. 1007-1020 - César Soto-Valero, Thomas Durieux, Benoit Baudry:
A longitudinal analysis of bloated Java dependencies. 1021-1031
Software Practices
- Nicholas Maltbie, Nan Niu, Matthew Van Doren, Reese Johnson:
XAI tools in the public sector: a case study on predicting combined sewer overflows. 1032-1044 - Dong Jae Kim, Bo Yang, Jinqiu Yang, Tse-Hsun (Peter) Chen:
How disabled tests manifest in test maintainability challenges? 1045-1055
Software Processes
- Likang Yin, Zhuangzhi Chen, Qi Xuan, Vladimir Filkov:
Sustainability forecasting for Apache incubator projects. 1056-1067
Test Generation
- Yun Lin, You Sheng Ong, Jun Sun, Gordon Fraser, Jin Song Dong:
Graph-based seed object synthesis for search-based unit testing. 1068-1080 - Chuan Luo, Binqi Sun, Bo Qiao, Junjie Chen, Hongyu Zhang, Jinkun Lin, Qingwei Lin, Dongmei Zhang:
LS-sampling: an effective local search based sampling approach for achieving high t-wise coverage. 1081-1092 - Ke Chen, Yufei Li, Yingfeng Chen, Changjie Fan, Zhipeng Hu, Wei Yang:
GLIB: towards automated test oracle for graphically-rich applications. 1093-1104
Metrics
- Devjeet Roy, Sarah Fakhoury, Venera Arnaoudova:
Reassessing automatic evaluation metrics for code summarization tasks. 1105-1116
Programming Languages
- Jialiang Tan, Yu Chen, Zhenming Liu, Bin Ren, Shuaiwen Leon Song, Xipeng Shen, Xu Liu:
Toward efficient interactions between Python and native libraries. 1117-1128 - Joonyoung Park, Jihyeok Park, Dongjun Youn, Sukyoung Ryu:
Accelerating JavaScript static analysis via dynamic shortcuts. 1129-1140
Approximations in Program Analysis and Testing
- Peisen Yao, Heqing Huang, Wensheng Tang, Qingkai Shi, Rongxin Wu, Charles Zhang:
Skeletal approximation enumeration for SMT solver testing. 1141-1153 - Tianyi Chen, Kihong Heo, Mukund Raghothaman:
Boosting static analysis accuracy with instrumented test executions. 1154-1165 - Yicheng Luo, Antonio Filieri, Yuan Zhou:
Symbolic parallel adaptive importance sampling for probabilistic program analysis. 1166-1177
Static Analysis and Symbolic Execution
- Linghui Luo, Martin Schäf, Daniel Sanchez, Eric Bodden:
IDE support for cloud-based static analyses. 1178-1189 - David Trabish, Shachar Itzhaky, Noam Rinetzky:
A bounded symbolic-size model for symbolic execution. 1190-1201
Dynamic Analysis
- Nikos Vasilakis, Grigoris Ntousakis, Veit Heller, Martin C. Rinard:
Efficient module-level dynamic analysis for dynamic languages with module recontextualization. 1202-1213
Industry Papers
- Anup K. Kalia, Jin Xiao, Rahul Krishna, Saurabh Sinha, Maja Vukovic, Debasish Banerjee:
Mono2Micro: a practical and effective tool for decomposing monolithic Java applications to microservices. 1214-1224 - Sonu Mehta, Farima Farmahinifarahani, Ranjita Bhagwan, Suraj Guptha, Sina Jafari, Rahul Kumar, Vaibhav Saini, Anirudh Santhiar:
Data-driven test selection at scale. 1225-1235 - Hang Dong, Si Qin, Yong Xu, Bo Qiao, Shandan Zhou, Xian Yang, Chuan Luo, Pu Zhao, Qingwei Lin, Hongyu Zhang, Abulikemu Abuduweili, Sanjay Ramanujan, Karthikeyan Subramanian, Andrew Zhou, Saravanakumar Rajmohan, Dongmei Zhang, Thomas Moscibroda:
Effective low capacity status prediction for cloud systems. 1236-1241 - Adam Welc:
Automated code transformation for context propagation in Go. 1242-1252 - Xu Zhang, Yong Xu, Si Qin, Shilin He, Bo Qiao, Ze Li, Hongyu Zhang, Xukun Li, Yingnong Dang, Qingwei Lin, Murali Chintalapati, Saravanakumar Rajmohan, Dongmei Zhang:
Onion: identifying incident-indicating logs for cloud systems. 1253-1263 - Jon Ayerdi, Valerio Terragni, Aitor Arrieta, Paolo Tonella, Goiuria Sagardui, Maite Arratibel:
Generating metamorphic relations for cyber-physical systems with genetic programming: an industrial case study. 1264-1274 - Vivek Joshi, Preethu Rose Anish, Smita Ghaisas:
Domain adaptation for an automated classification of deontic modalities in software engineering contracts. 1275-1280 - Roman Haas, Daniel Elsner, Elmar Jürgens, Alexander Pretschner, Sven Apel:
How can manual testing processes be optimized? developer survey, optimization guidelines, and case studies. 1281-1291 - Martin P. Robillard:
Turnover-induced knowledge loss in practice. 1292-1302 - Yaroslav Golubev, Zarina Kurbatova, Eman Abdullah AlOmar, Timofey Bryksin, Mohamed Wiem Mkaouer:
One thousand and one stories: a large-scale survey of software refactoring. 1303-1313 - Yixuan Ma, Shuang Liu, Jiajun Jiang, Guanhong Chen, Keqiu Li:
A comprehensive study on learning-based PE malware family classification methods. 1314-1325 - Charles Weir, Sammy Migues, Mike Ware, Laurie A. Williams:
Infiltrating security into development: exploring the world's largest software security study. 1326-1336 - David van der Leij, Jasper Binda, Robbert van Dalen, Pieter Vallen, Yaping Luo, Maurício Aniche:
Data-driven extract method recommendations: a study at ING. 1337-1347 - Miguel Terra-Neves, João Nadkarni, Miguel Ventura, Pedro Resende, Hugo Veiga, António Alegria:
Duplicated code pattern mining in visual programming languages. 1348-1359