===== Top Ten Design Principles of the whatIf? Platform ===== /*[Note: work on article title..."Modeling principles supported by whatIf?"] */ * **Transparency** - Both the model design structure and input data are accessible so that the model user knows exactly how outputs are derived. Furthermore, the model design is comprised of processes that correspond to real world concepts and experiences so that the model logic is more easily understood. * **Scenario Management** - A scenario consists of the set of input variable values and the corresponding output values generated from those inputs. In models with hundreds or thousands of variables, it is important to display scenarios so that the user can easily access the set of input and/or output values in a given scenario and compare two scenarios. Saving scenarios allows output variables to be recreated because the pointers to the set of input values are maintained and retrievable. * **Data Visualization** - Visual interaction is essential for comprehensive interpretation of large quantities of multi-dimensional data. * **Collaboration** - The whatIf? modeling process relies on collaboration among the model developers and the stakeholders to identify the model scope, create the model design, identify data sources, and establish the critical uncertainties to be explored. Such collaboration is supported by the high level hierarchical diagrams in Documenter, which clearly illustrate model organization and underlying processes, as well as the client server architecture of the whatIf? modeling platform. * **Open System** - An open system model provides a feedback channel that allows a user to incorporate their knowledge and observations of the real world system into the simulation. This is the desired approach when the context in which the system exists is important but cannot be fully understood so that the model outputs contain a degree of uncertainty. By interacting with the model, the user may examine the model outputs and adjust the model controls to refine the model or explore multiple possible future outcomes. In this way not only can learning from experience be incorporated into the model but the user can also enhance their understanding of the real world system. ---- * **Exploratory Simulation** - Simulation models are primarily learning devices that extend our powers of perception and support decision making; they do not predict what will happen nor do they prescribe what should happen. * **Knowledge Sharing** - Models and their results present an explicit and communicable understanding around which consensus may be built. They also provide a platform through which corporate memory may be transferred or preserved. * **Coherency** - Scenarios must assure consistency among the input variables both over time and within time periods. For example, in an energy model, population and the services required by the population determine the level of economic activity. The level of economic activity in turn creates demands on the energy system. The way in which the energy system meets energy demands controls the emission of greenhouse gases and criteria air contaminants. The model assures coherency through the use of stock-flow accounting rules, base stocks and life tables, supply/disposition balances for fuels and feedstocks, and the explicit representation of energy transformations. * **Adaptability** - New understanding and new data must be incorporated to the model logic as they become available. Flexibility, modularity * **Realism?** - The simulator must capture the essence the real world without oversimplification