Principles of sustainable scientific software: lessons from developing a data processing program for small-angle neutron scattering

 pdf (2997K)

The SAS program is the primary data processing tool for the YuMO small-angle neutron scattering spectrometer. The paper presents a retrospective analysis of its two-decade evolution, from a Fortran prototype to a modern software system. The analysis focuses on the architectural decisions that have ensured the program’s long-term viability and its ability to adapt to instrument upgrades.

The core solution was a modular architecture that abstracts the detector system. This enabled the seamless integration of data from two scattering detectors and, later, from a position-sensitive detector. A strict processing pipeline and a unified internal data representation formed the basis for physically grounded algorithms, including weighted merging of spectra, resolution-aware smoothing, and built-in statistical quality control. The program’s interfaces—a command line for batch processing and a graphical user interface for interactive work—are built upon a single computational core, ensuring result consistency and flexibility in use.

Long-term operation has confirmed that the underlying architectural principles naturally align with the key characteristics of international software quality standards, particularly those critical for long-term sustainability. Therefore, the development and evolution of SAS demonstrates a universal set of architectural principles that can serve as a foundation for building sustainable scientific software in related fields of experimental physics.

Keywords: small-angle neutron scattering, YuMO spectrometer, multi-detector system, data processing pipeline, sustainable software, object-oriented architecture, software quality
Citation in English: Soloviev A.G., Solovjeva T.M., Ivankov A.I., Islamov A.K., Kuklin A.I. Principles of sustainable scientific software: lessons from developing a data processing program for small-angle neutron scattering // Computer Research and Modeling, 2026, vol. 18, no. 2, pp. 335-358
Citation in English: Soloviev A.G., Solovjeva T.M., Ivankov A.I., Islamov A.K., Kuklin A.I. Principles of sustainable scientific software: lessons from developing a data processing program for small-angle neutron scattering // Computer Research and Modeling, 2026, vol. 18, no. 2, pp. 335-358
DOI: 10.20537/2076-7633-2026-18-2-335-358

Copyright © 2026 Soloviev A.G., Solovjeva T.M., Ivankov A.I., Islamov A.K., Kuklin A.I.

Indexed in Scopus

Full-text version of the journal is also available on the web site of the scientific electronic library eLIBRARY.RU

The journal is included in the Russian Science Citation Index

The journal is included in the RSCI

International Interdisciplinary Conference "Mathematics. Computing. Education"