A camada Cliente, também chamada de visão, é a camada de apresentação. É responsável pela interação com os atores do sistema, seja um usuário que irá visualizar os informações de clientes ou um administrador que irá atribuir funções aos usuários do sistema. Em outras palavras, essa camada é a interface utilizada pelo usuário.
Ela implementa o modelo MVC, que utiliza uma classe controladora para cada página. O controlador recebe e trata as requisições vindas da visão, chama o modelo (que aqui é representado pelo domínio, negócio e persistência) e passa a requisição tratada para o modelo. Ao receber a resposta do modelo, renderiza (desenha a tela) ou constrói a visão adequada. Ela interage com o modelo através da camada de negócio, transferindo e recebendo dados encapsulados em classes que representam o domínio da aplicação. Para maior interatividade sem a necessidade de carregamento pesado no servidor utilizará AJAX (acrônimo para Asynchronous JavaScript and XML).
Já a camada Negócio gerencia o fluxo de dados da aplicação, além da lógica de manipulação dos mesmos. Ela intermedia a comunicação da interface com o banco de dados e é também responsável por implementar regras de negócio, fazendo requisições à camada de persistência e enviando respostas à camada de apresentação.
Por fim, a camada Dados provem acesso às informações armazenadas no Sistema Gerenciador de Banco de Dados (SGDB). Cada classe de domínio possui uma classe de acesso aos dados equivalente, onde são tratadas todas as interações com o SGDB.
A exceção a regra são métodos básicos de manutenção de cadastros, conhecidos pela sigla CRUD (Create, Retrieve, Update, Delete – Criar, Recuperar, Atualizar, Excluir). Esses métodos utilizarão uma classe genérica comum a todas as tabelas que exijam manutenção. Esta classe implementa o padrão de projeto DAO (Data Access Object) para realizar o mapeamento objeto-relacional.