update controller model pattern