We introduce DesignDEVS, a simulation development environment based on the Discrete Event System Specification (DEVS) formalism. DesignDEVS aims to promote understanding and appreciation of model-simulator separation, delayed binding of models, and other key principles of a systems engineering approach. To minimize installation and learning time, we embed a lightweight scripting language called Lua as the primary programming language for model implementation. Lua is extended to both enforce and communicate a number of modeling constraints implied by DEVS theory. These constraints include restrictions on state changes and data references. While not all theoretical principles are strictly enforced, we include a discussion of best practices which account for practical considerations such as modeler convenience and computational efficiency. DesignDEVS has been used for complex modeling tasks in architectural and building science research. Its unique features may aid in the teaching of DEVS.
While traditional programming practices have produced a wide range of relatively independent simulation methods, predictive models of extremely complex natural and artificial systems will require a more scalable, more collaborative approach to modeling. This project strives for software that will help researchers develop, debug, document, share, and integrate simulation code.