Hola Samou,
te voy a pasar un enlace que pertenece a uno de los capítulos del framework Symfony que habla sobre este tema precisamente. Te recomiendo su lectura y si puedes leer el resto de documentación sobre este FrameWork ya que te va a aportar muchas ideas.
http://www.librosweb.es/symfony_1_2/...atron_mvc.html
Saludos!
Synkronice