[Added] Observer Design Pattern