Observer model implemented