eXtreme Modelling in Practice
A. Jesse Jiryu Davis, Max Hirschhorn, Judah Schvimer
Abstract
Formal modelling is a powerful tool for developing complex systems. At MongoDB, we use TLA + to model and verify multiple aspects of several systems. Ensuring conformance between a specification and its implementation can add value to any specification; it can avoid transcription errors, prevent bugs as a large organization rapidly develops the specified code, and even keep multiple implementations of the same specification in sync. In this paper, we explore model-based testing as a tool for ensuring specification-implementation conformance. We attempted two case studies: model-based trace-checking (MBTC) in the MongoDB Server's replication protocol and model-based test-case generation (MBTCG) in MongoDB Realm Sync's operational transformation algorithm. We found MBTC to be impractical for testing that the Server conformed to a highly abstract specification. MBTCG was highly successful for Realm Sync, however. We analyze why one technique succeeded and the other failed, and advise future implementers making similar attempts at model-based testing.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers12
- Model Checking Guided Testing for Distributed SystemsDong Wang, Wensheng Dou, Yu Gao, Chenao Wu et al.EuroSys 2023 · 21 citations
- Smart Casual Verification of the Confidential Consortium FrameworkHeidi Howard, Markus A. Kuppe, Edward Ashton, Amaury Chamayou et al.NSDI 2025 · 13 citations
- Modulo: Finding Convergence Failure Bugs in Distributed Systems with Divergence Resync ModelsBeom Heyn Kim, Taesoo Kim, David LieUSENIX ATC 2022 · 10 citations
- SandTable: Scalable Distributed System Model Checking with Specification-Level State ExplorationRuize Tang, Xudong Sun, Yu Huang, Yuyang Wei et al.EuroSys 2024 · 8 citations
- An Empirical Study on Kubernetes Operator BugsQingxin Xu, Yu Gao, Jun WeiISSTA 2024 · 7 citations
Related papers
- Multi-Grained Specifications for Distributed System Model Checking and VerificationLingzhi Ouyang, Xudong Sun, Ruize Tang, Yu Huang et al.EuroSys 2025 · 4 citations
- Fault-Tolerant Replication with Pull-Based Consensus in MongoDBSiyuan Zhou, Shuai MuNSDI 2021 · 38 citations
- Efficient state synchronisation in model-based testing through reinforcement learningUraz Cengiz Türker, Robert M. Hierons, Mohammad Reza Mousavi, Ivan Yu. TyukinASE 2021 · 7 citations
- TreeSync: Authenticated Group Management for Messaging Layer SecurityThéophile Wallez, Jonathan Protzenko, Benjamin Beurdouche, Karthikeyan BhargavanUSENIX Security 2023
- Sharding the State Machine: Automated Modular Reasoning for Complex Concurrent SystemsTravis Hance, Yi Zhou, Andrea Lattuada, Reto Achermann et al.OSDI 2023 · 18 citations
