Current practice is designing hard real-time systems (systems which must operate under critical external timing constraints) leave little provision for guaranteeing stringent timing specifications will be met. Hard timing constraints are based on the need of the system to interact with stimuli from its environment (the world external to itself), while executing internal processes in non-zero times. When timing constraints are violated, some sort of failure will occur, either in the system, or in the system's ability to provide specified control to its environment. The proposed effort provides a mechanism for including hard real-time constraints in the software design phase. This is done by incorporating models of the respective critical mechanisms (external timing parameters, internal execution delays, etc.) Into an existing design and simulation model. Design consists of building a model of the proposed system, while execution of that model provides a simulation of the system in its simulated environment. Timing constraints are included in both phases, with a means of the user monitoring system timing during simulation. Extensive control over the environment model is provided to test timing margins and system response to timing constraint violation failures.