UCL Discovery
UCL home » Library Services » Electronic resources » UCL Discovery

Code-level model checking in the software development workflow at Amazon Web Services

Chong, N; Cook, B; Eidelman, J; Kallas, K; Khazem, K; Monteiro, FR; Schwartz-Narbonne, D; ... Tuttle, MR; + view all (2021) Code-level model checking in the software development workflow at Amazon Web Services. Software: Practice and Experience , 51 (4) pp. 772-797. 10.1002/spe.2949. Green open access

[thumbnail of spe.2949.pdf]
Preview
Text
spe.2949.pdf - Published Version

Download (3MB) | Preview

Abstract

This article describes a style of applying symbolic model checking developed over the course of four years at Amazon Web Services (AWS). Lessons learned are drawn from proving properties of numerous C-based systems, for example, custom hypervisors, encryption code, boot loaders, and an IoT operating system. Using our methodology, we find that we can prove the correctness of industrial low-level C-based systems with reasonable effort and predictability. Furthermore, AWS developers are increasingly writing their own formal specifications. As part of this effort, we have developed a CI system that allows integration of the proofs into standard development workflows and extended the proof tools to provide better feedback to users. All proofs discussed in this article are publicly available on GitHub.

Type: Article
Title: Code-level model checking in the software development workflow at Amazon Web Services
Open access status: An open access version is available from UCL Discovery
DOI: 10.1002/spe.2949
Publisher version: https://doi.org/10.1002/spe.2949
Language: English
Additional information: © 2021 The Authors. Software:Practice and Experience published by John Wiley & Sons, Ltd. This is an open access article under the terms of the Creative Commons Attribution-NonCommercial-NoDerivs License (http://creativecommons.org/licenses/by-nc-nd/4.0/).
Keywords: continuous integration, model checking, memory safety
UCL classification: UCL
UCL > Provost and Vice Provost Offices > UCL BEAMS
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science > Dept of Computer Science
URI: https://discovery.ucl.ac.uk/id/eprint/10131088
Downloads since deposit
45Downloads
Download activity - last month
Download activity - last 12 months
Downloads by country - last 12 months

Archive Staff Only

View Item View Item