Software Engineering Practices in the Development of NASA Unified Weather Research and Forecasting (NU-WRF) Model
Abstract
The NASA Unified Weather Research and Forecasting (NU-WRF) Model is an effort to unify several WRF variants developed at NASA and bring together NASA's existing earth science models and assimilation systems that simulate the interaction among clouds, aerosols, atmospheric gases, precipitation, and land surfaces. By developing NU-WRF, the NASA modeling community expects to: (1) facilitate better use of WRF for scientific research, (2) reduce redundancy in major WRF development, (3) prolong the serviceable life span of WRF, and (4) allow better use of NASA high-resolution satellite data for short term climate and weather research. This project involves multiple teams from different organizations and the research goals are still evolving. As a result, software engineering best practices are needed for software life-cycle management and testing, and to ensure reliability of the data being generated. NASA software engineers and scientists have worked together to develop software requirements, scientific use cases, automated regression tests, software release plans, and a revision control system. Nightly automated regression tests are being used on scaled-down versions of the use cases to test if any code changes have unintentionally changed the science results or made the software unstable. Revision control management is needed to track software changes that are made by the many developers involved in the project. The release planning helps to guide the release of NU-WRF versions to the NASA community and allows for making strategic changes in delivery dates and software features as needed. The team of software engineers and scientists have also worked on optimizing, generalizing, and testing existing model preprocessing codes and run scripts for the various models. Finally, the team developed model coupling tools to link WRF with NASA earth science models. NU-WRF 1.0 was based on WRF3.1.1 and was released to the NASA community in July 2010, providing the researchers with a flexible, robust weather and climate modeling system with which to carry out their research. In this paper, we will discuss the software engineering practices used to develop NU-WRF and share some lessons learned.
- Publication:
-
AGU Fall Meeting Abstracts
- Pub Date:
- December 2010
- Bibcode:
- 2010AGUFMIN14B..04B
- Keywords:
-
- 1976 INFORMATICS / Software tools and services