Observer pattern model v0.3