ASCR Workshop on the Science of Scientific-Software Development and Use

DOE logo

Software is an increasingly important component in the pursuit of scientific discovery.  Both its development and use are essential activities for many scientific teams.  At the same time, very little scientific study has been conducted to understand, characterize, and improve the development and use of software for science.

Computational science teams have diversified over time to include contributions from domain scientists who provide expertise in scientific and engineering disciplines, applied mathematicians who provide theoretical rigor to models, computer scientists who provide optimal algorithms and data structures, and software engineers who provide methodologies and tools adapted and adopted from other software domains.  These diverse contributions have enabled tremendous advances in the pursuit of scientific discovery, even as models, computer architectures, and software environments have become more complicated.

With this increasing diversity, we believe the next opportunity for qualitative improvement comes from applying the scientific method to understanding, characterizing, and improving how scientific software is developed and used.  We believe that this pursuit requires expertise from computational scientists themselves, and from the cognitive and social sciences. 

As we look to increase the productivity and sustainability of the scientific-software- development-and-use cycle, especially considering the potential impact of AI-driven tools, a more systematic application of the scientific method to understanding development and use processes [1, 2] will be a valuable tool to guide future work and results in more usable and sustainable software. This workshop will bring together computer scientists, computational scientists, social scientists, cognitive scientists, and others, to explore how we can conduct such systematic investigations, what can be learned, and how doing so will benefit the scientific enterprise.