ECOOP 2018
Sun 15 - Sat 21 July 2018 Amsterdam, Netherlands
co-located with ECOOP and ISSTA 2018
Wed 18 Jul 2018 11:00 - 11:20 at Zurich II - Porting and Repair Chair(s): Julian Dolby

Many legacy financial applications exist as a collection of formulas implemented in spreadsheets. Migration of such code to a full-fledged system, written in a language such as Java, is an error-prone process. While small differences in the outputs of numerical calculations produced by the two artifacts are tolerated and expected in practice, large discrepancies could have serious financial implications. Such discrepancies are likely due to faults in the migrated implementation, manifesting themselves in what we refer to as deviation failures. In this paper, we introduce a search-based technique that seeks to uncover deviation failures in migrated code automatically, guided by the numerical difference in the output of an original spreadsheet compared to its migration. We evaluate different variants of this approach on two financial applications, produced by COMPANY [name redacted for double-blind review], who migrated their system from a Microsoft Excel spreadsheet to a Java application. Our evaluation involves 40 formulas with known and previously unknown faults in the Java code, which were accidentally introduced by developers during the migration process. While traditional random and branch coverage-based test generation techniques were only respectively able to detect approximately 25% and 31.66% of the faults in the migrated code, the search-based approaches proposed in this paper detected up to 70% of faults with the same test generation budget. Without restriction of the search budget, up to 90% of the known deviation failures were detected. In addition, three previously unknown faults were detected by this approach which were confirmed by the COMPANY experts.

Wed 18 Jul
Times are displayed in time zone: (GMT+02:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

11:00 - 12:30: ISSTA Technical Papers - Porting and Repair at Zurich II
Chair(s): Julian DolbyIBM Thomas J. Watson Research Center
issta-2018-Technical-Papers11:00 - 11:20
Mohammad M. AlmasiUniversity of Manitoba, Hadi HemmatiUniversity of Calgary, Gordon FraserUniversity of Passau, Phil McMinnUniversity of Sheffield, Janis BenefeldsSEB Life and Pensions Holding AB
issta-2018-Technical-Papers11:20 - 11:40
Kareem KhazemUniversity College London, Earl T. BarrUniversity College London, Petr HosekGoogle, Inc.
issta-2018-Technical-Papers11:40 - 12:00
René JustUniversity of Massachusetts, USA, Chris ParninNCSU, Ian DrososUniversity of California, San Diego, Michael D. ErnstUniversity of Washington, USA
issta-2018-Technical-Papers12:00 - 12:20
Jiajun JiangPeking University, Yingfei XiongPeking University, Hongyu ZhangThe University of Newcastle, Qing GaoPeking University, Xiangqun ChenPeking University
issta-2018-Technical-Papers12:20 - 12:30