Abstract
Dynamic software updating (DSU) is the act of modifying software without stopping its execution. DSU is employed to preserve the high availability in the deployed software systems. Although significant investigations have been conducted on static analysis (SA) to determine DSU errors, no particular study exists that explores the effects of SA for dynamic software updating. The objective of the study presented in this paper is to explore the effects of static analysis for DSU. In this exploration, four evaluation metrics were declared including the number of update operations, the number of violations, the cyclomatic complexity, and the patch size. Also, a novel framework was introduced and 18 versions of baseline target programs were employed to explore the effects of static analysis for DSU. The results have explained that static analysis can detect violations of DSU. It may affect the complexity of the new versions of the target programs and having optimization can further reduce those violations. In addition, the results show that the SA may change the number of update operations and the patch size for DSU. Overall, the results have proved that SA for dynamic software updating could affect the complexity of the target programs, the number of update operations, and the patch size. Furthermore, this exploration has offered a novel framework and four evaluation metrics for measuring the effects of static analysis for DSU.
Highlights
Dynamic software updating (DSU) is the act of modifying software systems without having to terminate its execution [1], [2]
OF THE STUDY This study aims to explore the effects of static analysis for dynamic software updating
The results show that the values of cyclomatic or McCabe complexity (CC) are changed in the final destination results for 4 target programs including the new versions of ClientSessionImpl, ChannelSession, JNDIRealm, and ZipUtil
Summary
Dynamic software updating (DSU) is the act of modifying software systems without having to terminate its execution [1], [2]. Static analysis (SA) is a program analysis approach to find software flaws without executing the program code [7]. Extensive research has been carried out on static analysis for DSU [6], [8]–[10], the effects of SA for dynamic software updating remain an open question. It is not obvious which parameters will be affected when applying static analysis for DSU. Static analysis is (SA) is a program analysis approach useful in finding software errors without having to execute the program code [7], [24]. Dynamic program analysis is performed during the program runtime [25]
Published Version (
Free)
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have