Observer Pattern for category implemented