Efficient Model Learning of Software Product Lines

Model learning aims to construct behavioral models of black-box software, enabling various types of analysis, such as model checking and model-based testing. In the context of Software Product Lines (SPLs), the shared features among products present an opportunity to reuse previously learned models, reducing the overall cost of model learning.
In this talk, we first provide an overview of active model learning algorithms, with a focus on the well-known L* algorithm. We then introduce an adaptive approach to SPL model learning that leverages observations from previously learned products to improve efficiency when learning new ones. Finally, we briefly discuss recent advances in the field.

Assistant Professor @ University of Tehran
Ramtin Khosravi received his Bachelor's, Master's, and Ph.D. in Computer Engineering from the Computer Engineering Department at Sharif University of Technology. Since 2007, he has been a faculty member at the School of Electrical and Computer Engineering, University of Tehran, where he has led the Software Architecture Lab for nearly 15 years. Throughout his career, he has maintained close ties with the software industry, working at various levels as a developer and later as a consultant. His research interests include the application of formal methods in software development. His current work focuses on applying model learning to software product lines and leveraging large language models (LLMs) for architecture-aware code generation.