Publication Type
PhD Dissertation
Version
Publisher’s Version
Publication Date
8-2020
Abstract
It is desirable to combine machine learning and program analysis so that one can leverage the best of both to increase the performance of software analytics. On one side, machine learning can analyze the source code of thousands of well-written software projects that can uncover patterns that partially characterize software that is reliable, easy to read, and easy to maintain. On the other side, the program analysis can be used to define rigorous and unique rules that are only available in programming languages, which enrich the representation of source code and help the machine learning to capture the patterns better. In this dissertation, we aim to present novel code modeling approaches to learn the source code better and demonstrate the usefulness of such approaches in various software engineering tasks. The methods developed for the aims to utilize the advantages of both deep learning techniques and static code analysis techniques.
Keywords
neural network, software engineering, static analysis, program analysis, capsule network, interpretability, machine learning, deep learning, source code, code learning
Degree Awarded
PhD in Information Systems
Discipline
OS and Networks | Programming Languages and Compilers | Software Engineering
Supervisor(s)
JIANG, Lingxiao
First Page
1
Last Page
131
Publisher
Singapore Management University
City or Country
Singapore
Citation
BUI, Duy Quoc Nghi.
Novel deep learning methods combined with static analysis for source code processing. (2020). 1-131.
Available at: https://ink.library.smu.edu.sg/etd_coll/306
Copyright Owner and License
Author
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International License.
Included in
OS and Networks Commons, Programming Languages and Compilers Commons, Software Engineering Commons