Skip to main content
SHARE
Publication

XScan: An Integrated Tool for Understanding Open Source Community-Based Scientific Code...

by Weijian Zheng, Dali Wang, Fengguang Song
Publication Type
Conference Paper
Journal Name
International Conference on Computational Science
Publication Date
Page Numbers
226 to 237
Volume
11536
Issue
1
Conference Name
International Conference on Computational Sciences (ICCS 2019)
Conference Location
Faro, Portugal
Conference Sponsor
IEEE
Conference Date
-

Many scientific communities have adopted community-based models that integrate multiple components to simulate whole system dynamics. The community software projects’ complexity, stems from the integration of multiple individual software components that were developed under different application requirements and various machine architectures, has become a challenge for effective software system understanding and continuous software development. The paper presents an integrated software toolkit called X-ray Software Scanner (in abbreviation, XScan) for a better understanding of large-scale community-based scientific codes. Our software tool provides support to quickly summarize the overall information of scientific codes, including the number of lines of code, programming languages, external library dependencies, as well as architecture-dependent parallel software features. The XScan toolkit also realizes a static software analysis component to collect detailed structural information and provides an interactive visualization and analysis of the functions. We use a large-scale community-based Earth System Model to demonstrate the workflow, functions and visualization of the toolkit. We also discuss the application of advanced graph analytics techniques to assist software modular design and component refactoring.