Начните с модели, потому что это основа вашего приложения. Также легче написать тесты для. Это сложно написать модульные тесты для контроллеров, хотя это может быть сделано, и даже сложнее для представлений. Однако, если у вас есть действительно надежный и инкапсулированный API для вашей модели, сравнительно легко наложить новый контроллер и посмотреть поверх него. Если вы хотите по-настоящему отделиться от представления, постройте свою модель как REST API и полностью внедрите свой контроллер в AJAX. Это приведет к более сервис-ориентированной архитектуре с полностью клиентскими представлениями. Вот как много работает Google.