Page Banner

United States Department of Agriculture

Agricultural Research Service

Research Project: OBJECT MODELING AND SCALING OF LANDSCAPE PROCESSES AND CONSERVATION EFFECTS IN AGRICULTURAL SYSTEMS

Location: Agricultural Systems Research Unit

Title: Environmental modeling framework invasiveness: analysis and implications

Authors
item Lloyd, Wes -
item David, Olaf -
item ASCOUGH, JAMES
item Rojas, Ken -
item Carlson, Jack -
item Leavesley, George -
item Krause, Peter -
item GREEN, TIMOTHY
item AHUJA, LAJPAT

Submitted to: Environmental Modelling & Software
Publication Type: Peer Reviewed Journal
Publication Acceptance Date: March 28, 2011
Publication Date: May 12, 2011
Citation: Lloyd, W., David, O., Ascough II, J.C., Rojas, K.W., Carlson, J., Leavesley, G.H., Krause, P., Green, T.R., Ahuja, L.R. 2011. Environmental modeling framework invasiveness: analysis and implications. Environmental Modeling & Software. 26(10):1240-1250.

Interpretive Summary: This paper presents results of an investigation on the framework invasiveness of environmental modeling frameworks, specifically, this research investigates relationships between invasiveness and the quality of modeling code. Additionally, we investigate the relationship between invasiveness and two common framework designs (lightweight versus heavyweight). Five metrics to measure framework invasiveness were proposed and applied to measure dependencies between model and framework code of several implementations of Thornthwaite and the Precipitation-Runoff Modeling System (PRMS), two well-known hydrological models. Framework invasiveness measurements were compared with existing popular software metrics including size (lines of code), cyclomatic complexity, and object-oriented coupling with generally positive correlations being found. We found that models with lower framework invasiveness tended to be smaller, less complex, and have less coupling. In addition, the lightweight framework model implementations were less invasive than the heavyweight framework model implementations. Study results suggest that framework invasiveness is undesirable for model code quality and that lightweight frameworks may help reduce invasiveness.

Technical Abstract: Environmental modeling frameworks support scientific model development by providing an Application Programming Interface (API) which model developers use to implement models. This paper presents results of an investigation on the framework invasiveness of environmental modeling frameworks. Invasiveness, similar to object-oriented coupling, can be defined as the quantity of dependencies between model code and the modeling framework. This research investigates relationships between invasiveness and the quality of modeling code. Additionally, we investigate the relationship between invasiveness and two common framework designs (lightweight versus heavyweight). Five metrics to measure framework invasiveness were proposed and applied to measure dependencies between model and framework code of several implementations of Thornthwaite and the Precipitation-Runoff Modeling System (PRMS), two well-known hydrological models. Framework invasiveness measurements were compared with existing popular software metrics including size (lines of code), cyclomatic complexity, and object-oriented coupling with generally positive correlations being found. We found that models with lower framework invasiveness tended to be smaller, less complex, and have less coupling. In addition, the lightweight framework implementations of the Thornthwaite and PRMS models were less invasive than the heavyweight framework model implementations. Our results suggest that framework invasiveness is undesirable for model code quality and that lightweight frameworks may help reduce invasiveness.

Last Modified: 9/10/2014
Footer Content Back to Top of Page