pattern for MVC