Explicação Questão 21 - TCE-SP

Considere o diagrama de mensagens abaixo representado por meio da linguagem UML 2.0:


Com base nesse diagrama, podemos afirmar que:


(A) A seta representa uma mensagem de criação do objeto autor1.

(B) A seta representa uma autochamada que o objeto autor1 faz com o método valCPF().

(C) O método valCPF é chamado várias vezes de maneira recursiva.

(D) O método valCPF destroi uma instância da classe Autor.

(E) A mensagem é assíncrona pois a classe Autor é estática.


Comentários:

UML é o assunto campeão de cobrança dentro de Engenharia de Software na banca VUNESP. Na nossa análise, tivemos 14 questões nas últimas 15 provas, o que mostra que existe uma probabilidade altíssima disso ser cobrado no concurso do TCE-SP.


Além disso, a banca gosta cobra o assunto UML de maneira bem específica. As questões são todas bem diretas e quase sempre relacionadas a algum aspecto visual da linguagem UML.


Tentamos seguir o padrão de cobrança nessa questão tratando do diagrama de sequência. O enunciado fala de diagrama de mensagens, pois vimos questões da banca que tratam o diagrama com esse nome.


Esse tipo de chamada, parte da linha de vida de um objeto e atinge a linha de vida do próprio objeto. Também são chamadas de autodelegações.


No caso do nosso exemplo, temos uma instância chamada autor1 (da classe Autor) que chama de si mesmo um método para validação de CPF, por isso representamos uma seta pra ele mesmo.


Gabarito da questão: letra B