Issue No.06 - Nov.-Dec. (2011 vol.28)
Thomas Clune , NASA/Goddard Space Flight Center
Richard Rood , University of Michigan
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MS.2011.117
Over the past 30 years, most climate models have grown from relatively simple representations of a few atmospheric processes to complex multidisciplinary systems. Computer infrastructure over that period has gone from punchcard mainframes to modern parallel clusters. Model implementations have become complex, brittle, and increasingly difficult to extend and maintain. Verification processes for model implementations rely almost exclusively on some combination of detailed analyses of output from full climate simulations and system-level regression tests. Besides being costly in terms of developer time and computing resources, these testing methodologies are limited in the types of defects they can detect, isolate, and diagnose. Mitigating these weaknesses of coarse-grained testing with finer-grained unit tests has been perceived as cumbersome and counterproductive. Recent advances in commercial software tools and methodologies have led to a renaissance of systematic fine-grained testing. This opens new possibilities for testing climate-modeling-software methodologies.
software engineering, program verification, testing strategies, testing and debugging
Thomas Clune, Richard Rood, "Software Testing and Verification in Climate Model Development", IEEE Software, vol.28, no. 6, pp. 49-55, Nov.-Dec. 2011, doi:10.1109/MS.2011.117