Qual a melhor forma de implementar jsf com mvc?

Olá a todos, boa tarde.
Gostaria de saber de vcs, qual a melhor forma de implementar o mvc usando jsf.
Tive lendo em alguns foruns que a iteração do jsf com as classes é feita da seguinte forma:

Model:
public class aluno() {
gets e sets

}

Controller:
public class alunoController(){
private aluno aluno;

public string salvarAluno() {
save;
return “sucesso”;
}

E o jspx que seria as minhas páginas da camada visão acessariam o controller através de por exemplo:
<h:inputText value="#{alunoController.aluno.nome}" />

Isso estaria correto? O Jsf acessando o controller?
Ou o mesmo acessaria diretamente a classe modelo? por ex:
<h:inputText value="#{aluno.nome}" />

Pois la no faces-config eu digo que é do tipo request ou session, geralmente o model seria request se fosse utilizá-lo diretamente, mas se for utilizar o controller pelo “apontamento” do jsf, ele teria que ser request, sendo que geralmente o controller seria session.

Existe algum outro tipo de implementação nesse caso do mvc?
Agradeço desde já pela atenção,
Atenciosamente,
Lessandro