Questão de Engenharia de Software — UML — Quadrix 2025
- Código
- qg594905
- Banca
- Quadrix
- Órgão
- CFO
- Ano
- 2025
- Nível
- Superior
- Cargo
- Analista de Desenvolvimento
- CCerto
- EErrado
GabaritoE — Errado
❌ ERRADO. O diagrama de classes é um diagrama estrutural da UML, utilizado para modelar a estrutura estática do sistema — classes, atributos, métodos e relacionamentos — e não para representar a interação entre objetos, que é papel dos diagramas de interação (como o de sequência e o de comunicação). A afirmação inverte completamente a finalidade do diagrama.
A UML (Unified Modeling Language) é uma linguagem de modelagem padronizada que busca fornecer uma padronização da estrutura de um sistema. Ela fornece uma notação padrão para muitos tipos de diagramas, que podem ser divididos em três grupos principais: diagramas de comportamento, diagramas de interação e diagramas de estrutura. Essa divisão é fundamental para entender o que cada diagrama representa.
O diagrama de classes pertence ao grupo dos diagramas de estrutura. Ele descreve a estrutura estática do sistema, mostrando as classes, seus atributos, seus métodos (operações) e os relacionamentos entre elas (associação, agregação, composição, herança, dependência). É o diagrama mais utilizado na modelagem orientada a objetos e serve como base para outros diagramas. Por exemplo, em um sistema de vendas, o diagrama de classes mostraria as classes Cliente, Pedido e Item, com seus respectivos atributos (como nome, numero, quantidade) e métodos (como total()), além das associações entre elas (um Pedido contém vários Itens).
Já a interação entre objetos é representada por diagramas de interação, como o diagrama de sequência e o diagrama de comunicação. Esses diagramas mostram como os objetos trocam mensagens entre si ao longo do tempo para realizar uma funcionalidade específica. Por exemplo, um diagrama de sequência mostraria a ordem das chamadas de métodos entre um objeto Cliente e um objeto Pedido quando o cliente realiza uma compra.
A banca explora uma confusão clássica: atribuir ao diagrama de classes a função de representar interação entre objetos, quando essa é a função dos diagramas de interação. O diagrama de classes é, por excelência, o diagrama que modela a estrutura do sistema, não o seu comportamento dinâmico. Guarde essa distinção: estrutura (o que o sistema é) versus interação (como os objetos colaboram). É exatamente nessa fronteira que a afirmação erra.
Critério | Diagrama de Classes (Estrutural) | Diagramas de Interação (Sequência/Comunicação) |
|---|---|---|
Grupo na UML | Estrutura | Comportamento (subgrupo interação) |
O que modela | Estrutura estática do sistema (classes, atributos, métodos, relacionamentos) | Troca de mensagens entre objetos ao longo do tempo |
Pergunta que responde | "O que o sistema é?" | "Como os objetos colaboram?" |
Exemplo de conteúdo | Classe | Ordem das chamadas de métodos entre |
A afirmação está incorreta por dois motivos: (1) o diagrama de classes não é utilizado exclusivamente para representar interação entre objetos — essa é a função dos diagramas de interação (sequência, comunicação); (2) ele é perfeitamente adequado para modelar a estrutura do sistema, sendo, na verdade, o principal diagrama estrutural da UML. A palavra "exclusivamente" já denuncia o erro, pois o diagrama de classes tem finalidade estrutural, não comportamental.
Para não errar mais, associe cada diagrama ao seu grupo: estruturais (classes, objetos, componentes, implantação, pacotes) mostram o que o sistema é; comportamentais (casos de uso, atividades, estados) mostram o que o sistema faz; interação (sequência, comunicação, timing, visão geral da interação) é um subgrupo dos comportamentais e mostra como os objetos colaboram. Se a questão falar em "interação entre objetos", pense em diagrama de sequência ou comunicação, nunca em diagrama de classes.
Gabarito: ERRADO (letra E).
Link permanente: /questoes/qg594905