Large-Scale Formal Verification in Practice: A Process Perspective

Select |




Print


Andronick, June; Jeffery, Ross; Klein, Gerwin; Kolanski, Rafal; Staples, Mark; Zhang, He (Jason); Zhu, Liming

Andronick, June; Jeffery, Ross; Klein, Gerwin; Kolanski, Rafal; Staples, Mark; Zhang, He (Jason); Zhu, Liming


2012-06-02


Conference Material


International Conference on Software Engineering (ICSE)


Zurich, Switzerland


1002-1011


The L4.verified project was a rare success in large-scale, formal verification: it provided a formal, machine-checked, code-level proof of the full functional correctness of the seL4 microkernel. In this paper we report on the development process and management issues of this project, highlighting key success factors. We formulate a detailed descriptive model of its middle-out development process, and analyze the evolution and dependencies of code and proof artifacts. We compare our key findings on verification and re-verification with insights from other verification efforts in the literature. Our analysis of the project is based on complete access to project logs, meeting notes, and version control data over its entire history, including its long-term, ongoing maintenance phase. The aim of this work is to aid understanding of how to successfully run large-scale formal software verification projects.


ACM


program verification, microkernel, seL4, software process, formal methods


http://www.ifi.uzh.ch/icse2012/


nicta:5396


Andronick, June; Jeffery, Ross; Klein, Gerwin; Kolanski, Rafal; Staples, Mark; Zhang, He (Jason); Zhu, Liming. Large-Scale Formal Verification in Practice: A Process Perspective. In: International Conference on Software Engineering (ICSE); Zurich, Switzerland. ACM; 2012-06-02. 1002-1011.



Loading citation data...

Citation counts
(Requires subscription to view)