SELGDec 17, 2019

Probabilistic Software Modeling: A Data-driven Paradigm for Software Analysis

arXiv:1912.07936v24 citations
Originality Highly original
AI Analysis

This addresses the lack of tools for behavioral software comprehension, offering a new paradigm for developers, though it appears incremental as it builds on existing probabilistic and data-driven methods.

The paper tackles the problem of understanding complex software behavior, especially with AI components, by introducing Probabilistic Software Modeling (PSM), a data-driven paradigm that synthesizes probabilistic networks to simulate and quantify program behavior, enabling applications like test generation and anomaly detection.

Software systems are complex, and behavioral comprehension with the increasing amount of AI components challenges traditional testing and maintenance strategies.The lack of tools and methodologies for behavioral software comprehension leaves developers to testing and debugging that work in the boundaries of known scenarios. We present Probabilistic Software Modeling (PSM), a data-driven modeling paradigm for predictive and generative methods in software engineering. PSM analyzes a program and synthesizes a network of probabilistic models that can simulate and quantify the original program's behavior. The approach extracts the type, executable, and property structure of a program and copies its topology. Each model is then optimized towards the observed runtime leading to a network that reflects the system's structure and behavior. The resulting network allows for the full spectrum of statistical inferential analysis with which rich predictive and generative applications can be built. Applications range from the visualization of states, inferential queries, test case generation, and anomaly detection up to the stochastic execution of the modeled system. In this work, we present the modeling methodologies, an empirical study of the runtime behavior of software systems, and a comprehensive study on PSM modeled systems. Results indicate that PSM is a solid foundation for structural and behavioral software comprehension applications.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes