Uma aplicação pode ser dividida em várias partes, sendo que cada uma delas terá as suas características e responsabilidades por determinadas funções. Considerando essa informação, assinale a alternativa que apresenta as três camadas mínimas necessárias para um aplicativo desse molde.