Software Development For Travel Modeling

# Challenges in Travel Model Software Development

Travel model development presents a unique set of challenges in software development, including:

  • the need to interface with other software like land use models, dynamic traffic assignment, air quality models, and simulation
  • reading and writing large matrix datasets
  • teams including members throughout government, consulting, and academia, located all over the world
  • the need to recode estimation variables into application code, often between two languages
  • various programming skills levels of developers and users
  • statistical models that cannot generally be understood without training by a generic software developer
  • run times must be fast to satisfy customer needs
  • results must be replicable and stable, even while involving random number generation

All these challenges reinforce the need for the field to adopt software development best practices.

# Best Practices in Travel Model Software Development

# Using source control

# Code Reviews

# Write programs for people, not computers

# Automate Repetitive Tasks

# Make Incremental Changes

# Writing unit tests

# Pair programming

# optimizing software after it works

# don’t repeat yourself in code

Please see: Best Practices for Scientific Computing for more information.