The UIC is the primary means by which a DCPS user
performs all possible actions. It is likewise the primary component
of the DCPS Client. User actions include starting
and stopping the system, adding and modifying algorithms,
changing the runtime mode, and building simulation scenarios
using a waveform editor. The UIC is unique in DCPS from a
deployment standpoint, as it can run on a physically separate
computer. It communicates to the rest of the core system via
a secured socket administered by the SC.
Since the UIC is the bridge connecting a physical user
to the rest of DCPS, it naturally is the largest customer for
the SC. The UIC continually asks the SC for permission
to allow actions, and modifies the display accordingly. For
instance, during a pulse, buttons to change the DCPS Core
mode turn gray and stop accepting input. Though it does not
preclude additional security checks further downstream, this
extra layer of security does inhibit many potential errors that
might otherwise arise oscillating.