Thu 8 Nov 2018 13:52 - 14:15 at Horizons 10-11 - Software Maintenance II Chair(s): Emerson Murphy-Hill

A majority of modern software is constructed using languages that compute by producing side-effects such as reading/writing from/to files, throwing exceptions, acquiring locks, etc. To understand a piece of software, e.g. a class, it is important for a developer to understand its side-effects. Similarly, to replace a class with another, it is important to understand whether the replacement is a safe substitution for the former in terms of its behavior, a property known as substitutability, because mismatch may lead to bugs. The problem is especially severe for superclass-subclass pairs since at runtime an instance of the subclass may be used in the client code where a superclass is mentioned. Despite the importance of this property, we do not yet know whether substitutability w.r.t. effects between subclass and superclass is preserved in the wild, and if not what sorts of substitutability violations are common and what is the impact of such violations. This paper conducts a large scale study on over 20 million Java classes, in order to compare the effects of the methods of subclasses and superclasses in practice. Our comprehensive study considers the exception, synchronization, I/O, and method call effects. It reveals that in pairs with effects, only 8-24% have the same effects, and 31-56% of submethods have more effects, and the effects of a large percentage of submethods cannot be inferred from the supermethod.

Thu 8 Nov

Displayed time zone: Guadalajara, Mexico City, Monterrey change

13:30 - 15:00
Software Maintenance IIResearch Papers / Journal-First at Horizons 10-11
Chair(s): Emerson Murphy-Hill North Carolina State University
13:30
22m
Talk
Automating Change-level Self-admitted Technical Debt Determination
Journal-First
Meng Yan , Xin Xia Monash University, Emad Shihab Concordia University, David Lo Singapore Management University, Jianwei Yin , Xiaohu Yang
DOI
13:52
22m
Talk
Large-Scale Study of Substitutability in the Presence of Effects
Research Papers
Jackson Maddox Iowa State University, USA, Yuheng Long Iowa State University, Hridesh Rajan Iowa State University
14:15
22m
Talk
An Empirical Study on Crash Recovery Bugs in Large-Scale Distributed Systems
Research Papers
Yu Gao Institute of Software, Chinese Academy of Sciences, Wensheng Dou Institute of Software, Chinese Academy of Sciences, Feng Qin Ohio State University, USA, Chushu Gao Institute of Software, Chinese Academy of Sciences, Dong Wang Institute of Software at Chinese Academy of Sciences, China, Jun Wei State Key Laboratory of Computer Science, Institute of Software, Chinese Academy of Sciences, Beijing, Ruirui Huang Alibaba Group, China, Li Zhou Alibaba Group, China, Yongming Wu Alibaba Group, China
14:37
22m
Talk
Complementing Global and Local Contexts in Representing API Descriptions to Improve API Retrieval Tasks
Research Papers
Thanh Nguyen Iowa State University, Ngoc Tran , Hung Phan , Trong Nguyen Iowa State University, USA, Linh Truong , Trong Nguyen Iowa State University, USA, Hoan Anh Nguyen Iowa State University, USA, Tien N. Nguyen University of Texas at Dallas