Much of my graduate and research associate work at The University of Arizona was on a project named DotAGWA. DotAGWA was an internet application that allowed a users to see the effects of land use change. A user could select a location in the Walnut Gulch Experimental Watershed, which is located in Tombstone, Arizona. Once a location was selected or defined, the application would retrieve soils, vegetation, and precipitation data parameterize and run a surface water model. The surface water model would produce output that the application would retrieve and display in the application.
This application was being developed during the earlier days of web application development. Consequently, I had to develop tools to figure out how to get the surface water model, which was an older Fortran model developed in the 1970's and 1980's. Some of the trickier issues involved figuring out how to run the model so that the whole application could be run in a way that might allow multiple users to run the web application at the same time without having the surface water model lock. To deal with this situation, I developed a simple queue-based approach which meant having multiple versions of the model's executable file, tracking which one was being run and if still being run then using the next available copy if needed.
- C# .Net