Earth and Space Science Informatics [IN]

IN31A  MS:Exh Hall B   Wednesday
Challenges for Earth Science Software Reuse Posters
Presiding: V E Delnore, NASA Langley Research Center; R Swick, National Snow and Ice Data Center, University of Colorado, Boulder; R E Wolfe, NASA Goddard Space Flight Center

IN31A-0074 

A Community-Developed Measurement of the Reusability of Software Through Reuse Readiness Levels

Marshall, J J (James.J.Marshall@nasa.gov), Innovim / NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Mailstop 614.9, Greenbelt, MD 20771, United States Berrick, S W (Stephen.W.Berrick@nasa.gov), NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Mailstop 610.2, Greenbelt, MD 20771, United States Bertolli, A (Angelo.Bertolli@nasa.gov), Innovim / NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Mailstop 614.5, Greenbelt, MD 20771, United States Burrows, H (ghburrows@comcast.net), Autonomous Undersea Systems Institute, 86 Old Concord Turnpike, Lee, NH 03824, United States Delnore, V E (v.e.delnore@nasa.gov), NASA Langley Research Center, 8 Langley Blvd., Hampton, VA 23681, United States Downs, R R (rdowns@ciesin.columbia.edu), Columbia University, Center for International Earth Science Information Network 202 Geoscience 61 Route 9W - PO Box 1000, Palisades, NY 10964, United States Enloe, Y (yonsook@mindspring.com), SGT Inc., 7701 Greenbelt Rd. Suite 400, Greenbelt, MD 20770, United States Falke, S (stefan@wustl.edu), Washington University in St. Louis, Campus Box 1180 One Brookings Drive, St. Louis, MO 63130, United States Folk, M (mfolk@hdfgroup.org), The HDF Group, 1901 S. First St. Suite C-2, Champaign, IL 61820, United States Gerard, N (Neil.Gerard@nasa.gov), Innovim / NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Mailstop 614.9, Greenbelt, MD 20771, United States Gerard, R (Ryan.Gerard@nasa.gov), Innovim / NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Mailstop 614.9, Greenbelt, MD 20771, United States Hunter, M (Mary.Hunter@nasa.gov), Innovim / NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Mailstop 614.9, Greenbelt, MD 20771, United States Jasmin, T (tommy.jasmin@ssec.wisc.edu), University of Wisconsin, Space Science and Engineering Center 1225 W. Dayton St., Madison, WI 53706, United States McComas, D (David.C.Mccomas@nasa.gov), NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Mailstop 582.0, Greenbelt, MD 20771, United States Samadi, S (Shahin.Samadi@nasa.gov), Innovim / NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Mailstop 614.9, Greenbelt, MD 20771, United States Sherman, M (msherman@sgt-inc.com), SGT Inc. / NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Mailstop 614.1, Greenbelt, MD 20771, United States Swick, R (swick@nsidc.org), National Snow and Ice Data Center, CIRES, Campus Box 449 University of Colorado, Boulder, CO 80309, United States Tilmes, C (Curt.Tilmes@nasa.gov), NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Mailstop 614.5, Greenbelt, MD 20771, United States * Wolfe, R E (Robert.E.Wolfe@nasa.gov), NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Mailstop 614.5, Greenbelt, MD 20771, United States

When software is developed with reuse purposes in mind from the start, the resulting product will often be more mature, in a reuse sense, than products which are modified for reuse purposes after they have been developed. But it can be difficult to assess the maturity level of a software product due to the variety of factors that influence its reusability. If these factors could be measured, assessed, and combined into a single scale measuring the maturity of the software in terms of reusability, it would be of great benefit to developers. They will more easily be able to determine how ready the software is for their purposes, and how much modification may be necessary before it can fill their needs. The NASA Earth Science Data Systems (ESDS) Software Reuse Working Group is in the process of developing a set of Reuse Readiness Levels (RRLs) for the purpose of determining the reuse maturity of software assets. These levels are modeled after NASA's Technology Readiness Levels (TRLs), which have been used for many years, particularly for assessing hardware's readiness for spaceflight purposes. To assess the reuse maturity of software, a number of factors are included in the Working Group's development of the RRL scale including portability, extensibility, documentation, support, packaging, intellectual property and licensing issues, standards compliance, verification and testing, and modularity. Members of the working group have described the levels reusable software goes through as it becomes more mature in each of these areas. These individual levels will be combined into a single RRL scale that will allow a single number to describe the reuse maturity of software. This presentation will describe the Working Group's efforts in the creation of the Reuse Readiness Level (RRL) scale.

IN31A-0075 

Measuring the Costs and Benefits of Reuse: Building a Data Server Using Existing Software

