add MVC Design Pattern