1. A control system for controlling execution of scientific experiments by laboratory instruments, the control system comprising: a control manager, a metrics manager, and a roll-up engine; the control manager instantiating experiment control objects in containment relationships linking said experiment control objects, said experiment control objects being adapted to interface with the laboratory instruments to control an experiment; the metrics manager defining experiment metrics independently of the control manager by: generating an interface, said interface being an object instantiated by the metrics manager and containing metric objects each defining at least one metric, and instantiating at least one said metric object, and associating experiment control objects with said interface such that said experiment control objects inherit attributes from the metric objects; the roll up engine dynamically monitoring change events during execution of the experiment by the instruments; the roll-up engine to automatically transmitting a change notification to experiment control objects when a change event occurs, said notification including data indicating the change event in terms of pre-defined metrics; and said experiment control objects receiving a change notification automatically responding by dynamically modifying their experiment control operations, said experiment control objects including a phase object and a gate object, said phase object being linked with the gate object. and said gate object being adapted to iteratively monitor experiment data to determine if a current experiment phase should terminate and if a further phase should be initiated.