Separated update controller