Scientific software has emerged as an essential discipline in its own right. Because computational models, computer architectures, and scientific software projects have become extremely complex, the Computational Science & Engineering (CSE) community now has a unique opportunity—and an implicit mandate—to address pressing challenges in scientific software productivity, quality, and sustainability.
Strategies for planning in order to improve software productivity, quality, and sustainability.
Aspects of scientific software development that should be systematically addressed in order to improve software productivity, quality, and sustainability.
Approaches for developing code that is efficient, scalable, and portable—from laptops to emerging extreme-scale architectures.
Methods for testing and verification to ensure that software is robust and produces reliable results.
Ways to facilitate and distribute work across teams, promote partnerships via software, and contribute to stronger communities.
Ways to improve productivity and sustainability from an individual perspective.