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
Times are displayed in time zone: (GMT-05:00) Guadalajara, Mexico City, Monterrey change

13:30 - 15:00: Research Papers - Software Maintenance II at Horizons 10-11
Chair(s): Emerson Murphy-HillNorth Carolina State University
fse-2018-Journal-First13:30 - 13:52
Meng Yan, Xin XiaMonash University, Emad ShihabConcordia University, David LoSingapore Management University, Jianwei Yin, Xiaohu Yang
fse-2018-research-papers13:52 - 14:15
Jackson MaddoxIowa State University, USA, Yuheng LongIowa State University, Hridesh RajanIowa State University
fse-2018-research-papers14:15 - 14:37
Yu GaoInstitute of Software, Chinese Academy of Sciences, Wensheng DouInstitute of Software, Chinese Academy of Sciences, Feng QinOhio State University, USA, Chushu GaoInstitute of Software, Chinese Academy of Sciences, Dong WangInstitute of Software at Chinese Academy of Sciences, China, Jun WeiState Key Laboratory of Computer Science, Institute of Software, Chinese Academy of Sciences, Beijing, Ruirui HuangAlibaba Group, China, Li ZhouAlibaba Group, China, Yongming WuAlibaba Group, China
fse-2018-research-papers14:37 - 15:00
Thanh NguyenIowa State University, Ngoc Tran, Hung Phan, Trong NguyenIowa State University, USA, Linh Truong, Trong NguyenIowa State University, USA, Hoan Anh NguyenIowa State University, USA, Tien N. NguyenUniversity of Texas at Dallas