added model view arch