1. A method of providing a programming environment for a simulation of a computer application, the method comprising: displaying on a computer display a programming area comprising one or more graphical representations of one or more primitives for the simulation of the computer application; displaying on the computer display a requirements area comprising one or more requirements; and associating the one or more primitives with the one or more requirements such that a primitive displayed in the programming area is visually associated with a displayed requirement of the requirements area.