Supporting Software Quality with Probabilistic Reasoning and Practical Secure Programming Education

Loading...
Thumbnail Image

TR Number

Date

2026-05-27

Journal Title

Journal ISSN

Volume Title

Publisher

Virginia Tech

Abstract

Despite concerted efforts, perfecting software quality and security remains an elusive goal. In this dissertation, we argue that supporting software quality efforts requires a holistic two-pronged approach that advances both tooling and training. Specifically, this dissertation contributes two novel software engineering frameworks. First, we introduce PRISME(Probabilistic Reasoning for Intelligent Software Maintenance and Evolution), an analysis framework that applies probabilistic logic programming to software quality tasks. We have applied PRISME to enable advanced analyses, including exception-handling anti-pattern prioritization and rare-path coverage. Second, we present a drill-and-practice platform designed to target secure programming skills, called SecureCoder. This platform features a unique architecture and explores an emerging method for exercise generation and AI-powered tutoring in secure programming. Together, these contributions form a dual strategy—the toolset and the mindset—that strengthens both the technological and human aspects of software maintenance, supporting the quality of modern software systems.

Description

Keywords

Software Quality, Probabilistic Reasoning, Active Learning, Secure Coding

Citation