Abstract
Distributed software systems are pervasive today and they are increasingly developed/deployed to meet the growing needs for scalable computing. Given their critical roles in modern information infrastructures, assuring the quality of distributed software is crucial. As a fundamental methodology for software quality assurance in general, program analysis underlies a range of techniques and tools for constructing and assuring distributed systems. Yet to this date, there remains a lack of systematical understanding of what have been done and how far we are in the field of program analysis for distributed systems. To gain a comprehensive and coherent view of this area hence inform relevant future research, this article provides a systematic literature review of the (1) technical approaches, including analysis methodology, modality, underlying representation, algorithmic design, data utilized, and scope, (2) applications, with respect to the quality aspects served, and (3) evaluation, including the datasets and metrics considered, of various program analyses in the domain of distributed software in the past 30 years (1995–2024). In addition to knowledge systematization, we also extend our insights into the limitations of and challenges faced by current technique and evaluation designs, which shed light on potentially promising future research directions.
| Original language | English |
|---|---|
| Article number | -ART300 |
| Journal | ACM Computing Surveys |
| Volume | 57 |
| Issue number | 12 |
| DOIs | |
| State | Published - Jul 11 2025 |
Keywords
- Program analysis
- analysis algorithm
- application technique
- benchmarks
- distributed program
- distributed system
- evaluation metrics
- program representation
- software quality
Fingerprint
Dive into the research topics of 'A Survey of Program Analysis for Distributed Software Systems'. Together they form a unique fingerprint.Cite this
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver