Detect if the value of a cck field has changed when a node is edited
I haven't done this, but my first idea would be to do this in nodeapi() and do something along the lines of (this horrid pseudo code):

if ( $op == 'presave' and $node-&gt;type == 'event' ) :
   $existing = node_load($node-&gt;nid);
   if ( $existing ) :
       check your fields in $node against the $existing node
       if they are different do something


and take into account you may no longer need IT or catering, so that needs to be conveyed as well as if you need it afterall.