* Gallagher, J (jgallagher@opendap.org), OPeNDAP, Inc., 165 DEAN KNAUSS DR., NARRAGANSETT, RI 02882-1124, United States West, P (pwest@ucar.edu), NCAR/ESSL/HAO, P.O. Box 3000, Boulder, CO 80307, United States Potter, N (npotter@opendap.org), OPeNDAP, Inc., 165 DEAN KNAUSS DR., NARRAGANSETT, RI 02882-1124, United States Garcia, J (jgarcia@ucar.edu), NCAR/ESSL/HAO, P.O. Box 3000, Boulder, CO 80307, United States Fox, P (pfox@ucar.edu), NCAR/ESSL/HAO, P.O. Box 3000, Boulder, CO 80307, United States

OPeNDAP, in a partnership with NCAR/ESSL/HAO, has released a data server whose design and implementation was largely based on the reuse of existing software from earlier projects. These projects, OPeNDAP's data server and the Earth System Grid II data server, focused on different communities and over time each became substantial pieces of software. The effort to merge these and build a single server which addressed the combined needs of these different communities hinged not only on both groups working effectively together, but on their ability to leverage the existing software and reuse it in a new design. Here we discuss the rationale for merging the two efforts and provide measurements (using common software engineering metrics) of the cost and complexity of the original systems and compare those to the resulting system. We include a measure of the new software that had to be developed to realize the goal of combining the two groups' servers. Furthermore, we evaluate the portion of the effort devoted to new features added as a result of evolving requirements versus previously existing features which had to be re-implemented to enable the new server to function.

IN31A-0076 

Using Selection Pressure as an Asset to Develop Reusable, Adaptable Software Systems

* Berrick, S W (Stephen.W.Berrick@nasa.gov), NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Code 610.2, Greenbelt, MD 20771, United States Lynnes, C (Chris.Lynnes@nasa.gov), NASA Goddard Space Flight Center, NASA Goddard Space Flight Center Code 610.2, Greenbelt, MD 20771, United States

The Goddard Earth Sciences Data and Information Services Center (GES DISC) at NASA has over the years developed and honed a number of reusable architectural components for supporting large-scale data centers with a large customer base. These include a processing system (S4PM) and an archive system (S4PA) based upon a workflow engine called the Simple, Scalable, Script-based Science Processor (S4P); an online data visualization and analysis system (Giovanni); and the radically simple and fast data search tool, Mirador. These subsystems are currently reused internally in a variety of combinations to implement customized data management on behalf of instrument science teams and other science investigators. Some of these subsystems (S4P and S4PM) have also been reused by other data centers for operational science processing. Our experience has been that development and utilization of robust, interoperable, and reusable software systems can actually flourish in environments defined by heterogeneous commodity hardware systems, the emphasis on value-added customer service, and continual cost reduction pressures. The repeated internal reuse that is fostered by such an environment encourages and even forces changes to the software that make it more reusable and adaptable. Allowing and even encouraging such selective pressures to software development has been a key factor in the success of S4P and S4PM, which are now available to the open source community under the NASA Open Source Agreement. http://disc.gsfc.nasa.gov

IN31A-0077 

Reuse of the NASA LP DAAC MODIS Reprojection Tool (MRT) and the USGS Global Visualization Viewer (GloVis) for the Development of the LP DAAC Web-Based MODIS Reprojection Tool (MRTWeb)

* Sohre, T (tsohre@usgs.gov), U.S. Geological Survey, Center for Earth Resources Observation and Science (EROS) 47914 252nd Street, Sioux Falls, SD 57198-0001, United States Sauer, B (bsauer@usgs.gov), SAIC, Center for Earth Resources Observation and Science (EROS) 47914 252nd Street, Sioux Falls, SD 57198-0001, Maiersperger, T (tmaiersperger@usgs), SAIC, Center for Earth Resources Observation and Science (EROS) 47914 252nd Street, Sioux Falls, SD 57198-0001, Macie, M (Medora.B.Macie@nasa.gov), NASA, ESDIS Science Operations Office GSFC Code 423, Greenbelt, MD 20771, United States Miller, W (wamiller@usgs.gov), U.S. Geological Survey, Center for Earth Resources Observation and Science (EROS) 47914 252nd Street, Sioux Falls, SD 57198-0001, United States

