About the lab
Complex software should be understandable, testable, and dependable. At FOSELAB, the Formal Methods & Software Engineering group at the University of Bergamo, we bring rigorous methods into the design and development of systems that must behave reliably.
We use model-driven engineering, software architecture, UML, and Abstract State Machines to describe systems precisely. With the ASMETA toolset, simulation, scenario-based validation, model checking, and runtime monitoring, we examine how designs behave, how components interact, and whether key requirements continue to hold.
We also develop model-based, combinatorial, and search-based testing techniques to find failures and keep tests useful as software evolves. We apply these methods to the safety of cyber-physical, autonomous, and self-adaptive systems, including drones, vehicles, and medical devices. We explore how language models can assist formal specification and how to validate synthetic data when real-world data is limited.