Change Is the Only Constant: Dynamic Updates for Workflows
Daniel Sokolowski, Pascal Weisenburger, Guido Salvaneschi
Abstract
Software systems must be updated regularly to address changing requirements and urgent issues like security-related bugs. Traditionally, updates are performed by shutting down the system to replace certain components. In modern software organizations, updates are increasingly frequentÐup to multiple times per dayÐhence, shutting down the entire system is unacceptable. Safe dynamic software updating (DSU) enables component updates while the system is running by determining when the update can occur without causing errors. Safe DSU is crucial, especially for long-running or frequently executed asynchronous transactions (workflows), e.g., user-interactive sessions or order fulfillment processes. Unfortunately, previous research is limited to synchronous transaction models and does not address this case. In this work, we propose a unified model for safe DSU in workflows. We discuss how state-of-the-art DSU solutions fit into this model and show that they incur significant overhead. To improve the performance, we introduce Essential Safety, a novel safe DSU approach that leverages the notion of non-essential changes, i.e., semantics preserving updates. In 106 realistic BPMN workflows, Essential Safety reduces the delay of workflow completions, on average, by 47.8 % compared to the state of the art. We show that the distinction of essential and non-essential changes plays a crucial role in this reduction and that, as suggested in the literature, non-essential changes are frequent: at least 60 % and often more than 90 % of systems' updates in eight monorepos we analyze. CCS CONCEPTS • Software and its engineering → Software evolution; • Applied computing → Business process modeling.
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.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext a373df63-e025-4e60-af13-4e027a265d27Builds on1
Related papers
- Synthesizing Object State Transformers for Dynamic Software UpdatesZelin Zhao, Yanyan Jiang, Chang Xu, Tianxiao Gu et al.ICSE 2021 · 9 citations
- Strengthening Supply Chain Security with Fine-grained Safe Patch IdentificationChanghua Luo, Wei Meng, Shuai WangICSE 2024 · 1 citation
- Identifying casualty changes in software patchesAdriana Sejfia, Yixue Zhao, Nenad MedvidovicFSE 2021 · 7 citations
- Opportunistic Data Flow Integrity for Real-time Cyber-physical Systems Using Worst Case Execution Time ReservationYujie Wang, Ao Li, Jinwen Wang, Sanjoy K. Baruah et al.USENIX Security 2024 · 8 citations
- From Global to Local Quiescence: Wait-Free Code Patching of Multi-Threaded ProcessesFlorian Rommel, Christian Dietrich, Birte Friesel, Marcel Köppen et al.OSDI 2020