The Land Processes Distributed Active Archive Center (LP DAAC) was established as part of NASA's Earth Observing System (EOS) Data and Information System (EOSDIS) initiative to process, archive, and distribute land-related data collected by EOS sensors, thereby promoting the inter-disciplinary study and understanding of the integrated Earth system. The role of the LP DAAC includes the higher-level processing and distribution of ASTER data, and the distribution of MODIS land products derived from data acquired by the Terra and Aqua satellites. The LP DAAC anticipated that the community of land data users would need special software tools for handling the Level-3 MODIS land data products that would be distributed in HDF-EOS format and in the ISIN projection. The development of the MODIS Reprojection Tool (MRT) enabled users to read data files in HDF-EOS format (MODIS Level-2G, Level-3, and Level-4 land data products), specify a geographic subset or specific science data sets as input to processing, perform geographic transformation to a different coordinate system/cartographic projection, write the output to file formats other than HDF-EOS. Additional information regarding the MRT including links to download the software can be found at: http://lpdaac.usgs.gov/landdaac/tools/modis/index.asp. The LP DAAC has utilized the USGS Global Visualization Viewer (GloVis) as one method of data search and order. GloVis is a quick and easy online search and order tool for selected satellite data. The viewer allows user- friendly access to all available browse images from a number of Landsat data collections as well as ASTER, MODIS, and EO-1 data. Through a graphic map display, the user can select any area of interest and quickly view all available browse images within the USGS inventory for the specified location. GloVis can be run online at http://glovis.usgs.gov/ and the source code and be downloaded from: https://glovis.usgs.gov/distribution/. The LP DAAC saw an opportunity to reuse technologies from MRT and Glovis to develop a web-based tool that allows users to rapidly visualize tile-based MODIS data within a map context, navigate through time and space, select tiles of interest for processing, and then mosaic, subset, reproject, and select a data output format. This tool was developed utilizing a rapid development methodology that reused two existing technologies (MRT and GloVis). This paper will concentrate on the modification of reusable assets (specifically, MRT and GloVis) for reuse in a new system (MRTWeb). Lessons learned through this reuse experience will be highlighted.

IN31A-0078 

Reuse Requirements for Generating Long Term Climate Data Sets

* Fleig, A J (albert.fleig@gsfc.nasa.gov), PITA Analytic Sciences, 8705 Burning Tree Road, Bethesda, MD 20817, United States

Creating long term climate data sets from remotely sensed data requires a specialized form of code reuse. To detect long term trends in a geophysical parameter, such as global ozone amount or mean sea surface temperature, it is essential to be able to differentiate between real changes in the measurement and artifacts related to changes in processing algorithms or instrument characteristics. The ability to rerun the exact algorithm used to produce a given data set many years after the data was originally made is essential to create consistent long term data sets. It is possible to quickly develop a basic algorithm that will convert a perfect instrument measurement into a geophysical parameter value for a well specified set of conditions. However the devil is in the details and it takes a massive effort to develop and verify a processing system to generate high quality global climate data over all necessary conditions. As an example, from 1976 until now, over a hundred man years and eight complete reprocessings have been spent on deriving thirty years of total ozone data from multiple backscattered ultraviolet instruments. To obtain a global data set it is necessary to make numerous assumptions and to handle many special conditions (e.g. "What happens at high solar zenith angles with scattered clouds for snow covered terrain at high altitudes"?) It is easier to determine the precision of a remotely sensed data set than to determine its absolute accuracy. Fortunately if the entire data set is made with a single instrument and a constant algorithm the ability to detect long term trends is primarily determined by the precision of the measurement system rather than its absolute accuracy. However no instrument runs forever and new processing algorithms are developed over time. Introducing the resulting changes can impact the estimate of product precision and reduce the ability to estimate long term trends.Given an extended period of time when both the initial measurement system and the new one provide simultaneous measurements it may be possible to identify differences between the two systems and produce a consistent merged long term data set. Unfortunately this is often not the case. Instead it is necessary to understand the exact details of all the assumptions built into the initial processing system and to evaluate the impact of changes in each of these assumptions and of new features introduced into the next generation processing system. This is not possible without complete understanding of exactly how the original data was produced. While scientific papers and algorithm theoretical basis documents provide substantial details about the concepts they do not provide the necessary detail. Only exact processing codes with all the necessary ancillary data to run them provide the needed information. Since it will be necessary to modify the code for the new instrument it is also necessary to provide all of the tools such as table generation routines and input parameters used to generate the code. This has not been a problem for the people that make the first set of measurements of a given parameter. There was no similar predecessor global data set to match and they know what they assumed in making their measurements. But we are entering an era when it is necessary to consider the next generation. For instance the entire 30 year global ozone data set that started with the Total Ozone Mapping Spectrometer instrument launched in 1978 on the Nimbus 7 spacecraft was produced by a single science team. Similar measurements will be made well into the middle of the coming century with instruments to be flown on the National Polar Orbiting Environmental Satellite System but the original science team (unfortunately) will not be there to explain what they did over that period