Augmenting static program analysis and design verification with pattern recognition

Static analysis examines program code to reason over all possible behaviours that might arise at run time. Such reasoning with full soundness and precision is in general not possible, as there may be arbitrarily many different user inputs or states. To enable the reasoning, static analysis usually u...

全面介紹

Saved in:
書目詳細資料
主要作者: Sun, Ding
其他作者: Tan Hee Beng Kuan
格式: Theses and Dissertations
語言:English
出版: 2014
主題:
在線閱讀:https://hdl.handle.net/10356/61780
標簽: 添加標簽
沒有標簽, 成為第一個標記此記錄!
實物特徵
總結:Static analysis examines program code to reason over all possible behaviours that might arise at run time. Such reasoning with full soundness and precision is in general not possible, as there may be arbitrarily many different user inputs or states. To enable the reasoning, static analysis usually uses an abstraction model to abstract away some information to examine program code. Static program analysis plays a very important role in software testing, software verification, program slicing, error detection, and code performance optimization. However, the use of it in these areas still faces many problems due to the difficulty in finding a suitable abstraction model to base on. Design patterns have been used to improve the reuse in software development. Some design patterns have also been used in the verification of design in general. However, there are no specific patterns proposed for the verification of designs of database applications that constitute a large proportion of software systems. The aim of this thesis is to address the above-mentioned problems. Based on abstraction models established through empirical studies, this thesis proposes the four approaches augmented with pattern recognition to improve the state-of-the-art regarding accuracy and efficiency.