Combining static and dynamic impact analysis for large-scale enterprise systems

被引:1
作者
Chen, Wen [1 ]
Wassyng, Alan [1 ]
Maibaum, Tom [1 ]
机构
[1] McMaster Centre for Software Certification, McMaster University, Hamilton, ON
来源
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) | 2014年 / 8892卷
关键词
Aspect-oriented programming; AspectJ; Dependency graph; Dynamic analysis; Impact analysis; Instrumentation; Large-scale enterprise systems; Regression Testing; Static analysis;
D O I
10.1007/978-3-319-13835-0_16
中图分类号
学科分类号
摘要
Software changes and their impact on large-scale enterprise systems are critical, hard to identify and calculate. A typical enterprise system may consist of hundreds of thousands of classes and methods. Thus it is extremely costly and difficult to apply conventional testing techniques to such a system. In our previous work [1], a conservative static analysis with the capability of dealing with inheritance was conducted on an enterprise system and associated changes to obtain all the potential impacts. However, since static analysis takes into account all the possible system behaviours, the analysis often results in a good number of false-positives and thus over-estimation of the impact on other methods in the system. This work focuses on extending our previous static approach by an aspect-based dynamic analysis, to instrument the system and collect a set of dynamic impacts at run-time. The new approach is still safe, but more precise than the static analysis. Safety is preserved since the static analysis serves as the input source to the dynamic analysis, and we are careful not to discard impacts unless we can show that they are definitely not impacted by the change. It is more precise since dynamic analysis examines behaviours that do definitely occur at run-time and hence is able to reflect the real impacts. Additionally, our analysis is able to handle the scalability issue. The targeted system is orders of magnitude larger than the system other existing approaches can deal with. A case study was conducted to illustrate that specific objectives can be attained. © Springer International Publishing Switzerland 2014.
引用
收藏
页码:224 / 238
页数:14
相关论文
共 50 条
[31]   Graspan: A Single-machine Disk-based Graph System for Interprocedural Static Analyses of Large-scale Systems Code [J].
Wang, Kai ;
Hussain, Aftab ;
Zuo, Zhiqiang ;
Xu, Guoqing ;
Sani, Ardalan Amiri .
TWENTY-SECOND INTERNATIONAL CONFERENCE ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS (ASPLOS XXII), 2017, :389-404
[32]   Graspan: A Single-machine Disk-based Graph System for Interprocedural Static Analyses of Large-scale Systems Code [J].
Wang, Kai ;
Hussain, Aftab ;
Zuo, Zhiqiang ;
Xu, Guoqing ;
Sani, Ardalan Amiri .
ACM SIGPLAN NOTICES, 2017, 52 (04) :389-404
[33]   Graspan: A single-machine disk-based graph system for interprocedural static analyses of large-scale systems code [J].
Wang K. ;
Hussain A. ;
Zuo Z. ;
Xu G. ;
Amiri Sani A. .
ACM SIGPLAN Notices, 2017, 52 (04) :389-404
[34]   Combining Static Analysis Error Traces with Dynamic Symbolic Execution (Experience Paper) [J].
Busse, Frank ;
Gharat, Pritam ;
Cadar, Cristian ;
Donaldson, Alastair F. .
PROCEEDINGS OF THE 31ST ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2022, 2022, :568-579
[35]   Dynamic Structure Design of Large-scale High-speed Gantry Type CNC Milling Machine [J].
Zeng, Li Qiang ;
Ma, Zhi Peng ;
Zhao, Xing Yu ;
Zhang, Da Wei .
ADVANCES IN MECHANICAL DESIGN, PTS 1 AND 2, 2011, 199-200 :1065-1068
[36]   Analysis and prediction of vibro-acoustic characteristics of parallel propulsion systems for large-scale marine ships [J].
Xu, Jianghai ;
Liu, Xueliang ;
Xie, Zhongliang ;
Jiao, Chunxiao ;
Ta, Na ;
Rao, Zhushi .
APPLIED OCEAN RESEARCH, 2024, 143
[37]   Visual software analytics for the build optimization of large-scale software systems [J].
Alexandru Telea ;
Lucian Voinea .
Computational Statistics, 2011, 26 :635-654
[38]   Visual software analytics for the build optimization of large-scale software systems [J].
Telea, Alexandru ;
Voinea, Lucian .
COMPUTATIONAL STATISTICS, 2011, 26 (04) :635-654
[39]   Accurate Application Progress Analysis for Large-Scale Parallel Debugging [J].
Mitra, Subrata ;
Laguna, Ignacio ;
Ahn, Dong H. ;
Bagchi, Saurabh ;
Schulz, Martin ;
Gamblin, Todd .
ACM SIGPLAN NOTICES, 2014, 49 (06) :193-203
[40]   Static Analysis of Dynamic Database Usage in Java']Java Systems [J].
Meurice, Loup ;
Nagy, Csaba ;
Cleve, Anthony .
ADVANCED INFORMATION SYSTEMS ENGINEERING (CAISE 2016), 2016, 9694 :491-506