paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Synthesizing Object State Transformers for Dynamic Software Updates

为动态软件更新合成对象状态转换器
ICSE 2021 IEEE/ACM 43rd International Conference on Software Engineering (ICSE)2021匹配度 2/10 · 该论文属于程序合成与动态软件更新(DSU)方向,核心是复用旧/新版本代码片段合成对象状态转换器,未涉及用户关注的 PL→AI(静态分析用于ML/Agentic程序)、AI→PL(LLM/Agent改进静态分析或形式化验证)、浮点程序分析或贝叶斯程序分析。虽然包含程序合成与DSL,但与用户研究画像的交叉点很弱。引用 9 inbox
Zelin Zhao, Yanyan Jiang, Chang Xu, Tianxiao Gu, Xiaoxing Ma
crossref: 2026-09-12dblp: 2026-09-12

AI 速览

一句话:通过复用新旧版本代码片段,自动合成动态软件更新中非平凡的对象状态转换器。

动态软件更新(DSU)旨在不重启系统的情况下在线修补程序状态,但跨版本的对象状态转换往往非平凡,阻碍了其实际应用。本文对 Tomcat 8 中 190 余个类变更开展实证研究,发现大多数非平凡的对象状态转换器可以通过重新组装旧版本与新版本的现有代码片段来构造。基于这一发现,作者提出了一种领域特定语言(DSL)以及一种基于代码复用的高效合成算法,用于自动生成非平凡的对象转换器。作者实现了工具 PASTA,并在真实软件系统上进行了实验评估,结果表明 PASTA 在非平凡对象转换任务上的成功次数是现有最佳 DSU 技术的 7.5 倍。

问题
动态软件更新需要在不重启的前提下完成跨版本对象状态转换,而现有方法难以自动处理非平凡的状态转换,导致 DSU 难以落地。
方法
通过对 Tomcat 8 中 190 余个类变更的实证研究,发现多数非平凡转换可由新旧版本代码片段重组而成;据此设计了一种 DSL 和基于代码复用的高效合成算法。
评估
实现了工具 PASTA,并在真实软件系统上开展实验,与现有最佳 DSU 技术对比,非平凡对象转换任务的成功次数达到后者的 7.5 倍。
原文摘要(Abstract)

There is an increasing demand for evolving software systems to deliver continuous services of no restart. Dynamic software update (DSU) aims to achieve this goal by patching the system state on the fly but is currently hindered from practice due to non-trivial cross-version object state transformations. This paper revisits this problem through an in-depth empirical study of over 190 class changes from Tomcat 8. The study produced an important finding that most non-trivial object state transformers can be constructed by reassembling existing old/new version code snippets. This paper presents a domain-specific language and an efficient algorithm for synthesizing non-trivial object transformers over code reuse. We experimentally evaluated our tool implementation PASTA with real-world software systems, reporting PASTA's effectiveness in succeeding in 7.5X non-trivial object transformation tasks compared with the best existing DSU techniques.

链接与引用

DOI 原文 · DBLP

BibTeX
@inproceedings{Zhao00GM21,
  title = {Synthesizing Object State Transformers for Dynamic Software Updates},
  author = {Zelin Zhao and Yanyan Jiang and Chang Xu and Tianxiao Gu and Xiaoxing Ma},
  booktitle = {ICSE},
  year = {2021},
  doi = {10.1109/icse43902.2021.00103}
}