A Study of the Observer Pattern