People would like to know who uses design-pattern service and repository , what would be a basic architecture structure, ie what the service can and can not do, and what are the responsibilities of the repository. I am currently using the following pattern, View, Model (I use Doctrine), Controller, service, repository , and would like to know what would be the most correct way of data flow and the responsibility of each. Could someone help me to clarify this doubt?