This is example of three layered solution based on MVC concept. There is MVC part which aim is to interact with user and to pick his actions and gives them to controllers. Controllers send the data to BusinessLayer and after some calculations it sends a response delivered to user again by controllers. This three layered concept is clearly defining different modules of the solution. The main functions are represented by interfaces and they are called by them. The user can register himself, if he doesn't have account. After that he can see the available products grouped by categories and purchasing he creates orders. The user can freely delete or change his orders. Admin can create new products (even save picture for product)another possibility to him is deleting other users.