Developing AI-Powered Support for Improving Software Quality

dc.contributor.advisorDam, Hoa Khanh
dc.contributor.advisorGhose, Aditya
dc.contributor.authorAlhefdhi, Abdulaziz Hasan M.
dc.date.accessioned2024-02-14T08:53:35Z
dc.date.available2024-02-14T08:53:35Z
dc.date.issued2024-01-12
dc.description.abstractThe modern scene of software development experiences an exponential growth in the number of software projects, applications and code-bases. As software increases substantially in both size and complexity, software engineers face significant challenges in developing and maintaining high-quality software applications. Therefore, support in the form of automated techniques and tools is much needed to accelerate development productivity and improve software quality. The rise of Artificial Intelligence (AI) has the potential to bring such support and significantly transform the practices of software development. This thesis explores the use of AI in developing automated support for improving three aspects of software quality: software documentation, technical debt and software defects. We leverage a large amount of data from software projects and repositories to provide actionable insights and reliable support. Using cutting-edge machine/deep learning technologies, we develop a novel suite of automated techniques and models for pseudo-code documentation generation, technical debt identification, description and repayment, and patch generation for software defects. We conducted several intensive empirical evaluations which show the high effectiveness of our approach.
dc.format.extent148
dc.identifier.urihttps://hdl.handle.net/20.500.14154/71444
dc.language.isoen
dc.publisherUniversity of Wollongong
dc.subjectSoftware Engineering
dc.subjectDeep Learning
dc.subjectMachine Learning
dc.subjectArtificial Intelligence
dc.subjectAutomated Software Engineering
dc.subjectSoftware quality
dc.subjectData Engineering
dc.subjectData Science
dc.subjectSoftware Processes
dc.subjectSoftware Metrics
dc.subjectPseudo-Code
dc.subjectTechnical Debt
dc.subjectSelf-Admitted Technical Debt
dc.subjectAutomated Program Repair
dc.subjectSoftware Documentation
dc.subjectSoftware Refactoring
dc.titleDeveloping AI-Powered Support for Improving Software Quality
dc.typeThesis
sdl.degree.departmentComputing and Information Technology
sdl.degree.disciplineArtificial Intelligence (and Deep Learning) for Software Engineering
sdl.degree.grantorUniversity of Wollongong
sdl.degree.nameDoctor of Philosophy
sdl.thesis.sourceSACM - Australia

Files

Collections

Copyright owned by the Saudi Digital Library (SDL) © 2024