
- Модель (по-другому еще называется бизнес-логика). По сути, это техническая программная начинка, именно она непосредственно работает с данными, определяет внутреннее взаимодействие программ, обращается к базе данных. Модель взаимодействует с контроллером, но никак не связана ни с представлением (не имеет средств для визуализации данных), ни с пользователем (в обычном интерфейсе невозможно как-то повлиять на компоненты модели).
- Представление. Редактор, позволяющий визуализировать информацию, взятую из модели, выводить её на экран, в интерфейс.
- Контроллер. Является связующим звеном между пользователем моделью и представлением. При задании инструкций для модели, используется контроллер.

Увеличивается возможность повторного использования кода – добавление в основную высокоуровневую программу каких-то низкоуровневых программных компонентов универсального типа, которые используется не только в OpenCart.

Представление одних и тех же данных в разных вариантах: текст, список, таблица, диаграмма, график функции и т.д.

Большие перспективы для модификации, можно вносить изменения в каждую составляющую архитектуры в отдельности, и две остальные будут работать иначе. Например, изменение контроллера: в одном случае клик мыши открывает таблицу, в другом случае открывается скрытый текст под катом.