MS Final Oral Exam: Jobayer Ahmmed

MS Final Oral Exam: Jobayer Ahmmed

Apr 21, 2026 - 11:00 AM
to , -

Join on Zoom: https://iastate.zoom.us/j/98814512021

Configuration-aware Software Documentation

Configurability is a common property of software allowing programs to be customized for the user. While configurability is pervasive, it can also lead to faults (or misconfigurations) and make program evolution challenging. Dependencies can be missed, essential code can be left in place when a configuration option is removed, or code can be deleted or changed when still in use by other configuration options. One challenge is a lack of sufficient documentation and traceability between configuration options and code during software evolution, which leads to limited understanding of the impact of changes across large configuration spaces. Existing approaches to solve these problems include automated documentation, analysis of version control history, or the use of special program configuration management languages. However, none of these provides a sufficient solution for managing configuration changes over time. In this thesis, we propose an automated approach called ConfiGen, which provides user-facing documentation and a back-end analysis showing the definitions and uses of configuration options. It includes traceability links to lines of program code and can be used to identify changes during system evolution. We have implemented a prototype of ConfiGen on top of a popular documentation tool and performed an empirical evaluation of its effectiveness on over 10 years of history for three C-language, highly configurable systems. We see that the configuration space becomes increasingly complex across versions, with up to a 40% increase in configuration density per file and a 128% increase in configuration footprint across the documentation, and git history analysis alone is insufficient.

Committee: Myra B. Cohen (major professor), Ali Jannesari and Mai Zheng