The Changing Nature of Computational Science Software

by   Huy Tu, et al.

How should software engineering be adapted for Computational Science (CS)? If we understood that, then we could better support software sustainability, verifiability, reproducibility, comprehension, and usability for CS community. For example, improving the maintainability of the CS code could lead to: (a) faster adaptation of scientific project simulations to new and efficient hardware (multi-core and heterogeneous systems); (b) better support for larger teams to co-ordinate (through integration with interdisciplinary teams); and (c) an extended capability to model complex phenomena. In order to better understand computational science, this paper uses quantitative evidence (from 59 CS projects in Github) to check 13 published beliefs about CS. These beliefs reflect on (a) the nature of scientific challenges; (b) the implications of limitations of computer hardware; and (c) the cultural environment of scientific software development. What we found was, using this new data from Github, only a minority of those older beliefs can be endorsed. More than half of the pre-existing beliefs are dubious, which leads us to conclude that the nature of CS software development is changing. Further, going forward, this has implications for (1) what kinds of tools we would propose to better support computational science and (2) research directions for both communities.


Working in Harmony: Towards Integrating RSEs into Multi-Disciplinary CSE Teams

Within the rapidly diversifying field of computational science and engin...

Good Usability Practices in Scientific Software Development

Scientific software often presents very particular requirements regardin...

Computational Solutions for Today's Navy

New methods are being employed to meet the Navy's changing software-deve...

DevOps and Microservices in Scientific System development

There is a gap in scientific information systems development concerning ...

Community Organizations: Changing the Culture in Which Research Software Is Developed and Sustained

Software is the key crosscutting technology that enables advances in mat...

Robust Software Development for University-Built Satellites

Satellites and other complex systems now become more and more software d...

Please sign up or login with your details

Forgot password? Click here to reset