Vision: An Extensible Methodology for Formal Software Verification in Microservice Systems
By: Connor Wojtak, Darek Gajewski, Tomas Cerny
Potential Business Impact:
Finds hidden problems in computer programs.
Microservice systems are becoming increasingly adopted due to their scalability, decentralized development, and support for continuous integration and delivery (CI/CD). However, this decentralized development by separate teams and continuous evolution can introduce miscommunication and incompatible implementations, undermining system maintainability and reliability across aspects from security policy to system architecture. We propose a novel methodology that statically reconstructs microservice source code into a formal system model. From this model, a Satisfiability Modulo Theories (SMT) constraint set can be derived, enabling formal verification. Our methodology is extensible, supporting software verification across multiple cross-cutting concerns. We focus on applying the methodology to verify the system architecture concern, presenting formal reasoning to validate the methodology's correctness and applicability for this concern. Additional concerns such as security policy implementation are considered. Future directions are established to extend and evaluate the methodology.
Similar Papers
Watchdogs and Oracles: Runtime Verification Meets Large Language Models for Autonomous Systems
Software Engineering
Makes self-driving cars safer and more trustworthy.
Towards the Coordination and Verification of Heterogeneous Systems with Data and Time
Software Engineering
Checks if complex systems work together correctly.
Specification and Verification for Climate Modeling: Formalization Leading to Impactful Tooling
Logic in Computer Science
Makes climate models more trustworthy and reliable.