Write a Blog >>
ICST 2022
Mon 4 - Fri 8 April 2022

Although software libraries promote code reuse and facilitate software development, they increase the complexity of programme analysis tasks. To effectively analyse programmes built on top of software libraries, it is essential to have specifications for the library methods that can be easily processed by analysis tools. However, the availability of such specifications is seriously limited at the moment. Manually writing the specifications can be prohibitively expensive and error-prone, while existing automated approaches to inferring the specifications seldom produce results that are strong enough to be used in programme analysis. In this work, we propose the Doc2smt approach to generating strong functional constraints in SMT for library methods based on their documentations. Doc2smt first applies natural language processing (NLP) techniques and a set of rules to translate a method’s natural language documentation into a large number of candidate constraint clauses in OCL. Then, it utilizes a manually enhanced domain model to identify OCL candidate constraint clauses that comply with the problem domain in static validation, translates well-formed OCL constraints into the SMT-LIB format, and checks whether each SMB-LIB constraint rightly abstracts the functionalities of the method under consideration via testing in dynamic validation. In the end, it reports the first functional constraint that survives both validations to the user as the result. We have implemented the approach into a supporting tool with the same name. In experiments conducted on 451 methods from the Java Collections Framework and the Java IO library, Doc2smt generated correct constraints for 309 methods, with the average generation time for each correct constraint being merely 2.7 min. We have also applied the generated constraints to facilitate symbolic-execution-based test generation with the Symbolic Java PathFinder (SPF) tool. For 24 utility methods manipulating Java container and IO objects, SPF with access to the generated constraints produced 51.2 times more test cases than SPF without the access.

Thu 7 Apr

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

10:00 - 11:00
ICST Machine and Constraints LearningResearch Papers / Journal-First Papers at Margaret Hamilton
Chair(s): Gunel Jahangirova USI Lugano
10:00
15m
Talk
Documentation-based functional constraint generation for library methods
Journal-First Papers
Renhe Jiang Nanjing University, Zhengzhao Chen Nanjing University, Yu Pei Hong Kong Polytechnic University, Minxue Pan Nanjing University, Tian Zhang Nanjing University, Xuandong Li Nanjing University
Link to publication DOI
10:15
15m
Talk
Learning-based mutant reduction using fine-grained mutation operators
Journal-First Papers
Yunho Kim Hanyang University, Shin Hong Handong Global University
Link to publication DOI
10:30
15m
Talk
An Empirical Study of IR-based Bug Localization for Deep Learning-based Software
Research Papers
Misoo Kim Sungkyunkwan University, Youngkyoung Kim Sungkyunkwan University, Eunseok Lee Sungkyunkwan University
10:45
15m
Live Q&A
Discussion and Q&A
Research Papers