Let’s understand what is MVC design pattern and how it is implemented in Magento.

What is a design pattern?

A design pattern by definition is a reusable solution to an existing problem in a software design. It helps developers to create software based on approved standards. It is a description about how to solve a problem.

MVC design pattern

MVC stands for: Model, View, Controller

This design pattern is popular for separating the process into multiple layers: User interface, Business logic, Data access

These are classes that represents business components of your system. For example: Credit Card, Customer, Order etc.

These are files that represents user interface i.e. the web page you see.

This is a class that have methods corresponding to URLs in your system. For example, in Magento, if you execute a URL:


Here account is the name of controller and save is the name of the method that exists in the controller.

customers is called the frontName in Magento and is used to distinguish one controller from other.

You can learn more about Magento MVC here