Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

Prévia do material em texto

PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 1 de 129 
AULA 03 – UML Parte 01 
Sumário 
1. Bibliografia .......................................................................................................................... 1 
2. INTRODUÇÃO ...................................................................................................................... 2 
3. DIAGRAMA DE CLASSES .................................................................................................... 36 
3.1 INTRODUÇÃO .................................................................................................................. 36 
3.2 CLASSES, MÉTODOS E ATRIBUTOS ................................................................................. 37 
3.3 ATRIBUTOS DE CLASSE .................................................................................................... 42 
3.4 ASSOCIAÇÕES ................................................................................................................. 43 
3.5 GENERALIZAÇÃO ............................................................................................................. 49 
3.6 DEPENDÊNCIA ................................................................................................................. 57 
3.7 COMPOSIÇÃO E AGREGAÇÃO ......................................................................................... 58 
3.8 INTERFACES .................................................................................................................... 70 
3.9 CLASSES ABSTRATAS ....................................................................................................... 75 
3.10 COLABORAÇÕES ........................................................................................................... 82 
3.11 CLASSES TEMPLATE ...................................................................................................... 83 
3.12 REFINAMENTO .............................................................................................................. 85 
4. Lista das Questões Utilizadas na Aula. ............................................................................. 85 
5. Gabarito. ......................................................................................................................... 128 
 
1. Bibliografia 
Nesta aula utilizei, como referência para os comentários, os livros a seguir: 
1. Pressman, R. S. Software Engineering. A practioner’s approach. 7ª Ed. McGraw 
Hill. 2010. 
2. Sommerville, I. Software Engineering. 9ª Ed. Addison-Wesley. 2011. 
3. Fowler, M. UML Essencial. 3ª Ed. Bookman. 2005. 
4. Furlan, J. D. Modelagem de objetos através da UML. Makron Books. 1998. 
5. Bezerra, E. Princípios de Análise e Projetos de Sistemas com UML. 2ª Ed. Editora 
Campus. 2002. 
6. BOOCH, G., RUMBAUGH, J., JACOBSON, I. UML, Guia do Usuário. 2ª Ed., Editora 
Campus, 2005. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 2 de 129 
2. INTRODUÇÃO 
QUESTÃO 01 IDECAN - 2013 - BANESTES - Analista de Tecnologia da Informação - 
Desenvolvimento de Sistemas 
UML (Linguagem Unificada de Modelagem) é apenas uma linguagem, sendo parte 
de um método para desenvolvimento de software. É uma linguagem com aspectos 
e destinada a desenvolver itens como 
(A) visualizar, modificar, elaborar, atualizar. 
(B) especificar, documentar, instalar, gerar pacotes. 
(C) construir, codificar, implementar, atualizar. 
(D) documentar, gerar pacotes, especificar, codificar. 
(E) visualizar, especificar, construir, documentar. 
Comentários: Vamos iniciar o estudo da UML trazendo diversos definições da 
linguagem encontradas na bibliografia: 
1. Pressman: Linguagem padrão para escrever diagramas de software. UML pode ser 
utilizada para visualizar, especificar, construir e documentar os artefatos de um 
sistema de software. 
2. Sommerville: Conjunto de 13 tipos diferentes de diagramas que podem ser 
utilizados para modelar software. Nasceu de trabalhos realizados em Orientação a 
Objetos - OO nos anos 90, onde notações similares foram integradas na UML. Uma 
grande revisão da UML aconteceu em 2004 (2.0). UML é universalmente aceita como 
a estratégia padrão para desenvolver modelos de software. 
3. Fowler: Família de notações gráficas, apoiada por um metamodelo único, que ajuda 
na descrição e no projeto de sistemas de software, particularmente daqueles 
construídos utilizando o estilo OO. 
4. Bezerra: Linguagem visual para modelar sistemas OO. Isso quer dizer que a UML é 
uma linguagem constituída de elementos gráficos (visuais) utilizados na modelagem 
que permitem representar os conceitos do paradigma de OO. Por meio dos elementos 
gráficos definidos nessa linguagem, pode-se construir diagramas que representam 
diversas perspectivas de um sistema. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 3 de 129 
 Daí, o que podemos tirar de todas essas definições? A UML é uma tentativa de 
padronizar a modelagem OO de uma forma que qualquer sistema, seja qual for o tipo, 
possa ser modelado corretamente, com consistência, fácil de se comunicar com outras 
aplicações, simples de ser atualizado e compreensível. 
 Antes da UML, existiam várias metodologias de modelagem OO que causavam 
uma guerra dentro da comunidade de desenvolvedores orientado a objetos. A UML 
acabou com essa guerra, trazendo as melhores ideias de cada uma dessas 
metodologias e mostrando como deveria ser a migração de cada uma para a UML. 
 Assim, a UML sucedeu aos conceitos de Booch, OMT (Rumbaugh) e OOSE 
(Jacobson), fundindo-os numa única linguagem de modelagem comum e largamente 
utilizada. 
 Por fim, verifique que nossa questão pega carona na definição de Pressman de 
UML. 
Gabarito: E 
QUESTÃO 02 FCC - 2011 - TRE-RN - Programador de computador 
Em relação à UML é INCORRETO afirmar: 
 a) É uma notação independente de processos. 
 b) Um ator representa um papel que um ser humano, um dispositivo de hardware 
ou até outro sistema desempenha com o sistema. 
 c) UML pode existir sem o diagrama de UML. 
 d) Auxilia a visualizar o desenho e a comunicação entre objetos. 
 e) É uma metodologia de desenvolvimento. 
Comentários: Vamos analisar cada alternativa: 
a) É uma notação independente de processos. Alternativa verdadeira, pois a UML 
pode ser utilizada como uma ferramenta em qualquer processo de desenvolvimento 
de software. 
 b) Um ator representa um papel que um ser humano, um dispositivo de hardware 
ou até outro sistema desempenha com o sistema. Vamos estudar esse assunto 
quando estivermos vendo o diagrama de casos de uso. Por enquanto, saiba que a 
alternativa está correta. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 4 de 129 
 c) UML pode existir sem o diagrama de UML. Parece uma viagem, mas os criadores 
da linguagem perderam tempo falando isso mesmo! Uma coisa é o modelo UML como 
um todo e outra é um diagrama qualquer da UML. Um diagrama é a representação 
gráfica daquilo que está sendo modelado, mas o modelo em si pode ser representado 
sem ser por um diagrama! Viagem! Alternativa verdadeira. 
 d) Auxilia a visualizar o desenho e a comunicação entre objetos. Alternativa 
verdadeira, pois temos diagramas, como o diagrama de sequência, que auxiliam a 
documentação do projeto, inclusive, apresentando explicitamente a troca de 
mensagens entre objetos. 
 e) É uma metodologia de desenvolvimento. Anota aí: UML não é uma metodologia 
ou processo de desenvolvimento de software.Tá aqui nosso gabarito. 
Gabarito: E 
QUESTÃO 03 AOCP - 2012 - BRDE - Analista de Sistemas - Desenvolvimento de 
Sistemas 
A linguagem UML possui uma série de objetivos particulares. Sobre as características 
desta linguagem, analise as assertivas e assinale a alternativa que aponta as 
corretas. 
I. Provém aos usuários uma linguagem de modelagem visual expressiva e pronta 
para uso, de forma que os usuários dessa linguagem possam desenvolver e 
intercambiar modelos significativos. 
II. A UML é independente de linguagens de programação e processos de 
desenvolvimento de softwares particulares. 
III. Estimular o crescimento do mercado de ferramentas OO. 
IV. Suportar conceitos de desenvolvimento de nível mais alto tais como colaboração, 
estruturas, modelos e componentes. 
 a) Apenas I e II. 
 b) Apenas I e III. 
 c) Apenas II e III 
 d) Apenas II, III e IV. 
 e) I, II, III e IV. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 5 de 129 
Comentários: Meu querido, todas as assertivas estão verdadeiras e nosso gabarito é a 
alternativa E. Simples assim!  
Gabarito: E 
QUESTÃO 04 ESAF - 2013 - DNIT - Analista Administrativo - Tecnologia da Informação 
A UML 
 a) retrata a estrutura de código orientado à linguagem no nível definido pelo 
usuário. 
 b) retrata a estrutura de código orientado a objeto no nível exatamente acima do 
próprio código. 
 c) retrata critérios de codificação de segurança de objetos independentes. 
 d) estrutura objetos de codificação orientada a usuários no sentido de estratificar 
códigos inconsistentes. 
 e) retrata a estrutura de código orientado a objeto no nível exatamente abaixo do 
próprio código. 
Comentários: Vamos analisar cada alternativa: 
a) retrata a estrutura de código orientado à linguagem no nível definido pelo usuário. 
Quando a gente fala em estrutura de um código OO, estamos nos referindo às classes 
do sistema, os componentes do sistema, os nós físicos do sistema, os objetos do 
sistema, entre outras coisas. Concorda que ter tudo isso definido pelo usuário é algo 
fora de propósito? 
 Você até levanta os requisitos junto ao usuário. Mas, como eles serão 
transformados em código, é papel do analista de sistemas ou da equipe de 
desenvolvimento. Alternativa errada. 
 b) retrata a estrutura de código orientado a objeto no nível exatamente acima do 
próprio código. Eu não consegui encontrar a fonte dessa alternativa, que é nosso 
gabarito. Em todo caso, ainda que seja fruto da criatividade do examinador, até que 
faz sentido dizer que os diagramas da UML estão a um nível acima do código escrito. 
Tem ferramenta CASE que até gera código direto de um diagrama da UML... 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 6 de 129 
 c) retrata critérios de codificação de segurança de objetos independentes. Rapaz, 
tou tentando entender essa alternativa até agora... Tão absurda que só pode estar 
errada. 
 d) estrutura objetos de codificação orientada a usuários no sentido de estratificar 
códigos inconsistentes. Rapaz, a UML estrutura objetos de codificação. Isso tá certo, 
já que ela mostra a estrutura dos diversos “objetos de codificação”. 
Só que a UML não é orientada a usuários (o “orientada” só pode estar se 
referindo à UML, que é a única palavrava feminina da sentença), como vimos na 
alternativa A. 
Pior ainda é dizer que ela é orientada a usuários com o objetivo de estratificar 
códigos inconsistentes?????? Se alguém souber como se estratifica código 
inconsistente, manda um e-mail pra mim, por favor! Alternativa errada. 
 e) retrata a estrutura de código orientado a objeto no nível exatamente abaixo do 
próprio código. Essa questão é um clássico! O examinador estava muito lombrado 
quando bolou cada uma dessas alternativas. Pelo que entendi aqui, a UML seria 
utilizada para retratar a estrutura de um bytecode em Java ou de um Assembly por 
baixo de C, ou até para representar 0s e 1s na memória do computador... Alternativa 
errada. 
Gabarito: B 
QUESTÃO 05 FUNDEP - 2014 - COPASA - Analista de Saneamento - Desenvolvimento 
de Sistemas 
Com relação à UML, assinale a alternativa INCORRETA. 
 a) A UML é uma linguagem de modelagem, sendo assim é uma linguagem cujo 
vocabulário e regras têm seu foco voltado para a representação conceitual e física 
de um sistema. 
 b) A UML é uma linguagem padrão para a elaboração da estrutura de projeto de 
software. 
 c) A UML é insuficientemente expressiva para modelar sistemas que não sejam de 
software. 
 d) A UML abrange a documentação da arquitetura do sistema e de todos os seus 
detalhes. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 7 de 129 
Comentários: Olha, a única alternativa incorreta é a C, pois podemos usar UML para 
modelar outras realidades, não necessariamente software. 
Por exemplo, nada impede que utilizemos o diagrama de atividades para 
modelar um processo de negócio, sendo esse uso, inclusive, bastante disseminado na 
comunidade de analistas de processos de negócio. 
Gabarito: C 
QUESTÃO 06 IBFC - 2014 - TRE-AM - Analista Judiciário - Análise de Sistemas 
Quanto a UML (Unified Modeling Language), analise as afirmativas abaixo, dê 
valores Verdadeiro (V) ou Falso (F) e assinale a alternativa que apresenta a sequencia 
correta de cima para baixo: 
( ) A UML é uma linguagem de modelagem não proprietária de terceira geração. 
( ) A UML é uma metodologia de desenvolvimento, mostrando o que fazer primeiro 
e em seguida ou como projetar um sistema. 
Assinale a alternativa correta: 
 a) F –F b) V –F c) F –V d) V –V 
Comentários: “A UML é uma linguagem de modelagem não proprietária de terceira 
geração. A UML não é uma metodologia de desenvolvimento, o que significa que ela 
não diz para você o que fazer primeiro e em seguida ou como projetar seu sistema, 
mas ela lhe auxilia a visualizar seu desenho e a comunicação entre objetos.” 
 Quem disse isso não fui, mas a wikipedia, a um tempo atrás. Rodei o mundo e 
não descobri de onde tiraram essa ideia de linguagem de modelagem de terceira 
geração... 
 Enfim, nossa referência aqui será a wikipedia. O engraçado é que se você abrir 
a wikipedia hoje (http://pt.wikipedia.org/wiki/UML), tiraram a parte que fala da 3ª 
geração... coisas da vida! 
Gabarito: B 
QUESTÃO 07 FCC - 2012 - TST - Técnico Judiciário - Programação 
Considere as afirmações sobre UML: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 8 de 129 
I. Surgiu da união de três metodologias de modelagem: o método de Booch, o 
método OMT (Object Modeling Technique) de Jacobson e o método OOSE (Object-
Oriented Software Engineering) de Rumbaugh. 
II. É uma linguagem de programação cujo objetivo é auxiliar os engenheiros de 
software a definir as características do software, tais como seus requisitos, seu 
comportamento, sua estrutura lógica, a dinâca de seus processos e até mesmo suas 
necessidades físicas em relação ao equipamento sobre o qual o sistema deverá ser 
implantado. 
III. Tornou-se, nos últimos anos, a linguagem-padrão de modelagem de software 
adotada internacionalmente pela indústria de Engenharia de Software. 
Está correto o que se afirma em 
 a) I, II e III. 
 b) I e II, apenas. 
 c) III, apenas. 
 d) II e III, apenas. 
 e) I e III, apenas. 
Comentários: A primeira afirmativa é verdadeira, pois a UML surgiu da união dos 
métodos de Booch, Rumbaugh e Jacobson. 
A segunda afirmativa é absurda, pois UMLnão é uma linguagem de 
programação, mas uma linguagem de modelagem que virou um padrão utilizado na 
engenharia de software (terceira afirmativa correta). 
Gabarito: E 
QUESTÃO 08 FCC - 2012 - TRF - 2ª REGIÃO - Técnico Judiciário - Informática 
Considere: 
I. UML não é um método de desenvolvimento, pois não determina o que fazer ou 
como desenhar o sistema, e sim, uma linguagem ou notação de diagramas para 
especificar, visualizar e documentar modelos de software orientados a objetos. 
II. As visões mostram diferentes aspectos do sistema que está sendo modelado. Por 
meio de seus diagramas, cada uma das visões definidas mostrará aspectos 
particulares do sistema, dando enfoque a ângulos e níveis de abstrações diferentes 
permitindo, dessa forma, que uma figura completa do sistema possa ser construída. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 9 de 129 
III. Não havendo sobreposição entre seus diagramas, as visões podem servir de 
ligação entre a linguagem de modelagem e o método/processo de desenvolvimento 
escolhido. 
IV. Cada modelo de elemento possui uma representação gráfica distinta, sendo que 
um mesmo elemento pode existir em diversos diagramas, desde que submetidos às 
regras para definir que elementos poderão ser mostrados em cada tipo de diagrama. 
Está correto o que consta em 
 a) I e II, apenas. 
 b) I, II e III, apenas. 
 c) I, II e IV, apenas. 
 d) II, III e IV, apenas. 
 e) I, II, III e IV. 
Comentários: Com a UML, podemos representar um sistema por meio de diferentes 
visões, que mostram diferentes aspectos do sistema que está sendo modelado. A visão 
não é um gráfico, mas uma abstração, consistindo em uma série de diagramas. 
Definindo um número de visões, cada uma mostrará aspectos particulares do 
sistema, dando enfoque a ângulos e níveis de abstrações diferentes e uma figura 
completa do sistema poderá ser construída. 
 Existe, em alguns casos, uma certa sobreposição entre os diagramas, o que 
significa que alguns diagramas podem fazer parte de mais de uma visão. As visões 
também podem servir de ligação entre a linguagem de modelagem e o 
método/processo de desenvolvimento escolhido. 
 Temos 05 visões: 
Visão de Implantação: abrange os nós que formam a topologia de hardware em que 
o sistema é executado; 
Visão de Processo: mostra o fluxo de controle entre as várias partes, incluindo 
mecanismos de concorrência e de sincronização; 
Visão de Projeto (ou Lógica): abrange as classes, interfaces e colaborações que 
formam o vocabulário do problema e sua solução; 
Visão de Implementação: abrange os componentes e os artefatos utilizados para a 
montagem e fornecimento do sistema físico; e 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 10 de 129 
Visão de Casos de uso: abrange os casos de uso, que descrevem o comportamento do 
sistema conforme é visto pelos seus usuários finais, analistas e testadores. 
 Além das visões, temos mais 03 definições importantes da UML: 
1. Modelos de Elementos: Os conceitos usados nos diagramas são modelos de 
elementos que representam definições comuns da OO, como as classes, objetos, 
mensagem, relacionamentos entre classes, incluindo associações, dependências e 
heranças. Observem alguns modelos de elementos a seguir: 
 
2. Mecanismos Gerais: Os mecanismos gerais provêm comentários suplementares, 
informações, ou semântica sobre os elementos que compõem os modelos. Eles podem 
ser também mecanismos de extensão para adaptar ou estender a UML para um 
método/processo, organização ou usuário específico. 
3. Diagramas: Os diagramas são os gráficos que descrevem o conteúdo em uma visão, 
sendo utilizados em combinação para prover todas as visões do sistema. 
 Isso posto, vamos analisar cada afirmativa: 
I. UML não é um método de desenvolvimento, pois não determina o que fazer ou 
como desenhar o sistema, e sim, uma linguagem ou notação de diagramas para 
especificar, visualizar e documentar modelos de software orientados a objetos. 
Exatamente, os examinadores, em geral, procuram apresentar a UML como X, onde 
esse X é diferente de linguagem de modelagem, que é o que a UML é! :) 
 Por isso, trouxemos diversas definições da UML extraídas da literatura, para 
que você tenha certeza de que a UML é uma linguagem de modelagem e não errar 
esse tipo de questionamento. 
II. As visões mostram diferentes aspectos do sistema que está sendo modelado. Por 
meio de seus diagramas, cada uma das visões definidas mostrará aspectos 
particulares do sistema, dando enfoque a ângulos e níveis de abstrações diferentes 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 11 de 129 
permitindo, dessa forma, que uma figura completa do sistema possa ser construída. 
É isso mesmo pessoal, os diversos diagramas da UML são especializados em mostrar 
uma determinada visão do sistema. As diversas visões se completam e representam 
uma "big picture" do sistema. 
III. Não havendo sobreposição entre seus diagramas, as visões podem servir de 
ligação entre a linguagem de modelagem e o método/processo de desenvolvimento 
escolhido. Pelo contrário, existe um certo nível de sobreposição entre alguns 
diagramas, o que significa que alguns dos diagramas podem representar mais de uma 
visão e algumas visões são atendidas por mais de um diagrama. 
IV. Cada modelo de elemento possui uma representação gráfica distinta, sendo que 
um mesmo elemento pode existir em diversos diagramas, desde que submetidos às 
regras para definir que elementos poderão ser mostrados em cada tipo de diagrama. 
Um modelo de elemento nada mais é do que os diversos conceitos da OO que são 
apresentados nos diagramas da UML. Temos classes, pacotes, objetos, interfaces, 
enfim, um monte de modelos de elementos. A afirmativa está certa, pois cada 
elemento tem a sua própria representação gráfica, que não se modifica ao longo dos 
diversos diagramas onde podem aparecer, exceto caso estereotipados. 
Gabarito: C 
QUESTÃO 09 FEPESE - 2012 - FATMA - Analista Técnico de Gestão Ambiental - Classe 
IV - Analista de Informática 
Analise a figura abaixo: 
 
Assinale a alternativa que defne corretamente a visão de implementação da UML: 
a) Permite entender a organização dos processos do sistema. 
b) Refere-se à distribuição física do sistema através do conjunto de nós do ambiente 
em que será executado. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 12 de 129 
c) É um ponto de vista que permite estruturar e organizar o desenho do sistema de 
forma lógica. 
d) Serve como um contrato entre o cliente e o desenvolvedor, porque mostra 
conceitualmente o conjunto de funções que o sistema deve executar para atender 
os requisitos do cliente. 
e) Captura as decisões de arquitetura para implementação do sistema, especifcando 
os subsistemas, suas dependências, e seus componentes organizados em camadas 
hierárquicas. 
Comentários: Cada alternativa corresponde a uma visão: 
a) Visão de Processo. 
b) Visão de Implantação. 
c) Visão Lógica. 
d) Visão de Casos de Uso. 
e) Visão de Implementação (gabarito). 
Gabarito: E 
QUESTÃO 10 CONSULPLAN - 2012 - TSE - Analista Judiciário - Análise de Sistemas 
O desenvolvimento de um sistema de software complexo demanda que seus 
desenvolvedores tenham a possibilidade de examinar e estudar esse sistema a partir 
de diversas perspectivas. O uso da UML sugere que um sistema pode ser descrito por 
meio de cinco visões independentes do sistema. Duasdessas visões são detalhadas 
a seguir. Observe. 
I. Descreve o sistema de um ponto de vista externo como um conjunto de interações 
entre o sistema e os agentes externos do sistema. 
II. Enfatiza as características de concorrência e paralelismo, sincronização e 
desempenho do sistema. 
As duas visões detalhadas são conhecidas, respectivamente, por visões de 
 a) fluxos de dados e processo. 
 b) fluxo de dados e operação. 
 c) casos de uso e operação. 
 d) casos de uso e processo. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 13 de 129 
Comentários: Enquanto que a afirmativa I descreve a visão de casos de uso, a 
afirmativa II apresenta uma das características da visão de processo. 
Gabarito: D 
QUESTÃO 11 CEPERJ - 2013 - CEDERJ - Programador de computador 
Na UML, um sistema pode ser descrito por meio de cinco visões independentes. Uma 
dessas visões descreve o sistema do ponto de vista externo como um conjunto de 
interações entre o sistema e os agentes externos ao sistema. Essa visão, que é criada 
inicialmente e direciona o desenvolvimento das outras visões do sistema, é 
conhecida por Visão de: 
 a) Projeto 
 b) Processo 
 c) Casos de Uso 
 d) Implementação 
 e) Implantação 
Comentários: Quando falamos em interação com agentes externos ao sistema e em 
visão inicial que serve de base para as demais visões, temos como uma única 
alternativa possível a visão de casos de uso. 
Gabarito: C 
QUESTÃO 12 FUNCAB - 2014 - PRODAM-AM - Programador - Desenvolvedor 
O desenvolvimento de softwares demanda que seus desenvolvedores tenham a 
possibilidade de estudar esse sistema a partir de várias perspectivas. De acordo com 
os autores da UML, um sistema pode ser descrito por meio de cinco visões 
independentes. Uma delas descreve o sistema do ponto de vista externo como um 
conjunto de interações entre o próprio sistema e os agentes externos ao sistema. 
Essa visão é criada inicialmente e direciona o desenvolvimento das demais visões do 
sistema. 
Essa abordagem é conhecida como visão de: 
 a) funções. 
 b) negócios. 
 c) processos. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 14 de 129 
 d) casos de uso. 
 e) fluxo de dados. 
Comentários: Será que é a mesma questão? 
Gabarito: D 
QUESTÃO 13 FCC - 2011 - INFRAERO - Analista de Sistemas - Arquitetura de Software 
Quanto à classificação de tipo de bloco de construção, de acordo com Grady Booch 
et al, o vocabulário UML abrange 
 a) 1 tipo. b) 2 tipos. c) 3 tipos. d) 4 tipos. e) 5 tipos. 
Comentários: Os blocos de construção da UML são: 
Itens: São os diversos elementos e demais estruturas que são utilizados nos diagramas. 
BOOCH e amigos definem os itens da seguinte forma: abstrações identificadas como 
cidadãos de primeira classe em um modelo (sei lá o que ele quis dizer com isso :P). 
Relacionamentos: São as ligações existentes entre os diversos elementos ou itens da 
UML. 
Diagramas: agrupam coleções interessantes de itens. Um diagrama é uma 
apresentação gráfica de um conjunto de elementos, geralmente representados como 
gráfico de vértices (itens) e arcos (relacionamentos). Cada diagrama constitui uma 
projeção de um determinado sistema. 
Gabarito: C 
QUESTÃO 14 FCC - 2012 - TRE-CE - Analista Judiciário - Análise de Sistemas 
A UML apresenta, em sua sintaxe e semântica, uma notação gráfica com elementos 
bem definidos. A linguagem categoriza quatro itens. Os pacotes são inseridos no 
contexto das partes organizacionais dos modelos e, portanto, categorizados como 
itens 
 a) estruturais. 
 b) comportamentais. 
 c) temporais. 
 d) anotacionais. 
 e) de agrupamento. 
Comentários: Podemos classificar os elementos (ou itens) da UML em: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 15 de 129 
De estrutura: Classe, Objeto, Interface, Componente, Colaboração e Nó. 
De comportamento: Casos de uso, Iteração e Máquina de estados. 
De agrupamento: Pacote, Modelo, Subsistema e Framework. 
De anotação: Notas 
Gabarito: E 
QUESTÃO 15 FCC - 2011 - INFRAERO - Analista de Sistemas - Arquitetura de Software 
Considere: 
I. estruturais, 
II. comportamentais, 
III. de agrupamentos, 
IV. anotacionais. 
Quanto aos itens da UML que podem constituir blocos de construção básicos OO, 
está correto o que consta em 
 a) I e II, apenas. 
 b) I e III, apenas. 
 c) I, II e III, apenas. 
 d) II e IV, apenas. 
 e) I, II, III e IV. 
Comentários: Levando em consideração o que foi apresentado no comentário da 
questão anterior, podemos inferir que todas as preposições apresentadas estão 
corretas. 
Gabarito: E 
QUESTÃO 16 FEPESE - 2012 - FATMA - Analista Técnico de Gestão Ambiental - Classe 
IV - Analista de Informática 
Assinale a alternativa que indica corretamente os quatro tipos de relacionamentos 
na UML: 
 a) dependência, comportamental, agrupamento e associação. 
 b) dependência, associação, generalização e realização. 
 c) estrutural, comportamental, agrupamento e anotação. 
 d) cardinalidade, dependência, associação e estrutural. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 16 de 129 
 e) associação, cardinalidade, generalização e realização. 
Comentários: Os relacionamentos são as ligações entre os elementos dos modelos 
UML. Essas ligações especificam o que cada elemento significa ao outro e qual o grau 
de ligação deles, ou seja, qual a relação lógica que existe entre os elementos. 
Temos quatro tipos de relacionamentos: 
Associação: Representa uma ligação simples entre dois elementos. Pode englobar 
também a cardinalidade (ou multiplicidade) e a navegação (sentido) da associação. 
Exemplo: 
 
Dependência: A dependência é uma conexão semântica entre dois elementos, um 
independente e outro dependente. A relação de dependência é simbolizada por uma 
linha tracejada com uma seta aberta no final de um dos lados do relacionamento. 
Exemplo: 
 
Generalização: A generalização é um relacionamento entre um elemento mais geral e 
um mais específico. Esse relacionamento é representado por uma linha entre as duas 
entidades, sendo que se coloca uma seta no lado da linha onde se encontra o elemento 
mais geral. Exemplo: 
 
Realização: Relacionamento onde um item especifica um contrato cujo cumprimento 
é realizado por outro item. São encontrados em dois locais: entre interfaces e as 
classes ou componentes que as realizam; e entre casos de uso e as colaborações que 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 17 de 129 
os realizam. A realização é representada por uma linha tracejada que aponta do cliente 
(realiza o comportamento) para o fornecedor (especifica o comportamento). Exemplo: 
 
Gabarito: B 
QUESTÃO 17 FUMARC - 2011 - PRODEMGE - Analista de Tecnologia da Informação 
Analise as afirmativas abaixo em relação aos tipos de relacionamentos da UML. 
I.____▷ Representa um relacionamento generalização. 
II.-----▷ Representa um relacionamento de dependência. 
III._____ Representa um relacionamento de associação. 
Assinale a alternativa VERDADEIRA: 
 a) Apenas as afirmativas I e II estão corretas. 
 b) Apenas as afirmativas I e III estão corretas. 
 c) Apenas as afirmativas II e III estão corretas. 
 d) Todas as afirmativas estão corretas. 
Comentários: Como acabamos de aprender, a Afirmativa I mostra um relacionamento 
de generalização (com a seta um pouquinhoacima do que deveria estar, é verdade...), 
a afirmativa II mostra um relacionamento de realização (e não de dependência) e a 
afirmativa III mostra uma associação não direcional (veremos melhor essa questão de 
direcionalidade quando estivermos estudando o diagrama de classes). 
Gabarito: B 
QUESTÃO 18 FCC - 2011 - TRE-RN - Analista Judiciário - Análise de Sistemas 
Um relacionamento semântico entre classificadores, no qual um deles especifica um 
contrato cujo cumprimento é assegurado pelo outro. Na UML, trata-se de 
 a) herança múltipla. b) realização. c) multiplicidade. d) composição. e) visibilidade. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 18 de 129 
Comentários: Oi pessoal, é na realização que temos uma especificação de um contrato 
em um elemento, sendo esse contrato de “adesão obrigatória” pelo elemento do 
outro lado do relacionamento. 
 Esse tipo de relacionamento é utilizado para representar a implementação de 
uma interface por uma classe. 
Gabarito: B 
QUESTÃO 19 FUMARC - 2014 - AL-MG - Analista de Sistemas - Desenvolvimento 
A representação CORRETA de um relacionamento de realização na UML é: 
a) b) c) d) 
Comentários: A realização é representada por uma linha pontilhada seguida de uma 
seta vazada (ou vazia). 
Gabarito: A 
QUESTÃO 20 FCC - 2011 - INFRAERO - Analista de Sistemas - Arquitetura de Software 
Na notação UML, um nome entre ângulos (ex. <<nome>>), colocado acima do nome 
de outro elemento, é utilizado para a representação gráfica de 
 a) objeto. b) função. c) multiplicidade. d) operação. e) estereótipo. 
Comentários: Os estereótipos podem aparecer no diagrama de classes e em outros 
diagramas. A notação é a seguinte: 
 
 Tão vendo o <<uses>> na figura? Ele é um estereótipo para marcar a relação 
de dependência entre a associação entre Usuário e Livros e a classe Emprestimo. 
 Um estereótipo modifica o comportamento original de elemento 
estereotipado, dando novos significados validos para o contexto do sistema que está 
sendo modelado. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 19 de 129 
 Deixa eu pegar a definição da wikipedia: 
Os estereótipos são um dos três mecanismos de extensibilidade da UML. Eles dão mais 
poder à UML, permitindo classificar elementos "com algo em comum". Por exemplo, 
ao modelar uma rede pode ser necessário ter símbolos para representar roteadores e 
hubs. Ao fazer isso você estará estereotipando um elemento, visto que todos os hubs 
terão o mesmo símbolo. 
 Graficamente, um estereótipo é representado por um nome entre << >> (dois 
sinais de menor e dois sinas de maior). Esse símbolo geralmente vem após o elemento 
que está sendo estereotipado. Por exemplo, em um diagrama de classes estereótipos 
podem ser utilizados para classificar o comportamento dos métodos, tais como 
<<construtor>> e <<getter>>. 
 Em tempo, os outros dois mecanismos de extensão da UML estão 
representados na figura a seguir, junto com os estereótipos: 
 
 As restrições (ou discriminadores) são regras que podemos aplicar aos 
elementos, especificando uma regra de negócio, um tipo de relacionamento, ou como 
uma ação deve ser executada. Uma restrição de regra seria por exemplo: Um 
funcionário tem que ter salário. As restrições são escritas entre chaves {restrição}. 
 Os tagged values (ou valores atribuídos) representam uma especialização ou 
modificação de um atributo (ou valor) de um elemento qualquer da UML. São 
representados entre chaves. 
Gabarito: E 
 
QUESTÃO 21 FUNCAB - 2014 - MDA - Tecnologia da Informação 
Na UML 2.0, os elementos << boundary >> e o << control >>, em um diagrama de 
classe, são exemplos de: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 20 de 129 
 a) restrições b) estereótipos. c) composições. d) agregações. e) dependências 
Comentários: Estando entre << >>, os elementos só podem ser estereótipos. 
Gabarito: B 
QUESTÃO 22 FCC - 2011 - TRE-RN - Analista Judiciário - Análise de Sistemas 
Por um mecanismo de ampliação de seu vocabulário, a UML permite que sejam 
criados novos blocos de construção derivados dos já existentes, todavia específicos 
a determinados problemas. Esse mecanismo é definido como 
 a) persistência. b) derivação. c) polimorfismo. d) estereótipo. e) operação. 
Comentários: O único mecanismo de extensão apresentado nas alternativas da 
questão é o estereótipo, sendo, obviamente, o nosso gabarito. 
Gabarito: D 
QUESTÃO 23 FCC - 2012 - TRE-CE - Analista Judiciário - Análise de Sistemas 
A UML oferece mecanismos para a extensão da sintaxe e da semântica da linguagem. 
Considere: 
I. Novos atributos de modelagem. 
II. Novos elementos de modelagem. 
III. Nova semântica de modelagem. 
I, II e III são, respectivamente, 
 a) estereótipos, diagramas e relacionamentos. 
 b) dependências, associações e generalizações. 
 c) valores atribuídos, estereótipos e restrições. 
 d) valores discretos, diagramas e protótipos. 
 e) relacionamentos, dependências e associações. 
Comentários: Os valores atribuídos representam novos atributos de modelagem, os 
estereótipos alteram elementos de modelagem e as restrições adicionam regras aos 
elementos, trazendo uma nova semântica de modelagem. 
Gabarito: C 
QUESTÃO 24 IDECAN - 2013 - BANESTES - Analista de Tecnologia da Informação - 
Desenvolvimento de Sistemas 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 21 de 129 
Os diagramas são meios utilizados para visualização dos blocos de construção; uma 
apresentação gráfica de um conjunto de elementos, geralmente representados 
como um gráfico conectado de vértices e arcos. Esses diagramas representam visões 
de modelos comuns. São diagramas que representam as partes estáticas de um 
sistema, EXCETO: 
(A) Diagrama de classes. 
(B) Diagrama de objeto. 
(C) Diagrama de componente. 
(D) Diagrama de atividade. 
(E) Diagrama de implementação. 
Comentários: Os diagramas da UML podem ser de dois tipos: 
Diagramas estáticos se preocupam em mostrar a estrutura do sistema, suas classes, 
componentes, módulos etc. 
Diagramas dinâmicos apresentam o sistema em funcionamento. A variável tempo 
está presente e evidente em diagramas dinâmicos. 
 Complementarmente, segue esquema, bastante famoso, que apresenta todos 
os diagramas da UML e a divisão desses em estáticos e dinâmicos. Imprima essa 
imagem e cole na parede do seu quarto. Você precisa ter esta figura na sua mente! 
 
Do lado esquerdo temos os diagramas estruturais ou estáticos: 
1. Diagrama de Classes 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 22 de 129 
2. Diagrama de Estrutura Composta 
3. Diagrama de Componentes 
4. Diagrama de Implantação 
5. Diagrama de Objetos 
6. Diagrama de Pacotes 
7. Diagrama de Perfil 
 Do lado direito, temos os diagramas dinâmicos ou de comportamento: 
1. Diagrama de Atividades 
2. Diagramas de Interação 
2.1. Diagrama de Sequência 
2.2. Diagrama de Comunicação (ou colaboração) 
2.3. Diagrama de Interação Geral 
2.4. Digrama de Tempo 
3. Diagrama de Casos de Uso 
4. Diagrama de Máquina de Estados. (ou de estados) 
 Veja que nosso erro está na alternativa D, pois o diagrama de atividades é 
comportamental. 
Gabarito: D 
QUESTÃO 25 FUMARC - 2011 - BDMG - Analista de Sistemas 
São diagramas da UML que permitem visualizar as partes estáticas de um sistema, 
EXCETO: 
 a)Diagrama de Classes. 
 b) Diagrama de Atividades. 
 c) Diagrama de Implantação. 
 d) Diagrama de Componentes. 
Comentários: O diagrama de atividades é comportamental. 
Gabarito: B 
 
QUESTÃO 26 CETRO - 2013 - ANVISA - Analista Administrativo - Área 5 
Com relação à UML, analise as assertivas abaixo. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 23 de 129 
I. É independente das linguagens de programação e dos métodos de 
desenvolvimento. 
II. A UML 2.0 define 14 tipos de diagramas, divididos em 3 categorias. 
III. Permite que um projeto seja compreendido pelas pessoas e manipulado por 
máquinas. 
É correto o que se afirma em: 
 a) I, II e III. b) I e II, apenas. c) I e III, apenas d) II, apenas. e) I, apenas. 
Comentários: Vamos analisar cada afirmativa: 
I. É independente das linguagens de programação e dos métodos de 
desenvolvimento. Voltamos ao início da aula, onde aprendemos que a UML é uma 
linguagem de modelagem que pode ser utilizada para modelar projetos desenvolvidos 
em qualquer linguagem de programação ou processo de desenvolvimento de 
software. Afirmativa correta. 
II. A UML 2.0 define 14 tipos de diagramas, divididos em 3 categorias. Os 14 
diagramas da UML se dividem em estruturais e comportamentais. Afirmativa errada. 
III. Permite que um projeto seja compreendido pelas pessoas e manipulado por 
máquinas. Faz sentido, pois os diagramas são vistos por pessoas e existem 
ferramentas case que geram código a partir de diagramas. Afirmativa correta. 
Gabarito: C 
QUESTÃO 27 FCC - 2011 - TRT - 1ª REGIÃO (RJ) - Analista Judiciário - Tecnologia da 
Informação 
Na UML 2.0, os diagramas de objeto, de componente, de atividade e de comunicação 
são, respectivamente, do tipo (considere E para Estrutural e C para 
Comportamental): 
 a) C; C; C; E. b) C; C; E; E. c) C; E; E; C. d) E; C; E; C. e) E; E; C; C. 
Comentários: Enquanto que os diagramas de objeto e de componente são estruturais, 
os diagramas de atividade e de comunicação são comportamentais. 
Gabarito: E 
QUESTÃO 28 FCC - 2012 - TRE-CE - Analista Judiciário - Análise de Sistemas 
Na UML 2.0, representam comportamentos de um sistema, os diagramas de 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 24 de 129 
 a) comunicação e de caso de uso. 
 b) sequência e de implantação. 
 c) componentes e de atividades. 
 d) pacotes e de componentes. 
 e) atividades e de implantação. 
Comentários: A única alternativa que apresenta diagramas comportamentais é a A, 
que cita os diagramas de comunicação e de casos de uso. Os diagramas de implantação 
de componentes e de pacotes são estruturais. 
Gabarito: A 
QUESTÃO 29 FUNCAB - 2013 - DETRAN-PB - Analista de Sistemas 
Na UML, são exemplos de diagramas comportamentais e diagramas estruturais, 
respectivamente: 
 a) de estado e de classes. 
 b) de colaboração e de atividades. 
 c) de objetos e de casos de uso. 
 d) de classes e de colaboração. 
 e) de componentes e de sequência. 
Comentários: O diagrama de estado é comportamental e o diagrama de classes é 
estrutural. As demais alternativas estão erradas porque os diagramas de atividades, 
casos de uso, colaboração e de sequência são comportamentais. 
Gabarito: A 
QUESTÃO 30 FAPERP - 2012 - TJ-PB - Analista - Desenvolvimento de Sistemas 
A linguagem UML é constituída por uma série de diagramas. Assinale a alternativa 
que contém apenas diagramas estruturais. 
 a) Classes, Objetos e Atividades. 
 b) Objetos, Componentes e Casos de Uso. 
 c) Classes, Componentes e Pacotes. 
 d) Casos de Uso, Atividade e Sequências. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 25 de 129 
Comentários: Nosso gabarito é a alternativa C porque os diagramas de classe, 
componentes e pacotes são estruturais. Os diagramas de atividades, casos de uso e de 
sequência são comportamentais. 
Gabarito: C 
QUESTÃO 31 FCC - 2012 - TST - Analista Judiciário - Análise de Sistemas 
A especificação da UML, na versão 2.4, apresenta dois grupos de tipos de diagramas, 
sendo eles: 
 a) o conjunto de diagramas que trata dos aspectos relacionados com as classes, 
objetos e os relacionamentos do sistema e o conjunto de diagramas que aborda 
aspectos do estado de funcionamento das aplicações, como o diagrama de máquina 
de estados e o diagrama de interação. 
 b) diagramas voltados para a elaboração de programas que usam classes associadas 
ao conceito de herança e polimorfismo e diagramas voltados para a elaboração de 
programas que usam classes que usufruem dos conceitos de interface e 
componente. 
 c) o grupo de diagramas que trata de modelar o comportamento do sistema, como 
o diagrama de classes e o diagrama de pacotes e o grupo de diagramas que trata da 
estrutura do sistema, como o diagrama de caso de uso e o diagrama de atividades. 
 d) os diagramas estruturais, que apresentam os níveis de implementação e como as 
partes do sistema se relacionam, e os diagramas comportamentais, os quais 
apresentam o comportamento dinâmico dos objetos do sistema, mostrando as 
mudanças no tempo, dentre os quais está o diagrama de caso de uso. 
 e) uma agregação de diagramas para desenvolver aplicações que não envolvem o 
uso de classes e objetos, como o diagrama de caso de uso e o diagrama de 
componentes e outra agregação de diagramas que são aplicados diretamente no 
modelo de desenvolvimento orientado a objetos. 
Comentários: A única alternativa que nos apresenta a divisão dos diagramas da UML 
em comportamentais e estruturais é a alternativa D. As demais opções são absurdas. 
Gabarito: D 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 26 de 129 
QUESTÃO 32 FEPESE - 2013 - JUCESC - Analista Técnico em Gestão de Registro 
Mercantil - Analista de Informática 
Assinale a alternativa que contém um diagrama estrutural, um comportamental e 
outro diagrama estrutural, todos da UML, respectivamente. 
 a) Diagrama de sequência; diagrama de casos de uso; diagrama de estados. 
 b) Diagrama de objetos; diagrama de implantação; diagrama de classes. 
 c) Diagrama de implantação; diagrama de atividade; diagrama de componentes 
 d) Diagrama de comunicação; diagrama de casos de uso; diagrama de 
interatividade. 
 e) Diagrama de casos de uso; diagrama de classes; diagrama de sequência 
Comentários: Enquanto que os diagramas de implantação e de componentes são 
estruturais, o diagrama de atividades é comportamental, fazendo com que nosso 
gabarito seja a alternativa C. 
As demais alternativas estão erradas porque os diagramas de sequência, de 
estados, de comunicação e de casos de uso não são estruturais, bem como os 
diagramas de implantação e de classes não são comportamentais. 
Por fim, não existe um diagrama de interatividade!!! 
Gabarito: C 
QUESTÃO 33 Quadrix - 2014 - COBRA Tecnologia S-A (BB) - Analista de Operações - 
Negócios 
A especificação UML define duas grandes categorias de diagramas: diagramas de 
estrutura (structure diagrams) e diagramas de comportamento (behavior diagrams). 
É um diagrama de comportamento: 
 a) Diagrama de classes. 
 b) Diagrama de pacotes. 
 c) Diagrama de atividades. 
 d) Diagrama de componente. 
 e) Diagrama de deployment. 
Comentários: O único diagrama comportamental elencado entre as alternativas é o 
de atividades, fazendo do nosso gabarito a alternativa C. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.netPágina 27 de 129 
Gabarito: C 
QUESTÃO 34 FUNDEP - 2014 - COPASA - Analista de Saneamento - Desenvolvimento 
de Sistemas 
Os diagramas estruturais da UML existem para visualizar, especificar, construir e 
documentar os aspectos estáticos de um sistema. 
Assinale a alternativa que apresenta o diagrama que é estrutural. 
 a) Diagrama de sequência. 
 b) Diagrama de máquina de estados. 
 c) Diagrama de atividades. 
 d) Diagrama de estrutura composta. 
Comentários: O diagrama de estrutura composta é o único estrutural. 
Gabarito: D 
QUESTÃO 35 FUNCAB - 2014 - MDA - Administrador de Banco de Dados 
O diagrama da UML (Unified Modeling Language) denominado “atividade” tem 
como finalidade apresentar o sistema com uma visão que modela os fluxos de 
controle. Essa visão possui uma característica: 
a) estática. b) dinâmica. c) particionada. d) imparcial. e) parcial 
Comentários: A modelagem dos fluxos de controle, realizada por meio do diagrama 
de atividades, é de natureza comportamental. 
Gabarito: B 
QUESTÃO 36 FUMARC - 2013 - PC-MG - Analista da Polícia Civil - Tecnologia da 
Informação 
São Diagramas Comportamentais da UML, EXCETO: 
 a) Diagrama de Classes. 
 b) Diagrama de Atividades. 
 c) Diagrama de Sequência. 
 d) Diagrama de Caso de Uso. 
Comentários: O diagrama de classes é o único estrutural entre as opções 
apresentadas. 
Gabarito: A 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 28 de 129 
QUESTÃO 37 IBFC - 2014 - TRE-AM - Analista Judiciário - Análise de Sistemas 
A UML 2.2 possui 14 tipos de diagramas, divididos em duas grandes categorias: 
Estruturais e Comportamentais. Identifique abaixo o diagrama que NÃO faz parte 
dos Diagramas Estruturais: 
 a) Componentes. b) Pacotes. c) Atividades.. d) Classes. 
Comentários: O diagrama de atividades é comportamental. 
Gabarito: C 
QUESTÃO 38 FUNCAB - 2013 – DETRAN/PB - Analista de Sistema 
Na UML, são exemplos de diagramas comportamentais e diagramas estruturais, 
respectivamente: 
A) de estado e de classes. 
B) de colaboração e de atividades. 
C) de objetos e de casos de uso. 
D) de classes e de colaboração. 
E) de componentes e de sequência. 
Comentários: Nós temos que a alternativa A é o nosso gabarito, uma vez que o 
diagrama de máquina de estados é um diagrama comportamental e o diagrama de 
classes é um diagrama estrutural. 
Gabarito: A 
QUESTÃO 39 FUMARC - 2014 - AL-MG - Analista de Sistemas - Desenvolvimento 
Diagramas comportamentais da UML são utilizados para visualizar, especificar, 
construir e documentar os aspectos dinâmicos de um sistema. São diagramas 
comportamentais da UML, EXCETO: 
 a) Diagrama de Atividades. 
 b) Diagrama de Sequência. 
 c) Diagrama de Componentes. 
 d) Diagrama de Casos de Uso. 
Comentários: O diagrama de componentes é estrutural. 
Gabarito: C 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 29 de 129 
QUESTÃO 40 FUMARC - 2014 - Prefeitura de Belo Horizonte - MG - Técnico de Nível 
Superior - Informática 
São diagramas estruturais da UML: 
 a) Diagrama de classes e diagrama de implantação. 
 b) Diagrama de classes e diagrama de casos de uso. 
 c) Diagrama de objetos e diagrama de atividades. 
 d) Diagrama de comunicação e diagrama de sequência. 
Comentários: Os diagramas de casos de uso, de atividades, de comunicação e de 
sequência são comportamentais, inviabilizando as alternativas B, C, D e E. 
Gabarito: A 
QUESTÃO 41 FUNCAB - 2014 – SESACRE - Analista de Sistemas 
Na UML 2.0, é considerado um diagrama comportamental: 
A) diagrama de classes. 
B) diagrama de objetos. 
C) diagrama de componentes. 
D) diagrama de implantação. 
E) diagrama de casos de uso. 
Comentários: O diagrama de casos de uso é um diagrama comportamental. 
Gabarito: E 
QUESTÃO 42 CESGRANRIO - 2011 - Petrobrás - Analista de Sistemas Júnior - 
Engenharia de Software - 2011 
Nos últimos anos, um dos avanços mais importantes na engenharia de software foi 
o aparecimento da UML como padrão para a descrição de sistemas orientados a 
objetos. Associe os diagramas às categorias apresentadas a seguir. 
 
As associações corretas são: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 30 de 129 
 a) I - P , II - S , III - R 
 b) I - R , II - Q , III - S 
 c) I - S , II - Q , III - P 
 d) I - R , II - P , III - Q 
 e) I - S , II - P , III - Q 
Comentários: A alternativa E é nosso gabarito, pois os diagramas elencados em II são 
estruturais, os elencados em III são comportamentais e os elencados em I são 
comportamentais de interação. 
Gabarito: E 
QUESTÃO 43 FCC - 2013 - AL-RN - Analista Legislativo - Analista de Sistemas 
A especificação UML 2.5 define dois tipos principais de diagramas UML: structure 
diagrams e behavior diagrams. Behavior diagrams mostram o comportamento 
dinâmico dos objetos em um sistema, que pode ser descrito como uma série de 
mudanças no sistema no decorrer do tempo. São exemplos de Behavior diagrams os 
diagramas de 
 a) Comunicação, Fluxo de Informação e Objeto. 
 b) Comunicação, Deployment e Máquina de Estado. 
 c) Temporização, Componente e Atividade. 
 d) Sequência, Caso de Uso e Atividade. 
 e) Classe, Atividade e Sequência. 
Comentários: Não existe diagrama de fluxo de informação nem de temporização, o 
que torna, em uma análise preliminar, as alternativas A e C erradas. 
Os diagramas de implantação (ou deployment, em inglês) e o diagrama de 
classes são estruturais, tornando erradas as alternativas B e E. 
Sobrou a alternativa D, que apresenta apenas diagramas comportamentais. 
Gabarito: D 
QUESTÃO 44 CESPE - 2013 - TRE-MS - Programador de computador 
Por meio de diagramas da UML, é possível capturar diferentes visões do sistema. 
Assinale a opção que apresenta o diagrama de um comportamento dinâmico do 
sistema. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 31 de 129 
 a) diagrama de casos de uso 
 b) diagrama de objetos 
 c) diagrama de componentes 
 d) diagrama de implantação 
 e) diagrama de classes 
Comentários: O diagrama de casos de uso é, entre as opções, o único que modela o 
comportamento dinâmico do sistema. Os demais são estruturais. 
Gabarito: A 
QUESTÃO 45 FCC - 2013 - AL-RN - Analista Legislativo - Analista de Sistemas 
Os diagramas UML podem ser divididos em dois grandes grupos, Diagramas 
Estruturais e Diagramas Comportamentais. Analise a lista de diagramas abaixo: 
I. Componentes. 
II. Comunicação. 
III. Implantação. 
IV. Caso de Uso. 
V. Classes. 
VI. Estados. 
São Diagramas Comportamentais APENAS os descritos em 
 a) III, IV e V. b) I, IV e V. c) II, V e VI. d) I, II e V. e) II, IV e VI. 
Comentários: Enquanto que os diagramas de componentes, implantação e classes são 
estruturais, os diagramas de comunicação, casos de uso e estados são 
comportamentais. 
Gabarito: E 
QUESTÃO 46 FCC - 2012 - TRE-SP - Analista Judiciário - Análise de Sistemas 
A UML 2.0 divide os diagramas em duas categorias, estruturais e de comportamento. 
São exemplos de diagramas estruturais e de comportamento, respectivamente, os 
diagramas de 
 a) classe e atividades. 
 b) comunicação e sequência. 
 c) componentes e objetos. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 32 de 129 
 d) máquinas de estado e casos de uso. 
 e) casos de uso e sequência. 
Comentários: Os diagramasde classe são estruturais e os diagramas de atividades são 
comportamentais, sendo o nosso gabarito a alternativa A. As demais estão erradas 
porque os diagramas de comunicação, máquinas de estado e de casos de uso não são 
estruturais, bem como o diagrama de objetos não é comportamental. 
Gabarito: A 
QUESTÃO 47 COPESE - 2012 - MPE-TO - Analista Ministerial Especializado - Análise 
de Sistemas 
A UML 2.0 define treze tipos de diagramas, divididos em três categorias 
 
Associe categoria e diagrama e assinale a alternativa CORRETA. 
A: 1 – (B), 1 – (D), 1 – (F), 1 – (G), 1 – (I), 1 – (M), 2 – (C), 2 – (H), 2 – (K), 3 – (A), 3 – 
(E), 3 – (J) e 3 – (L) 
B: 3 – (B), 3 – (D), 3 – (F), 3 – (G), 3 – (I), 3 – (M), 2 – (C), 2 – (H), 2 – (K), 1 – (A), 1 – (E), 
1 – (J) e 1 – (L) 
C: 2 – (B), 2 – (D), 2 – (F), 2 – (G), 2 – (I), 2 – (M), 1 – (C), 1 – (H), 1 – (K), 3 – (A), 3 – (E), 
3 – (J) e 3 – (L) 
D: 2 – (B), 2 – (D), 2 – (F), 2 – (G), 2 – (I), 2 – (M), 3 – (C), 3 – (H), 3 – (K), 1 – (A), 1 – 
(E), 1 – (J) e 1 – (L) 
E: 1 – (B), 1 – (D), 1 – (F), 1 – (G), 1 – (I), 1 – (M), 3 – (C), 3 – (H), 3 – (K), 2 – (A), 2 – (E), 
2 – (J) e 2 – (L). 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 33 de 129 
Comentários: Rapaz, resumindo tudo, a única alternativa que está de acordo com a 
classificação dos diagramas da UML em estruturais e comportamentais (tendo esse 
conjunto de diagramas uma subdivisão em diagramas de interação) é a A. 
Gabarito: A 
QUESTÃO 48 AOCP - 2013 - Colégio Pedro II - Analista de Tecnologia da Informação 
A UML é uma linguagem ou notação de diagramas para especifcar, visualizar e 
documentar modelos de software orientados a objetos. Qual das alternativas abaixo 
NÃO é um tipo de diagrama utilizado em UML? 
 a) Diagrama de Classes. 
 b) Diagrama de Sequência. 
 c) Diagrama de Trabalhos. 
 d) Diagrama de Sequência. 
 e) Diagrama de Estados. 
Comentários: Não existe diagrama de trabalhos na UML. 
Gabarito: C 
QUESTÃO 49 IFC - 2012 - IFC - Analista de Tecnologia da Informação 
Qual dos diagramas listados abaixo NÃO faz parte da linguagem de especificação 
UML versão 2? 
 a) Diagrama de Fluxo de Dados. 
 b) Diagrama de Caso de Uso. 
 c) Diagrama de Atividades. 
 d) Diagrama de Máquina de Estados. 
 e) Diagrama de Sequência 
Comentários: O diagrama de fluxo de dados pertence à análise estruturada. 
Gabarito: A 
QUESTÃO 50 AOCP - 2012 - BRDE - Analista de Sistemas - Desenvolvimento de 
Sistemas 
Assinale a seguir a alternativa que apresenta somente tipos de diagramas utilizados 
pela UML (Unified Modeling Language). 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 34 de 129 
 a) Diagrama de classes, diagrama de objetos, diagrama de componentes, diagrama 
de implementação, diagrama de pacotes, diagrama de estrutura, diagrama de use 
case, diagrama de transição de estados, diagrama de atividade, diagrama de 
sequência, diagrama de interatividade, diagrama de colaboração ou comunicação e 
diagrama de tempo. 
 b) Diagrama de entidade relacionamento, diagrama de classes, diagrama de objeto, 
diagrama de estado, diagrama de sequência, diagrama de colaboração, diagrama de 
atividade, diagrama de componente e o diagrama de execução, diagrama de 
colaboração ou comunicação . 
 c) Diagrama de use case, diagrama de classes, diagrama de objeto, diagrama de 
estado, diagrama de sequência, diagrama de colaboração, diagrama de fluxo de 
dados, diagrama de componente e o diagrama de execução,diagrama de tempo. 
 d) Diagrama de entidade relacionamento, diagrama de classes, diagrama de objeto, 
diagrama de estado, diagrama de sequência, diagrama de colaboração, diagrama de 
fluxo de dados, diagrama de componente e o diagrama de execução, diagrama de 
interatividade. 
 e) Diagrama de use case, diagrama de classes, diagrama de objeto, diagrama de 
estado, diagrama de sequência, diagrama de fluxo de dados, diagrama de atividade, 
e o diagrama de execução, diagrama de interatividade, diagrama de tempo. 
Comentários: Não são diagramas integrantes da UML: DER (diagrama entidade 
relacionamento), diagrama de execução, DFD (diagrama de fluxo de dados) e diagrama 
de interatividade. 
Gabarito: A 
QUESTÃO 51 FEPESE - 2012 - FATMA - Analista Técnico de Gestão Ambiental - Classe 
IV - Analista de Informática 
Identifque as afirmativas que definem corretamente as formas de utilização de OCL 
(Object Constraint Language) na UML: 
1. Utilizadas para especifcar condições invariantes em classes e tipos em modelo de 
classes. 
2. Utilizadas para descrever pré e pós-condições em operações e métodos. 
3. Utilizadas para definir estereótipos. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 35 de 129 
4. Utilizadas para especificar guard conditions e change events nos diagramas de 
transição de estados. 
5. Utilizadas para mapear modelagem de banco de dados. 
Assinale a alternativa que indica todas as afirmativas corretas. 
 a) É correta apenas a afirmativa 5. 
 b) São corretas apenas as afirmativas 1 e 2. 
 c) São corretas apenas as afirmativas 3 e 4. 
 d) São corretas apenas as afirmativas 1, 2 e 5. 
 e) São corretas apenas as afirmativas 1, 2, 3 e 4. 
Comentários: OCL (Object Constraint Language ou Linguagem para Especificação de 
Restrições em Objetos, em português) é uma linguagem declarativa para descrever as 
regras que se aplicam aos modelos UML. A OCL foi desenvolvida na IBM e foi inserida 
posteriormente como parte do padrão UML. 
É uma linguagem precisa, textual e formal. Essa formalidade garante a não 
existência de interpretações ambíguas para as mesmas restrições, fato que ocorria 
antes da sua criação. Uma das suas principais características é que seu uso não exige 
um forte conhecimento matemático para ser utilizada corretamente. 
Existem três tipos de expressões OCL: 
Condições invariantes em uma classe: são as condições as quais os objetos modelados 
devem obedecer durante todo seu ciclo de vida no sistema. 
Pré-condições de operações que envolvem uma classe: são declarações que 
representam o estado em que o sistema deve se encontrar antes da execução de uma 
determinada operação de um objeto. 
Pós-condições de operações que envolvem uma classe: são declarações que 
apresentam o estado em que o sistema deve se encontrar após a execução de uma 
determinada operação de um objeto. 
 Além do seu uso no contexto de classes, podemos usar a OCL para definir 
estereótipos. 
Gabarito: E 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 36 de 129 
3. DIAGRAMA DE CLASSES 
3.1 INTRODUÇÃO 
 
QUESTÃO 52 PR-4 Concursos - 2012 - UFRJ - Técnico de Tecnologia da Informação - 
Desenvolvimento 
A UML é uma linguagem originada na engenharia de software amplamente utilizada 
na modelagem de sistemas. O nome do tipo diagrama estruturante que representa 
estruturas estáticas, exibindo classes, interfaces, associações e outros 
relacionamentos é o diagrama de: 
 a) objetos; b) pacotes; c) classes; d) componentes; e) casos de uso. 
Comentários: O Diagrama de Classes descreve os tipos de objetos (classes) existentes 
no sistema e os relacionamentos estáticos entre eles. O diagrama de classes também 
mostra as propriedades (atributos) e operações (métodos) de uma classe e as 
restrições que se aplicam à maneira como os objetos estão conectados. 
Gabarito: C 
QUESTÃO 53 FEPESE - 2014 - MPE-SC - Analista - Tecnologia da Informação - 
Reaplicação 
Assinalea alternativa que apresenta o diagrama UML que mostra um conjunto de 
classes e seus relacionamentos. 
 a) Diagrama de Estados 
 b) Diagrama de Interação 
 c) Diagrama de Casos de Uso 
 d) Diagrama de Colaboração 
 e) Diagrama de Classes 
Comentários: O diagrama que apresenta as classes do sistema e seus relacionamentos 
é o diagrama de classes. 
Gabarito: E 
QUESTÃO 54 FGV - 2014 - DPE-RJ - Técnico Superior Especializado - Desenvolvimento 
de Sistemas 
Maria participa de um projeto cujo objetivo é desenvolver em C# uma versão 
orientada a objetos de um software legado, e deseja criar um diagrama UML para 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 37 de 129 
definir os modelos das classes do sistema. Esse diagrama deve representar as 
estruturas dessas classes, determinando 
a) o conjunto de casos de testes segundo as melhores práticas de desenvolvimento 
de software. 
 b) a sequência de criação dos objetos. 
 c) os atributos e os métodos. 
 d) os casos de uso que deram origem ao diagrama. 
 e) o número de objetos que serão criados quando o sistema estiver em produção. 
Comentários: O diagrama que descreve o modelo de classes do sistema é o diagrama 
de classes. Esse diagrama vai apresentar os atributos e os métodos das classes 
representadas. 
Gabarito: C 
3.2 CLASSES, MÉTODOS E ATRIBUTOS 
 
QUESTÃO 55 VUNESP - 2013 - Câmara Municipal de São Carlos/SP - Analista de 
Sistemas 
Um diagrama de classes da UML 2.0, em sua representação, contém 3 
compartimentos, denominados: 
(A) estado, condições e atores. 
(B) atores, transições e estado. 
(C) nome, atributos e operações. 
(D) exceções, sequência e transições. 
(E) estereótipos, classificação e atributos. 
Comentários: Uma classe é representada por um retângulo divido em até 03 
compartimentos. O primeiro apresenta o nome da classe, o segundo, os atributos e o 
terceiro, os métodos. Dependendo do nível de detalhamento, um diagrama de classes 
pode apresentar classes apenas com o primeiro compartimento, ou seja, apenas o 
nome da classe, ou ainda, dois compartimentos, o nome da classe e a lista de atributos. 
 Podemos analisar uma classe a partir de suas propriedades, que representam 
a características estruturais da classe. Cada propriedade representa um campo de uma 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 38 de 129 
classe. As propriedades podem ser apresentadas em um diagrama de classes de duas 
formas: atributos e associações (estudaremos as associações em breve). 
 Os atributos descrevem uma propriedade de uma classe como uma linha de 
texto dentro da classe. Eles são representados no segundo compartimento da classe. 
A forma completa de um atributo é: 
visibilidade nome: tipo multiplicidade = valor-default {lista de propriedade} 
 O marcador de visibilidade indica se o atributo é: 
1. Público (+): é um atributo que pode ser acessado pela classe internamente e 
externamente por qualquer classe. 
2. Privado (-): é um atributo que só pode ser acessado por métodos pertencentes a 
própria classe. 
3. Protegido (#): é um atributo que pode ser acessado por métodos de sua classe e por 
métodos pertencentes a subclasses da classe. 
4. Pacote (~): é um atributo que pode ser acessado pela classe e por classes 
pertencentes ao mesmo pacote da classe do atributo. 
 O nome do atributo é a única parte obrigatória. 
 O tipo diz a classe ou tipo primitivo do atributo. Por exemplo, um atributo pode 
ser um inteiro, uma String, um float etc. 
 A multiplicidade indica a quantidade de objetos, ou tipos primitivos, que são 
representados por aquela propriedade. Via de regra, os atributos devem ser unários, 
pois se a multiplicidade pode ser maior do que um, é mais negócio representar aquele 
atributo como uma classe e ter uma associação entre classes. Mas, nada impede que 
coloquemos um indicador de multiplicidade para o atributo (como por exemplo: [0...*] 
- a classe pode ter de zero até vários objetos de determinado atributo). 
 O valor padrão indica o valor que será armazenado no atributo caso a classe 
seja instanciada em um objeto sem definição do valor do atributo no momento de sua 
criação. 
 A lista de propriedades, entre chaves, são opcionais e apresentam 
propriedades adicionais do atributo como uma descrição ou valores possíveis. 
 Vamos olhar dois exemplos de atributos e descrever o que está acontecendo: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 39 de 129 
-especialidade: String – trata-se do atributo especialidade que é privado e é uma 
String. 
#dataNascimento: Date – é o atributo dataNascimento, protegido e do tipo Date. 
As operações (ou métodos) são as ações que a classe sabe realizar. São 
representadas no terceiro compartimento da classe. Normalmente, não se faz 
necessário apresentar as operações de manipulação de propriedades (métodos set e 
get), pois elas são inferidas como certos de existir. 
 A sintaxe completa da UML para as operações é a seguinte: 
visibilidade nome (lista-de-parâmetros): tipo-de-retorno {lista de propriedades} 
 Aqui de novidade, em relação aos atributos, temos a lista de parâmetros, que 
são os atributos de entrada da operação, e o tipo de retorno, que é o tipo do valor 
retornado pelo método, caso exista. 
 Com relação à questão, os 03 compartimentos de uma classe são utilizados 
para representar, de cima para baixo, o nome da classe, os atributos e os métodos. 
Gabarito: C 
QUESTÃO 56 ESAF - 2012 - CGU - Analista de Finanças e Controle - prova 3 - 
Desenvolvimento de Sistemas da Informação 
Para indicar a visibilidade da propriedade, a UML 
 a) incorpora um prefixo a um nome de atributo ou nome de operação. 
 b) incorpora um sufixo a um nome de atributo ou origem de operação. 
 c) gera um nome de atributo e nome de transação totalmente distinto do anterior. 
 d) duplica nome de atributo ou nome de operação. 
 e) sublinha o nome de atributo ou nome de operação. 
Comentários: O modificador de visibilidade é o primeiro prefixo adicionado a um 
atributo da UML, sendo a alternativa A o nosso gabarito. 
Gabarito: A 
QUESTÃO 57 VUNESP - 2013 - COREN/SP - Analista de Sistemas 
Em um diagrama de classes na UML 2.0, a notação utilizada para denotar um atributo 
denominado “total”, com visibilidade privada e com multiplicidade 2, do tipo inteiro, 
é 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 40 de 129 
(A) # total ~ 2; int 
(B) + total {2}, int 
(C) + total (2), int 
(D) ~ total - 2 -int 
(E) – total [2] : int 
Comentários: A questão daria para matar só com a restrição de visibilidade privada 
(-). 
Mas, não só isso... a forma de representar a multiplicidade de um atributo é 
entre []. 
Mas, não só isso... O tipo do atributo aparece separado do nome do atributo 
por meio de um : 
Gabarito: E 
QUESTÃO 58 VUNESP - 2012 - FAMERP - Analista de Serviço Administrativo - 
Tecnologia da Informação (Analista Programador) 
A visibilidade é uma propriedade definida para uma classe de um diagrama UML e 
estabelece o escopo do acesso permitido a um membro da classe. O nível de 
visibilidade que provê acesso apenas a objetos de uma mesma classe, bem como seu 
símbolo são, respectivamente, 
(A) private e −. (B) unique e @. (C) protected e #. (D) package e ~. (E) foreign e +. 
Comentários: O nível de acessibilidade privado (private) restringe o acesso de 
determinado membro da classe à própria classe. 
Gabarito: A 
QUESTÃO 59 FEPESE- 2012 - FATMA - Analista Técnico de Gestão Ambiental - Classe 
IV - Analista de Informática 
Assinale a alternativa que indica corretamente a visibilidade de atributos e 
operações de uma classe, especifcada pelo símbolo “#” na UML: 
 a) público (public) 
 b) privado (private) 
 c) pacote (package) 
 d) protegido (protected) 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 41 de 129 
 e) multiplicidade (multiplicity) 
Comentários: Você precisa saber os modificadores de visibilidade na ponta da língua! 
O + é o público, o - é o privado, o jogo da velha é o protegido e o til é o de pacote. 
Gabarito: D 
QUESTÃO 60 FUNCAB - 2014 - MDA - Analista de Sistemas 
Em diagramas apropriados da UML, pode-se representar o tipo de acesso aos 
membros de dados e aos métodos de uma classe por meio de sinais. O sinal # (jogo 
da velha) representa um acesso do tipo: 
 a) isolado b) privativo c) abstrato d) protegido. e) público 
Comentários: O jogo da velha é a representação gráfica do nível de visibilidade 
protegido. 
Gabarito: D 
QUESTÃO 61 VUNESP - 2013 - MPE/ES - Agente Especializado - Analista de Sistemas 
Em uma classe da UML 2.0, um atributo teve sua multiplicidade declarada como 
[1..*]. Isso significa que esse atributo 
(A) pode não ter nenhum valor. 
(B) pode ter um ou mais valores. 
(C) tem pelo menos um valor não definido. 
(D) tem pelo menos dois valores. 
(E) tem, no máximo, dois valores. 
Comentários: Questão simples que nos apresenta a restrição de multiplicidade 1 para 
muitos, onde um atributo declarado com essa multiplicidade pode possuir um ou mais 
valores. 
Gabarito: B 
QUESTÃO 62 FCC - 2011 - INFRAERO - Analista de Sistemas - Arquitetura de Software 
Qualquer descendente do classificador é capaz de usar a característica; sua 
especificação é antecedida pelo símbolo #. A definição trata da visibilidade usada na 
notação UML, de nível 
 a) público. b) privado. c) pacote. d) protegido. e) dependente. 
Comentários: O nível de visibilidade protegido ou protected é um favorito das bancas. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 42 de 129 
Gabarito: D 
QUESTÃO 63 FCC - 2014 - AL-PE - Analista Legislativo - Sistemas 
Visibilidade refere-se à capacidade de um método referenciar uma característica de 
outra classe. Num diagrama de classes da UML 2.0 a visibilidade é indicada com um 
prefixo representado pelos caracteres: 
I. # II. + III. ~ IV. - 
Os tipos de visibilidade definidos de I a IV são correta e respectivamente: 
 a) private - public - protected - package 
 b) public - private - package - protected 
 c) private - package - public - protected 
 d) protected - public - package - private 
 e) package - protected - private – public 
Comentários: O # é o protected, o + é o public, o ~ é o pacote e o – é o private. 
Gabarito: D 
3.3 ATRIBUTOS DE CLASSE 
 
QUESTÃO 64 FCC - 2012 - MPE-PE - Analista Ministerial - Informática 
Atributos estáticos são atributos da classe em vez de serem atributos de uma 
instância da classe. Em UML um atributo estático é representado ao se utilizar em 
sua transcrição o: 
 a) modo sublinhado b) símbolo # c) símbolo / d) modo itálico e) símbolo ~ 
Comentários: Pois é pessoal, para representar os atributos de classe (ou estáticos) 
(aqueles, cujo valor armazenado é o mesmo para todas as instâncias de uma classe), é 
só sublinhar o nome do atributo. 
Gabarito: A 
QUESTÃO 65 CESGRANRIO - 2013 - LIQUIGAS - Profissional Júnior - Análise de 
Sistemas - Tecnologia da Informação 
A Figura a seguir representa uma classe UML: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 43 de 129 
 
Quantas propriedades (features) estáticas essa classe possui? 
 a) 0 b) 1 c) 2 d) 3 e) 4 
Comentários: Quando o examinador pede as propriedades estáticas, na verdade, está 
querendo que o concurseiro indique os atributos estáticos da classe. Como não temos 
nenhum atributo sublinhado na figura apresentada na questão, nosso gabarito é a 
alternativa A. 
Gabarito: A 
3.4 ASSOCIAÇÕES 
 
QUESTÃO 66 VUNESP - 2011 - Prefeitura de Diadema - Analista de Sistemas – 
Programação – Net/VB, ASP/C#, JAVA/PHP 
Considerando os diagramas de classe da UML 2.0, há o conceito de navegabilidade. 
A notação utilizada para indicar uma navegabilidade unidirecional é 
 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 44 de 129 
Comentários: Além dos atributos, as propriedades de uma classe podem ser 
representadas por meio de uma associação. 
Uma associação tem como notação gráfica uma linha cheia, direcionada da 
classe de origem para a classe de destino. Veja o exemplo abaixo: 
 
 Nesse exemplo apresentado, a associação indica que a classe Pessoa possui um 
atributo da classe Conta. Ela poderia ser representada diretamente como um atributo 
de Pessoa. 
 Via de regra, usamos atributos de classe quando não precisamos implementar 
a classe (por exemplo, uma String). Já as associações são utilizadas quando as duas 
classes fazem parte do contexto do sistema. 
 Associações, diferentemente dos atributos, apresentam duas informações 
opcionais de multiplicidade, sendo que cada uma indica quantos objetos de uma classe 
participam da associação. A multiplicidade padrão de uma propriedade é 1. 
 A figura a seguir apresenta os diversos tipos de indicadores de multiplicidade 
possíveis: 
 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 45 de 129 
 A partir da figura podemos compreender que: um pedido possui nenhuma ou 
uma data (Date). Uma data pode estar presente em diversos pedidos. Um pedido 
possui diversas linhas de pedido. Cada linha de pedido pertence a um pedido. 
 Associações também podem ser bidirecionais: 
 
 Isso significa que cada classe tem como atributo a outra classe. 
 Um detalhe no diagrama anterior é a palavra proprietário perto da classe 
Pessoa. Ela indica o papel da classe Pessoa na associação. 
 Por fim, você pode representar uma associação sem as setinhas que indicam a 
direcionalidade. Isso pode significar que é uma associação bidirecional ou que a 
direcionalidade foi omitida propositadamente (por desconhecimento, por exemplo). 
 Voltando à nossa questão, a setinha representa a direcionalidade de uma 
associação. 
Gabarito: B 
QUESTÃO 67 FUNCAB - 2014 - EMDUR - Analista - Analista de Informática 
No diagrama de classes da UML, uma linha entre as classes de objetos representa 
um(a): 
A) associação. B) atributo. C) operação. D) método. E) herança. 
Comentários: Uma linha entre duas classes representa uma associação entre elas. 
Gabarito: A 
QUESTÃO 68 ESAF - 2012 - CGU - Analista de Finanças e Controle - prova 3 - 
Desenvolvimento de Sistemas da Informação 
Uma associação em UML representa 
 a) uma população variada de relações (engagements) de redundâncias entre 
instâncias de classe. 
 b) uma população variada de vínculos (links) de relacionamentos entre instâncias 
de classe. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 46 de 129 
 c) uma classificação de vínculos (links) de relacionamentos entre classes de 
atributos. 
 d) uma população constante de valores (values) de relacionamentos quantitativos 
entre atributos de instâncias. 
 e) uma estrutura de equivalências (equal features) entre relacionamentos de 
instâncias de posicionamentode classes. 
Comentários: Essa prova da CGU foi especializada em questões com alternativas 
absurdas. Eu vou me ater a tentar explicar o gabarito, que é nossa alternativa D. 
Aprendemos que a associação é um relacionamento entre uma classe e uma 
propriedade. 
Normalmente, quando usamos a associação, isso significa que a classe tem 
como atributo outra classe, ou melhor, um objeto de uma classe terá como atributo 
um objeto de outra classe. 
Pois bem, para o examinador, um vínculo de relacionamento é justamente um 
link entre um objeto de uma classe e o objeto de outra classe. Logo, a associação vai 
representar um conjunto de vínculos de objetos. 
Gabarito: B 
QUESTÃO 69 CESGRANRIO - 2013 - BNDES - Profissional Básico - Análise de Sistemas 
- Desenvolvimento 
Considere, em um primeiro sentido, que “pedreiros trabalham em construção civil” 
e, em sentido contrário, que “a construção civil emprega pedreiros”. 
Na análise orientada a objetos com notação UML (Unified Modeling Language), o 
exemplo mencionado, de acordo com o modelo objeto, está relacionado a uma 
 a) inversão de classes e instâncias em um mesmo método 
 b) conexão de objetos das mesmas classes 
 c) relação entre atividade e entidade 
 d) reciprocidade de informação 
 e) independência funcional 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 47 de 129 
Comentários: A ideia aqui é que objetos da classe pedreiro possuem um objeto da 
classe construção civil. Estamos falando de uma conexão de objetos dessa classe, ou, 
mais especificamente, de uma associação. 
Gabarito: B 
QUESTÃO 70 VUNESP - 2012 - IAMSPE - Analista de Tecnologia (Informática 
/Desenvolvimento) 
Considere o seguinte diagrama de classes: 
 
Na figura, o texto “abc” está representando um (a) 
(A) papel. (B) herança. (C) restrição. (D) ordenação. (E) multiplicidade. 
Comentários: abc é o papel da Classe 2. 
Gabarito: A 
QUESTÃO 71 FCC - 2012 - TCE-AP - Analista de Controle Externo - Tecnologia da 
Informação 
Considere o seguinte diagrama UML: 
 
O número 1 e símbolo 1..* que aparecem ao lado das classes Nota Fiscal e Itens se 
referem à restrição de 
 a) herança. b) agregação. c) identidade. d) multiplicidade. e) polimorfismo. 
Comentários: Temos duas restrições de multiplicidade, sendo uma “1 para 1” e outra 
“1 para muitos”. Ou seja, cada item tem uma nota fiscal e cada nota fiscal pode ter 1 
ou mais itens. 
Gabarito: D 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 48 de 129 
QUESTÃO 72 VUNESP - 2014 - Câmara Municipal de São José dos Campos - SP - 
Analista Legislativo - Analista de Sistemas 
Considere o seguinte diagrama de classes da UML: 
 
Nesse diagrama de classes, está representada uma associação do tipo 
 a) reflexiva. b) indireta. c) imperativa. d) derivada. e) adaptativa. 
Comentários: A associação reflexiva acontece quando um objeto de uma classe possui 
como atributo um objeto da sua própria classe. Ela é representada por uma linha que 
parte e volta para a mesma classe, como representado no diagrama da figura. 
 Observe que os objetos da classe possuem dois papeis no relacionamento: 
síndico e morador. Além disso, por meio das restrições de multiplicidade, podemos 
inferir que cada morador possui um síndico e que cada síndico possui 0 (todos os 
apartamentos do prédio estão desocupados) ou mais moradores. 
Gabarito: A 
QUESTÃO 73 VUNESP - 2013 - CTA - Tecnologista Pleno - Computação 
Na UML 2.0, a forma para se indicar uma associação derivada é 
 a) @<nome da associação> 
 b) /<nome da associação> 
 c) $<nome da associação> 
 d) #<nome da associação> 
 e) &<nome da associação> 
Comentários: O conceito de associação derivada está relacionado à existência de uma 
propriedade da classe que é obtida a partir de outras propriedades. Como exemplo, 
podemos citar uma propriedade “total de livros vendidos”, que seria calculada a partir 
do número de livros existentes nos objetos pertencentes a uma classe Nota Fiscal. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 49 de 129 
 Você pode representar essa associação como uma linha entre a classe a qual 
pertence a propriedade calculada e a classe que possui as informações para o cálculo 
da propriedade em questão. 
Outra forma, seria tal como nosso gabarito (alternativa B) nos diz: se coloca um 
“/” antes do nome da associação (nesse caso, a associação seria representada como 
um atributo da classe a qual a propriedade pertence. 
Gabarito: B 
3.5 GENERALIZAÇÃO 
 
QUESTÃO 74 CONSULPLAN - 2012 - TSE - Programador de computador 
A UML define diversos tipos de relacionamentos no modelo de classe. Um desses 
tipos pode ser entendido pelo exemplo a seguir. Observe. 
• Sejam duas classes, ALFA e BETA. 
• Quando BETA herda de ALFA, os atributos e o comportamento de ALFA valem 
também para BETA. 
• Quando for necessário, BETA pode redefinir o comportamento de ALFA. 
• Além disso, BETA participa em qualquer relacionamento no qual ALFA participa. 
O caso exemplificado é conhecido como relacionamento de 
 a) extensão. b) associação. c) comunicação. d) generalização. 
Comentários: Além da associação, existem outros relacionamentos (ou associações 
especializadas) possíveis entre classes. A generalização indica a existência de um 
relacionamento "é um" entre classes e subclasses. 
Por exemplo, a classe cliente pode ter duas subclasses: pessoa física e pessoa 
jurídica. Ambas as subclasses possuem atributos e operações em comum, 
representadas na classe (ou superclasse) cliente. 
Além disso, os atributos e operações específicos das subclasses pessoa física e 
pessoa jurídica são únicos para cada classe. Assim, nesse mesmo exemplo, a subclasse 
pessoa física teria o atributo CPF, enquanto que a subclasse pessoa jurídica possuiria 
o atributo CNPJ. 
 Uma generalização é representada no diagrama de classes da UML por meio 
de um triângulo do lado da superclasse: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 50 de 129 
 
 Podem ser utilizadas restrições pré-definidas para indicar condições 
semânticas no relacionamento entre a superclasse e as subclasses. São elas: 
1. Sobreposição: subclasses podem ocorrer simultaneamente. Exemplo: Um carro 
anfíbio pode pertencer simultaneamente as subclasses Terrestre e Marinho da 
superclasse MeiodeTransporte. Indica herança múltipla, pois o objeto carro anfíbio 
teria que estender as classes Terrestre e Marinho. 
2. Disjunção: É o mais comum, um objeto pertence apenas a uma subclasse. É o caso 
da generalização cliente / pessoa física ou jurídica. 
3. Completo: Todas as subclasses já foram identificadas. Nenhuma nova subclasse 
poderá ser adicionada à hierarquia de classes. 
4. Incompleto: Nem todas as subclasses foram especificadas. Novas subclasses podem 
aparecer. 
 A figura a seguir mostra onde a restrição deve aparecer no diagrama (entre 
chaves do lado de uma linha pontilhada): 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 51 de 129 
 
 Nossa questão fala de generalização, pois nos informa que uma classe BETA 
herda os atributos e métodos de ALFA. 
Gabarito: D 
QUESTÃO 75 IADES - 2011 - PG-DF - Analista Jurídico - Analista de Sistemas 
Assinale a alternativa correta a respeito do seguinte diagrama de classes. 
 
a) Trata-se de um diagrama de colaboração, e representa a interação entre as classes 
Professore Pessoa. 
 b) A classe Professor herda os atributos nome e idade da classe Pessoa. 
 c) A classe Pessoa herda os atributos turma e salário da classe Professor. 
 d) A classe Professor herda os atributos getNome() e setNome() de Pessoa. 
 e) A classe Pessoa herda os atributos setSalario() e getTurma() da classe Professor. 
Comentários: 
Vamos analisar cada alternativa desta questão da banca IADES: 
a) Trata-se de um diagrama de colaboração, e representa a interação entre as classes 
Professor e Pessoa. Na verdade, é um diagrama de classes. 
 b) A classe Professor herda os atributos nome e idade da classe Pessoa. Essa é a 
resposta. Observe que a setinha aponta de Professor para Pessoa. Ou seja, a setinha 
que representa um relacionamento de herança aponta da subclasse para a 
superclasse. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 52 de 129 
 c) A classe Pessoa herda os atributos turma e salário da classe Professor. A 
superclasse não vai herdar nada da subclasse. 
 d) A classe Professor herda os atributos getNome() e setNome() de Pessoa. getNome 
e setNome são métodos. Não são atributos. 
 e) A classe Pessoa herda os atributos setSalario() e getTurma() da classe Professor. 
Métodos e não atributos... 
Gabarito: B 
QUESTÃO 76 VUNESP - 2013 - CTA - Tecnologista Pleno - Computação 
Considere o seguinte diagrama de classes da UML 2.0 
 
O texto “tipo de produto” é chamado de um(a) 
a) estado. b) interface. c) acoplamento. d) discriminador. e) compartimento. 
Comentários: Nossa Vunesp chama nossa restrição pelo seu nome menos conhecido: 
discriminador. Um detalhe é que temos um problema na notação utilizada pela 
Vunesp, pois a herança é representada por uma seta vazia e não uma cheia, como está 
no desenho. 
Gabarito: D 
QUESTÃO 77 FJG - RIO - 2011 - TCM-RJ - Analista de Informação 
Nos projetos orientados a objetos, as classes de objetos podem ser organizadas em 
uma estrutura de herança que mostra o relacionamento entre classes. A classe de 
objeto mais específica é completamente consistente com a classe-pai, mas inclui 
outras informações. A classe-filho herda os atributos e as operações da classe-pai. 
Nesse contexto, observe-se a seguinte figura. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 53 de 129 
 
Na UML, conforme indicado na figura acima, a seta que aponta de uma entidade de 
classe para a classe-pai, indica a: 
 a) coesão b) elicitação c) integração d) globalização e) generalização 
Comentários: Temos setas vazadas que apontam de classes mais específicas para 
classes mais genéricas. Estamos falando da generalização. 
Gabarito: E 
QUESTÃO 78 FJG - RIO - 2011 - TCM-RJ - Analista de Informação 
Na UML 2.2, o diagrama de classes oferece uma notação gráfica para modelar classes 
e seus relacionamentos, descrevendo assim possíveis objetos. Na elaboração desse 
diagrama, o recurso da generalização possui três finalidades, que são: 
a) gerar código de forma automática, normalizar os identificadores e dar suporte ao 
polimorfismo 
 b) estruturar a descrição de objetos, gerar código de forma automática e normalizar 
os identificadores 
 c) dar suporte ao polimorfismo, estruturar a descrição de objetos e permitir a 
reutilização de código 
 d) normalizar os identificadores, permitir a reutilização de código e estruturar a 
descrição de objetos 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 54 de 129 
 e) as organizações podem escolher os processos a serem aprimorados, conforme 
suas próprias necessidades e requisitos 
Comentários: A generalização: permite que aconteça o polimorfismo (que, em uma de 
suas formas, implica na sobrescrita do método de uma superclasse pela sua subclasse); 
estrutura a descrição de objetos (com parte de seus atributos e métodos presentes ao 
longo de uma hierarquia de classes); e aceita a reutilização de código (o código 
herdado por uma subclasse não precisa ser escrito novamente). Nosso gabarito é a 
alternativa C. 
 A questão traz nas outras alternativas algumas finalidades que não estão 
relacionadas com a herança: a normalização de identificadores (?) e a melhoria de 
processos. 
Gabarito: C 
QUESTÃO 79 FCC - 2013 - AL-RN - Analista Legislativo - Analista de Sistemas 
Os diagramas de classes ilustram atributos e operações de uma classe. Um diagrama 
de classes em notação UML utiliza 
 a) retângulos para representar as classes e uma seta vazia apontando para a 
superclasse para representar herança. 
 b) triângulos para representar associações e retângulos para as entidades. 
 c) elipses para representar os atributos e retângulos para as entidades. 
 d) retângulos para representar atributos e elipses para representar atributos. 
 e) setas para representar a direção e retângulos para representar as associações. 
Comentários: As classes são representadas no diagrama de classes por retângulos e a 
herança por meio de uma linha com uma seta vazada (ou vazia) do lado da superclasse. 
Gabarito: A 
QUESTÃO 80 FCC - 2011 - TRT - 24ª REGIÃO (MS) - Analista Judiciário - Tecnologia da 
Informação 
Na UML, o relacionamento entre uma superclasse e suas subclasses é denominado 
 a) generalização. 
 b) decomposição. 
 c) agregação composta. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 55 de 129 
 d) agregação não composta. 
 e) dependência. 
Comentários: FCC apresentando uma criança com um doce para o concurseiro. Tira o 
doce da criança, meu querido! 
O relacionamento entre uma superclasse e uma subclasse recebe o nome de 
generalização! 
Gabarito: A 
QUESTÃO 81 CEFET-MG - 2014 - CEFET-MG - Técnico de Tecnologia da Informação 
No processo de utilização da UML (Unified Modeling Language) constata-se que 
 a) atributos são divididos em estruturais e comportamentais. 
 b) métodos são uma estrutura de dados que representam uma classe. 
 c) heranças relacionam as instâncias com suas respectivas classes e métodos. 
 d) polimorfismo das operações é uma consequência da relação de herança entre 
métodos. 
 e) classe é uma estrutura que abstrai um conjunto de objetos com características 
similares. 
Comentários: Vamos dar uma olhada em cada alternativa: 
a) atributos são divididos em estruturais e comportamentais. Na verdade, são os 
diagramas da UML que possuem essa divisão. 
 b) métodos são uma estrutura de dados que representam uma classe. Vixe! É não! 
Temos que uma classe pode possuir métodos, que refletem comportamentos. Os 
atributos é que estão mais próximos das estruturas de dados da programação 
estruturada. 
 c) heranças relacionam as instâncias com suas respectivas classes e métodos. 
Errado, aprendemos que a herança é um relacionamento entre classes e subclasses. 
 d) polimorfismo das operações é uma consequência da relação de herança entre 
métodos. Quando falamos de polimorfismo, no contexto de operações, podemos 
estar nos referindo à sobrescrita de métodos, que tem relação com a herança de 
métodos, e a sobrecarga de métodos (quando métodos de uma mesma classe 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 56 de 129 
possuem o mesmo nome, mas assinatura e comportamento ligeiramente diferentes), 
que não tem nenhuma relação com a herança. Alternativa Errada. 
 e) classe é uma estrutura que abstrai um conjunto de objetos com características 
similares. Aqui temos um conceito válido de classe: um conjunto de objetos comcaracterísticas similares. Alternativa Correta. 
Gabarito: E 
QUESTÃO 82 VUNESP - 2011 - TJM-SP - Analista de Sistemas - Judiciário 
Considere o seguinte diagrama de classes, representado conforme a UML. 
 
A partir desse diagrama de classes, pode-se afirmar que 
 a) a classe Veículo é considerada uma subclasse. 
 b) a classe Carga é uma superclasse, e Passeio, uma subclasse. 
 c) a classe Veículo terá mais atributos do que as classes Carga e Passeio. 
 d) a classe Veículo herda os recursos das classes Carga e Passeio. 
 e) as classes Carga e Passeio herdam os recursos da classe Veículo. 
Comentários: Rapaz, quando olho para esse diagrama, percebo que temos uma 
superclasse Veículo e duas subclasses Carga e Passeio, que vão herdar os atributos e 
métodos da classe Veículo (Gabarito E). 
 Com relação à alternativa C, vale salientar que não podemos julgar os 
quantitativos de atributos de uma superclasse em relação a uma subclasse 
simplesmente olhando um diagrama de classes com uma relação de herança. 
Antes, precisariamos ter o segundo compartimento de cada classe da 
hierarquia detalhado para chegar a uma conclusão acerca de qual classe teria mais 
atributos. 
Gabarito: E 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 57 de 129 
QUESTÃO 83 VUNESP - 2014 - DESENVOLVESP - Analista de Sistemas 
Considere o seguinte diagrama de classes da UML 2.0: 
 
Com base nesse diagrama, é correto afirmar que 
 a) a classe A é um tipo especial das classes B, C e D. 
 b) as classes A, B, C e D são abstratas. 
 c) as classes B, C e D são subclasses da classe A. 
 d) está representada uma agregação. 
 e) está representada uma composição. 
Comentários: Aqui eu vejo 03 relacionamentos de generalização com uma superclasse 
A e 03 subclasses B, C e D. 
Gabarito: C 
3.6 DEPENDÊNCIA 
 
QUESTÃO 84 VUNESP - 2011 - TJM-SP - Analista de Sistemas - Judiciário 
Considere o seguinte diagrama de classes da UML. 
 
O diagrama representa uma 
 a) dependência. 
 b) especialização. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 58 de 129 
 c) generalização. 
 d) restrição temporal. 
 e) sequência. 
Comentários: Uma relação de dependência implica que ao se realizar mudanças na 
definição de uma classe, mudanças irão ocorrer na outra classe (dependente). Razões 
para existência de dependência são várias: uma classe usa o método de outra, uma 
classe tem um atributo que pertence a outra classe, uma classe menciona a outra 
como argumento ou retorno de um método. Se uma classe mudar sua interface, as 
classes dependentes podem deixar de funcionar. 
O relacionamento de dependência é representado por meio de uma linha 
tracejada, seguida de uma flecha aberta apontado para o lado da classe dependente: 
Gabarito: A 
QUESTÃO 85 FUNCAB - 2014 - MDA - Analista de Sistemas 
Nos diagramas de classe da UML, os relacionamentos de dependência são 
representados por: 
 a) losangos preenchidos 
 b) linhas tracejadas com flecha na extremidade. 
 c) linha cheia com flecha na extremidade. 
 d) losangos em branco não preenchidos 
 e) triângulos não preenchidos. 
Comentários: O relacionamento de dependência é representado por uma linha 
tracejada seguida de uma flexa aberta em sua extremidade. 
Gabarito: B 
3.7 COMPOSIÇÃO E AGREGAÇÃO 
 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 59 de 129 
QUESTÃO 86 Quadrix - 2014 - COBRA Tecnologia S-A (BB) - Analista de Operações - 
Negócios 
Observe a simbologia utilizada em UML para fazer a ligação entre a classe A e B. 
 
Este tipo de ligação é conhecido como: 
 a) Dependência. b) Composição. c) Generalização. d) Abstração. e) Agregação. 
Comentários: A agregação é um tipo especial de associação utilizada para apresentar 
que um objeto é composto de outro. Ou seja, temos uma relação todo/parte, como 
por exemplo: um pedido é composto por itens de pedido (coloquei o mesmo exemplo 
de dependência porque não existe um diagrama certo, tudo depende da interpretação 
semântica que você der da realidade). 
A agregação pode ser simples (ou regular) ou ser uma composição. 
 A composição representa um vínculo forte entre duas classes, ou seja, uma 
classe FILHA só faz sentido se uma classe PAI existir. Se um objeto da classe PAI for 
apagado, o objeto da classe FILHA relacionado automaticamente deixará de existir. 
A notação UML para esse tipo de relacionamento é uma linha com um losango 
cheio posicionado na classe pai. Veja a imagem a seguir. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 60 de 129 
 
 A agregação regular representa um vínculo fraco entre duas classes, ou seja, 
um objeto da classe FILHA faz sentido mesmo se um objeto da classe PAI deixar de 
existir. Se o objeto da classe PAI for apagado, o objeto da classe FILHA continuará 
existindo sem problemas. 
A notação UML para esse tipo de relacionamento é uma linha com um losango 
vazio posicionado na classe pai. Observe a figura abaixo. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 61 de 129 
 
Gabarito: B 
QUESTÃO 87 CESGRANRIO - 2011 - FINEP - Analista - Desenvolvimento de Sistemas 
 
Sobre o diagrama apresentado, considere as afirmativas abaixo. 
I - Uma instância de uma nota fiscal pode não conter item algum. 
II - A relação entre as classes NotaFiscal e Item é uma composição. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 62 de 129 
III - Um item pode pertencer a mais de uma nota fiscal. 
IV - A operação getFaturamento( ) é estática. 
Estão corretas APENAS as afirmativas 
 a) I e III 
 b) I e IV 
 c) II e IV 
 d) III e IV 
 e) II, III e IV 
Comentários: Bem, vamos agora analisar cada item de nossa questão: 
I - Uma instância de uma nota fiscal pode não conter item algum. Veja no diagrama 
que a classe Nota Fiscal tem um relacionamento de composição com a classe Item. 
Veja também que a restrição de multiplicidade no lado de Item é 1..* (ou de um até 
muitos). Assim, sempre que houver uma nota fiscal, teremos um ou mais itens. Logo, 
não teremos notas fiscais sem itens. Afirmativa errada. 
II - A relação entre as classes NotaFiscal e Item é uma composição. Afirmativa correta. 
O losango preto (ou cheio) denota uma composição. 
III - Um item pode pertencer a mais de uma nota fiscal. Nada disso. Não temos 
nenhuma restrição explicita de multiplicidade no lado da nota fiscal. No entanto, saiba 
que para relacionamentos de composição, a classe "todo" tem obrigatoriamente 
multiplicidade 1. Então, cada item pertence a uma nota fiscal apenas. Afirmativa 
errada. 
IV - A operação getFaturamento( ) é estática. Um método estático (método que pode 
ser chamado sem a necessidade de se existir uma instância de sua classe) é 
representado em um diagrama de classe escrevendo-se o nome sublinhado. Veja no 
diagrama que getFaturamento( ) está sublinhado. Afirmativa correta. 
Gabarito: C 
QUESTÃO 88 COPESE - 2012 - DPE-TO - Analista em Gestão Especializado – Tecnologia 
da Informação 
Analise o diagrama UML a seguir: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 63 de 129 
 
Em relação ao modelo conceitual acima, pode-se dizer que: 
I. A associação X é obrigatória para qualquer instância de ClasseD, mas opcional para 
as instânciasde ClasseE; 
II. A associação Z é obrigatória para qualquer instância de ClasseB e de ClasseD; 
III. a1 e b1 são atributos de uma instância de ClasseA; 
IV. ClasseB e ClasseE são associadas por composição. 
Está CORRETO o que se afirma em: 
(A) I, II e III. (B) I e III. (C) I e IV. (D) II, III e IV. 
Comentários: Vamos lá: 
I. A associação X é obrigatória para qualquer instância de ClasseD, mas opcional para 
as instâncias de ClasseE: As restrições de multiplicidade nesse relacionamento 
indicam que, para cada instância da ClasseE, teremos de 0 até muitas (*) instâncias da 
ClasseD. 
Além disso, para cada instância da ClasseD, teremos uma associação com uma 
instância da ClasseE. Assim, nossa afirmativa está correta. 
II. A associação Z é obrigatória para qualquer instância de ClasseB e de ClasseD. Nada 
disso, veja que temos restrições de multiplicidade do tipo 0..1, o que significa que 
podemos ter instâncias de uma das classes não relacionada com instância da outra 
classe. Assim, teríamos instâncias fora de qualquer associação Z. 
III. a1 e b1 são atributos de uma instância de ClasseA: Veja que entre a ClasseA e a 
ClasseB temos um relacionamento de herança, onde a ClasseA é uma subclasse da 
ClasseB. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 64 de 129 
Como o atributo a1 está dentro da ClasseA e o atributo b1 é herdado pela 
ClasseA, haja vista que a ClasseA é subclasse de ClasseB, a afirmativa está correta. 
IV. Classe B e Classe E são associadas por composição. É não! É um losango vazado... 
é só uma agregação. 
Gabarito: B 
QUESTÃO 89 FCC - 2012 - TRT - 6ª Região (PE) - Analista Judiciário - Tecnologia da 
Informação 
Considere o seguinte diagrama em UML: 
 
Uma representação válida deste diagrama é obtida substituindo-se as classes 
representadas pelas letras A, B, C, D e E, respectivamente, por 
 a) Desenho, Cor, Tipo, Azul, Retângulo. 
 b) Computador, Notebook, Desktop, Impressora, Monitor. 
 c) Pedido, Compra, Venda, Item, Cliente. 
 d) Livro, Índice, Capa, Romance, Aventura. 
 e) Internet, Navegadores, Correio Eletrônico, Firefox, Outlook. 
Comentários: Nossa questão solicitou ao concurseiro o seguinte raciocínio: 
“Um Pedido possui duas subclasses: Compra e Venda. Uma Compra tem um Item e um 
Item não existe sem a Compra. Uma Venda tem um Cliente.” (Gabarito C) 
 Se você substituir as classes do texto acima por qualquer uma das outras 
alternativas, verá que as sentenças perdem o sentido semântico. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 65 de 129 
Gabarito: C 
QUESTÃO 90 CESGRANRIO - 2014 - Banco da Amazônia - Técnico Científico - Analise 
de Sistemas 
Considere as seguintes regras, que devem ser observadas por um sistema de 
informação: 
1. Um carnê possui muitos boletos de pagamento. 
2. Cada boleto pode ter sido pago ou não. Caso ele tenha sido pago, é necessário que 
se conheça o banco em que o pagamento foi realizado. 
3. Um boleto é parte integrante de apenas um carnê, que, por sua vez, é composto 
por ao menos um boleto. 
4. Caso um carnê seja excluído do sistema, todos os boletos que o compõem também 
deverão ser excluídos. 
Qual diagrama de classes UML representa adequadamente as regras descritas 
acima? 
a) 
 
b) 
 
c) 
 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 66 de 129 
d) 
 
e) 
 
Comentários: A regra 4 é a chave para resposta dessa questão: 
4. Caso um carnê seja excluído do sistema, todos os boletos que o compõem também 
deverão ser excluídos. 
 Veja que só conseguiríamos representar essa regra por meio da UML se 
utilizarmos uma composição entre o carnê e os boletos. Com isso, chegamos ao 
gabarito: C. 
 Com relação ao relacionamento entre o boleto e o banco, temos que um boleto 
só será relacionado com um banco, caso o boleto tenha sido pago (Regra 2). Com isso, 
podemos ter uma associação entre boleto e banco, com um boleto sem um banco. 
Assim, a multiplicidade do lado do banco tem que ser 0..1. 
Gabarito: C 
QUESTÃO 91 FUNCAB - 2014 - PRODAM-AM - Programador - Desenvolvedor 
A UML possui duas formas de relacionamento parte-todo, uma geral, que relaciona 
uma classe de montagem a uma das classes das partes constituintes e outra, mais 
restritiva, em que uma parte constituinte pode pertencer a no máximo uma 
montagem e, quando uma parte constituinte tiver sido atribuída a uma montagem, 
terá um tempo de vida coincidente com a montagem. 
Essas formas de relacionamento parte-todo são denominadas, respectivamente. 
 a) composição e fragmentação. 
 b) fragmentação e otimização. 
 c) otimização e globalização. 
 d) globalização e agregação. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 67 de 129 
 e) agregação e composição. 
Comentários: A primeira forma se refere à agregação e a segunda forma, mais 
restritiva, onde o todo tem multiplicidade 1 e a parte termina quando o todo termina, 
é a composição. 
Gabarito: E 
QUESTÃO 92 FCC - 2014 - SABESP Analista de Gestão 01 (Sistemas) 
Considere a imagem abaixo: 
 
Na UML 2.0, o conceito de modelagem de classes que pode ser observado na imagem 
é 
(A) Herança. 
(B) Propagação. 
(C) Agregação. 
(D) Composição. 
(E) Associação Simples. 
Comentários: Temos um monte de losangos vazados, logo, estamos falando da 
representação gráfica da agregação. 
Gabarito: C 
QUESTÃO 93 VUNESP - 2011 - TJM-SP - Analista de Sistemas - Judiciário 
Considere duas classes S e T de um diagrama de classes da orientação a objetos feitos 
por meio da UML. Há uma associação de composição entre as classes S e T. Assinale 
a alternativa que representa esse tipo de associação entre S e T (abstraindo-se as 
cardinalidades). 
 a) 
 b) 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 68 de 129 
 c) 
 d) 
 e) 
Comentários: A composição é representada graficamente por meio de um losango 
cheio. As demais opções são fruto da criatividade do examinador. 
Gabarito: D 
QUESTÃO 94 FEPESE - 2012 - FATMA - Analista Técnico de Gestão Ambiental - Classe 
IV - Analista de Informática 
Analise o diagrama de classe da UML abaixo: 
 
Assinale a alternativa que defne corretamente qual o relacionamento entre as 
classes da figura acima: 
 a) Composição b) Agregação c) Generalização d) Associação e) Dependência. 
Comentários: Um losango preto (ou cheio) é a representação de uma composição. 
Gabarito: A 
QUESTÃO 95 CS - UFG - 2014 - UEAP - Analista de Tecnologia da Informação - 
Desenvolvimento de Sistemas 
Considere o diagrama de classes UML a seguir. 
 
Como modelado no diagrama UML, o relacionamento entre o objeto 
CatálogoDeProduto e o objeto EspecificaçãoDoProduto significa que 
 a) a parte é membro de zero ou mais objetos compostos. 
 b) a parte deve estar sempre ligada a algum objeto composto. 
 c) o composto deve ser removido quando as partes forem removidas. 
 d) o composto só existe enquanto as partes existirem. 
Comentários: Vamos analisar cada alternativa: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 69 de 129 
a) a parte é membro de zero ou mais objetos compostos. Quando a alternativa fala 
em objeto composto, está se referindo ao todo, que, necessariamente, terá 
multiplicidade 1 e não 0 .. *. Alternativa errada. 
 b) a partedeve estar sempre ligada a algum objeto composto. Aqui temos uma 
alternativa correta, pois a multiplicidade do todo é 1. 
 c) o composto deve ser removido quando as partes forem removidas. É o contrário, 
as partes são removidas quando o todo deixar de existir. 
 d) o composto só existe enquanto as partes existirem. É o contrário, as partes só 
existem enquanto o todo existir. 
Gabarito: B 
QUESTÃO 96 MPE-RS - 2012 - MPE-RS - Técnico Superior de Informática 
Há um tipo de associação em UML que pode ser usado para representar 
relacionamentos todo-parte com uma semântica particular, com algumas 
implicações, tais como: (i) uma instância da parte pertence a apenas uma instância 
do todo de cada vez; (ii) a parte deve sempre pertencer a um todo; e (iii) o todo é 
responsável pela criação e remoção de suas partes – seja por si mesmo 
criando/removendo as partes, ou pela colaboração com outros objetos. 
A notação UML para este tipo de associação é um losango cheio em uma linha de 
associação, posicionado na extremidade da linha em que está o todo. 
O nome do tipo de associação descrito acima é 
 a) agregação. b) generalização. c) especialização. d) composição. e) instanciação. 
Comentários: Composição fácil! 
Gabarito: D 
QUESTÃO 97 MPE-RS - 2012 - MPE-RS - Técnico Superior de Informática 
Considere as seguintes afirmações sobre UML 
I. UML é um acrônimo para Unified Modeling Language; portanto, UML é uma 
linguagem, uma notação, e não uma metodologia. 
II. Um diagrama de classes UML é um modelo de classes que mostra o 
relacionamento estático entre elas, incluindo associações, agregações e 
generalizações. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 70 de 129 
III. UML é uma linguagem orientada a objetos baseada numa extensão de XML. 
Quais estão corretas? 
 a) Apenas II. 
 b) Apenas I e II. 
 c) Apenas I e III. 
 d) Apenas II e III. 
 e) I, II e III. 
Comentários: Vamos analisar cada afirmativa: 
I. UML é um acrônimo para Unified Modeling Language; portanto, UML é uma 
linguagem, uma notação, e não uma metodologia. Hehehe Tá certinha! Já 
aprendemos isso né! UML não é um processo de desenvolvimento de software, muito 
menos uma metodologia. É uma notação gráfica, uma linguagem de modelagem. 
II. Um diagrama de classes UML é um modelo de classes que mostra o 
relacionamento estático entre elas, incluindo associações, agregações e 
generalizações. Olha nosso diagrama de classes aí! Até agora aprendemos que ele tem 
associações, agregações e generalizações. Afirmativa correta. 
III. UML é uma linguagem orientada a objetos baseada numa extensão de XML. UML 
não é linguagem de programação! Afirmativa errada. 
Gabarito: B 
3.8 INTERFACES 
 
QUESTÃO 98 FUMARC - 2012 - TJ-MG - Técnico Judiciário - Analista de Sistemas 
Em relação aos tipos de relacionamentos da UML, correlacione as colunas a seguir 
considerando a defnição mais adequada: 
 
 
Está CORRETA a seguinte sequência de respostas: 
 a) III, I, IV, II. b) VI, II, I, III. c) II, I, VI, III. d) III, I, II, VI. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 71 de 129 
Comentários: Diagramas de Classe podem conter diversos outros itens além das 
classes: 
1. Interfaces: Uma interface define um comportamento obrigatório que alguma classe 
deve possuir. As interfaces permitem conhecer um determinado elemento, 
escondendo os seus detalhes internos, por exemplo: os detalhes de implementação. 
Uma interface é realizada por uma ou mais classes, as quais prometem implementar 
todos os métodos nela especificados. 
 Ela pode ser representada das seguintes formas (observe que a forma 
expandida nada mais é do que a representação gráfica de uma classe com um 
estereótipo): 
 
O relacionamento entre uma classe e uma interface é chamado de realização, 
sendo representado por uma linha tracejada e uma seta vazia do lado da interface, 
quando a interface é representada em sua forma expandida. 
 Já quando a interface está em sua forma compacta (um círculo), a realização é 
representada por uma linha simples, tal como uma associação. 
2. Enumerações: São uma lista simples de valores. Um exemplo típico é uma 
enumeração para dias da semana. As opções de uma enumeração são chamadas 
Literais de Enumeração. 
3. Pacotes: Pacotes representam um espaço de nomes numa linguagem de 
programação. Num diagrama eles são usados para representar partes de um sistema 
que contém mais de uma classe, talvez centenas de classes. 
 Com relação à questão, temos que: 
- A linha tracejada sem setas pode ser a representação de um relacionamento de 
dependência, quando não se sabe que classe depende de qual classe. 
- A linha tracejada com uma seta vazia é uma realização. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 72 de 129 
- A linha cheia com um losango cheio é uma composição. 
- A linha cheia com um losango vazio é uma agregação. 
Gabarito: A 
QUESTÃO 99 FUNCAB - 2011 - Prefeitura Municipal de Serra/ES - Analista de Sistemas 
Qual das alternativas a seguir contém um diagrama de classes UML 2.0 que 
representa a implementação da interface INTF pela classe CLXP? 
 
Comentários: A realização entre uma classe e uma interface, na sua forma expandida, 
é representada graficamente por uma linha tracejada e uma seta vazada do lado da 
interface (gabarito: A). 
 Com relação às demais alternativas, temos que: 
B e C: Relacionamentos de generalização. 
D: Agregação. 
E: É uma realização, mas a seta está do lado errado. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 73 de 129 
Gabarito: A 
QUESTÃO 100 FUMARC - 2011 - PRODEMGE - Analista de Tecnologia da Informação 
Analise as afirmativas abaixo em relação ao Diagrama de Classes da UML. 
I. É um diagrama comportamental da UML. 
II. Pode representar classes e interfaces. 
III. Pode representar relacionamentos de dependência e generalização. 
Assinale a alternativa VERDADEIRA: 
 a) Apenas as afirmativas I e II estão corretas. 
 b) Apenas as afirmativas I e III estão corretas. 
 c) Apenas as afirmativas II e III estão corretas. 
 d) Todas as afirmativas estão corretas. 
Comentários: O único erro está na afirmativa I, pois o diagrama de classes é estrutural. 
Gabarito: C 
QUESTÃO 101 MB - 2011 - MM - QT - Primeiro Tenente - Informática 
Disciplina: Engenharia de Software 
 
 
Considerando os conceitos da UML, assinale a opção que define, respectivamente, 
os itens (1), (2), (3) e (4) representados no diagrama acima. 
 a) Classe; Realização; Estado; e Associação. 
 b) Classe; Dependência; Interface; e Associação. 
 c) Classe; Dependência; Interface; e Realização. 
 d) Nó; Dependência; Interface; e Realização. 
 e) Nó; Realização; Estado; e Associação. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 74 de 129 
Comentários: Um retângulo é uma classe, uma linha tracejada com uma seta aberta é 
uma dependência, um círculo é uma interface em sua forma compacta e uma linha 
simples ligando uma interface em sua forma compacta a uma classe é uma realização. 
Gabarito: C 
QUESTÃO 102 VUNESP - 2013 - MPE/ES - Agente Especializado - Analista de Sistemas 
Na UML 2.0, supondo que a classe Escritório tenha uma interface fornecida ‘X’, sua 
notação é: 
 
Comentários: Observe que a alternativa A apresenta X como uma interface na sua 
forma compacta, logo precisamos apenas de umalinha simples ligando a interface X à 
classe Escritório. 
Gabarito: A 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 75 de 129 
3.9 CLASSES ABSTRATAS 
 
QUESTÃO 103 FCC - 2011 - INFRAERO - Analista de Sistemas - Arquitetura de 
Software (adaptada) 
Uma classe é escrita em itálico na UML para especificar que tal classe 
 a) é concreta. 
 b) pode não apresentar instâncias diretas. 
 c) herda características de mais de uma classe mãe. 
 d) herda características de apenas uma classe mãe. 
 e) se relaciona com ela mesma. 
Comentários: Vamos falar um pouco das classes abstratas, que são aquelas que não 
podem ser instanciadas. São instanciadas apenas as classes filhas concretas dentro de 
uma hierarquia de classes encabeçada por uma classe abstrata. 
 Na UML, uma classe abstrata é representada com o seu nome em itálico. No 
exemplo a seguir, ContaBancária é uma classe abstrata. 
 
Vamos agora analisar cada alternativa da questão: 
a) é concreta. Uma classe com o nome em itálico não é concreta, antes, é abstrata. 
 b) pode não apresentar instâncias diretas. Rapaz... esse é o gabarito, mas ele é meio 
confuso. 
O correto não seria dizer que uma classe abstrata “pode” não apresentar 
instâncias diretas, uma vez que a utilização do verbo poder abre espaço para a 
possibilidade de existir alguma instância direta. Para evitar esse tipo de problema, o 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 76 de 129 
examinador deveria ter sido mais incisivo, com a ajuda, por exemplo, de um 
“obrigatoriamente” no corpo da alternativa. 
Se fosse CESPE eu marcaria errado fácil. Mas, sendo a questão a menos errada, 
ela foi considerada sim o gabarito definitivo e quem entrou com recurso ficou só no 
choro e na vela. 
 c) herda características de mais de uma classe mãe. Uma classe com o nome em 
itálico é uma classe abstrata. Não significa que estamos no meio de uma herança 
múltipla. 
 d) herda características de apenas uma classe mãe. Nem que estamos no meio de 
uma herança simples. 
 e) se relaciona com ela mesma. Uma classe com o nome em itálico não é uma classe 
hermafrodita. :D Para representar uma classe que se relaciona com ela mesma, 
podemos usar uma associação reflexiva. 
Gabarito: B 
QUESTÃO 104 FCC - 2012 - TRT - 11ª Região (AM) - Analista Judiciário - Tecnologia da 
Informação 
Sobre o diagrama de classe da UML é correto afirmar: 
 a) Quando se utiliza diagramas de classe deve-se focar exclusivamente na estrutura 
do software e ignorar seu comportamento. 
 b) Dependência com classes não são adequadas para ilustrar um relacionamento 
transitório, como quando um objeto é passado para outro como parâmetro. 
 c) A UML permite representar dependência apenas de classes. Utilizam-se 
dependências quando se deseja mostrar que as mudanças em uma classe não afetam 
a outra classe. 
 d) Suporta quatro abreviações de visibilidade: + (público), - (privado), ~ (pacote) e # 
(protegido). 
 e) Uma classe abstrata é uma classe que pode ser instanciada diretamente. A 
maneira mais comum de identificar uma classe abstrata na UML é colocar o nome 
em negrito. 
Comentários: Vamos analisar cada alternativa: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 77 de 129 
a) Quando se utiliza diagramas de classe deve-se focar exclusivamente na estrutura 
do software e ignorar seu comportamento. É verdade que o diagrama de classes é um 
diagrama estrutural, mas dizer que, na construção desse diagrama, deve-se ignorar o 
comportamento do sistema é uma mentira. 
Afinal de contas, nós identificamos no diagrama os métodos das classes e os 
métodos refletem o comportamento das classes. Alternativa Errada. 
 b) Dependência com classes não são adequadas para ilustrar um relacionamento 
transitório, como quando um objeto é passado para outro como parâmetro. Errado! 
Vimos que essa é uma das possibilidades de se utilizar o relacionamento de 
dependência entre duas classes. 
 c) A UML permite representar dependência apenas de classes. Utilizam-se 
dependências quando se deseja mostrar que as mudanças em uma classe não afetam 
a outra classe. Podemos usar o relacionamento de dependência fora do diagrama de 
classes, com outros elementos da UML, o que deixa a alternativa errada. Além disso, 
na segunda parte da alternativa, também temos um erro, porque o relacionamento de 
dependência é utilizado para demonstrar que a mudança em uma classe implica na 
mudança da outra classe relacionada. 
 d) Suporta quatro abreviações de visibilidade: + (público), - (privado), ~ (pacote) e # 
(protegido). Opa! Gabarito! 
 e) Uma classe abstrata é uma classe que pode ser instanciada diretamente. A 
maneira mais comum de identificar uma classe abstrata na UML é colocar o nome 
em negrito. As classes abstratas não podem ser instanciadas diretamente e são 
representadas no diagrama de classes com o nome em itálico. 
Gabarito: D 
QUESTÃO 105 FCC - 2013 - TRT - 9ª REGIÃO (PR) - Analista Judiciário - Tecnologia da 
Informação 
O diagrama de classes da UML descreve os tipos de objetos presentes no sistema e 
os vários tipos de relacionamentos estáticos existentes entre eles. Mostram também 
as propriedades e as operações de uma classe e as restrições que se aplicam à 
maneira como os objetos estão conectados. Em relação aos termos utilizados no 
desenho do diagrama de classes, é correto afirmar: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 78 de 129 
 a) Agregação é uma forma de associação em que um objeto agregado é composto 
de partes constituintes. O agregado é semanticamente um objeto estendido, tratado 
como uma unidade em muitas operações, embora fisicamente ele seja composto por 
vários objetos menores. Por exemplo, um carro consiste em rodas, motor, lataria 
etc. Carro para motor é uma agregação. 
 b) As classes abstratas permitem definir métodos em um local para serem usadas 
por várias subclasses. Todos os métodos em uma classe abstrata devem ter corpo 
(não somente a assinatura), mesmo aqueles que serão implementados pelas 
subclasses. 
 c) Multiplicidade é uma restrição sobre a cardinalidade de um conjunto. Ela se aplica 
a associações, porém, não se aplica a atributos. A multiplicidade para uma 
associação restringe o número de objetos relacionados a determinado objeto. 
 d) A herança múltipla permite que uma superclasse tenha mais de uma subclasse e 
que essas subclasses herdem todas as características da superclasse. As subclasses, 
por sua vez, não podem estar associadas a mais de uma superclasse. 
 e) Composição é uma forma de associação em que uma parte constituinte pode 
pertencer a várias classes de montagem. No diagrama de classes a notação para a 
composição é um pequeno losango vazio ao lado da classe de montagem. 
Comentários: Vamos analisar cada alternativa: 
a) Agregação é uma forma de associação em que um objeto agregado é composto de 
partes constituintes. O agregado é semanticamente um objeto estendido, tratado 
como uma unidade em muitas operações, embora fisicamente ele seja composto por 
vários objetos menores. Por exemplo, um carro consiste em rodas, motor, lataria 
etc. Carro para motor é uma agregação. Tudo certinho! Achei nenhum erro! Gabarito! 
 b) As classes abstratas permitem definir métodos em um local para serem usadas 
por várias subclasses. Todos os métodos em uma classe abstrata devem ter corpo 
(não somente a assinatura), mesmo aqueles que serão implementados pelas 
subclasses.Isso aqui tá errado. A classe abstrata poderá ter métodos concretos e 
métodos abstratos. Os métodos concretos são implementados na classe abstrata, 
sendo herdados normalmente pelas suas subclasses. Já os métodos abstratos não têm 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 79 de 129 
corpo e as subclasses concretas da classe abstrata devem, obrigatoriamente, possuir 
o código de cada método abstrato. Alternativa Errada. 
 c) Multiplicidade é uma restrição sobre a cardinalidade de um conjunto. Ela se aplica 
a associações, porém, não se aplica a atributos. A multiplicidade para uma 
associação restringe o número de objetos relacionados a determinado objeto. Os 
atributos, uma vez que são propriedades de uma classe, assim como as associações, 
podem ter sua cardinalidade explicitada no diagrama de classes. 
 d) A herança múltipla permite que uma superclasse tenha mais de uma subclasse e 
que essas subclasses herdem todas as características da superclasse. As subclasses, 
por sua vez, não podem estar associadas a mais de uma superclasse. Uma superclasse 
com mais de uma subclasse é a herança simples. Uma subclasse com mais de uma 
superclasse é que é a herança múltipla. 
 e) Composição é uma forma de associação em que uma parte constituinte pode 
pertencer a várias classes de montagem. No diagrama de classes a notação para a 
composição é um pequeno losango vazio ao lado da classe de montagem. A 
representação gráfica da composição é uma linha simples com um losango cheio do 
lado da classe todo. 
Gabarito: A 
QUESTÃO 106 FCC - 2013 - DPE-SP - Programador de computador 
Um diagrama de classes descreve os tipos de objetos presentes no sistema e os 
vários tipos de relacionamentos estáticos existentes entre eles. Com relação aos 
conceitos da UML relacionados às classes do diagrama de classes é correto afirmar 
que 
 a) um estereótipo deve ser usado ao lado do nome de uma classe para identificá-la 
sem ambiguidades como um tipo específico de classe. Uma classe estereotipada 
deve ter seu nome escrito em itálico. 
 b) o nome de um método estático deve ser colocado em itálico e de um método 
abstrato deve ser escrito sublinhado no compartimento de operações do diagrama 
de classes. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 80 de 129 
 c) uma classe pode implementar apenas uma interface. Essa relação é conhecida 
como realização e é mostrada como uma linha tracejada com um triângulo na 
extremidade que toca a classe. 
 d) uma associação unidirecional é representada por uma linha ligando duas classes 
com um triângulo vazio na extremidade de um dos lados. Significa que um objeto de 
uma classe (lado sem o triângulo) pode chamar os métodos na classe do lado da linha 
com o triângulo. 
 e) é possível rotular atributos e operações no diagrama de classes com os 
indicadores de visibilidade + (público), - (privado), ~ (pacote) e # (protegido). 
Comentários: Vamos analisar cada alternativa: 
a) um estereótipo deve ser usado ao lado do nome de uma classe para identificá-la 
sem ambiguidades como um tipo específico de classe. Uma classe estereotipada 
deve ter seu nome escrito em itálico. São as classes abstratas que são representadas 
em itálico. A classe estereotipada tem o nome do estereótipo entre << >>. Alternativa 
errada. 
 b) o nome de um método estático deve ser colocado em itálico e de um método 
abstrato deve ser escrito sublinhado no compartimento de operações do diagrama 
de classes. Um método estático realmente é escrito sublinhado. Mas, um método 
abstrato é colocado em itálico. Alternativa errada. 
 c) uma classe pode implementar apenas uma interface. Essa relação é conhecida 
como realização e é mostrada como uma linha tracejada com um triângulo na 
extremidade que toca a classe. O Triângulo fica do lado da interface. Alternativa 
errada. 
 d) uma associação unidirecional é representada por uma linha ligando duas classes 
com um triângulo vazio na extremidade de um dos lados. Significa que um objeto de 
uma classe (lado sem o triângulo) pode chamar os métodos na classe do lado da linha 
com o triângulo. É não! A associação indica que uma classe possui um objeto de outra 
classe como atributo. 
 e) é possível rotular atributos e operações no diagrama de classes com os 
indicadores de visibilidade + (público), - (privado), ~ (pacote) e # (protegido). 
Gabaritemos, pois! 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 81 de 129 
Gabarito: E 
QUESTÃO 107 CS - UFG - 2014 - UEAP - Analista de Tecnologia da Informação - 
Desenvolvimento de Sistemas 
Para responder às questões 58 e 59, considere o diagrama de classes UML da figura 
a seguir, relativo a um sistema de caixa eletrônico. 
 
Os marcadores de visibilidade de atributos e de métodos das classes UML da figura 
descrevem, dentre outras coisas, que o 
 a) atributo saldoTotal da classe Conta torna-se visível para as classes Transação e 
CaixaEletrônico. 
 b) atributo usuárioAutenticado da classe CaixaEletrônico é acessível por qualquer 
classe do produto de software. 
 c) método executar( ) da classe abstrata Transação é oculto para as subclasses 
Saque, Depósito e ConsultaSaldo. 
 d) método creditar( ) da classe BDEntidadeBancária pode ser invocado pela classe 
Transação e suas subclasses. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 82 de 129 
Comentários: Vamos analisar cada alternativa: 
a) atributo saldoTotal da classe Conta torna-se visível para as classes Transação e 
CaixaEletrônico. Esse atributo é privado (-), acessível apenas pela própria classe que 
ele pertence. Afirmativa errada. 
 b) atributo usuárioAutenticado da classe CaixaEletrônico é acessível por qualquer 
classe do produto de software. Da mesma forma que a alternativa anterior, tal 
atributo é privado e não pode ser acessado por outra classe que não seja a sua própria. 
Alternativa errada. 
 c) método executar( ) da classe abstrata Transação é oculto para as subclasses 
Saque, Depósito e ConsultaSaldo. Claro que não, pois é um método público. 
Alternativa errada. 
 d) método creditar( ) da classe BDEntidadeBancária pode ser invocado pela classe 
Transação e suas subclasses. Claro, pois é um método público! Gabarito! 
Gabarito: D 
QUESTÃO 108 FCC - 2011 - TRT - 24ª REGIÃO (MS) - Analista Judiciário - Tecnologia 
da Informação 
Na UML, especifica-se que uma classe é abstrata escrevendo seu nome 
 a) só com a inicial em letra maiúscula. 
 b) todo com letras maiúsculas. 
 c) em itálico. 
 d) em negrito. 
 e) grifado. 
Comentários: Uma classe abstrata é representada no diagrama de classes com o seu 
nome em itálico. 
Gabarito: C 
3.10 COLABORAÇÕES 
 
QUESTÃO 109 VUNESP - 2011 - TJM-SP - Analista de Sistemas - Judiciário 
Na modelagem orientada a objetos, há um tipo de elemento chamado de 
Colaboração, que pode ser anexado a um diagrama de classes. A representação UML 
utilizada para a Colaboração é: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 83 de 129 
 a) b) c) d) e) 
Comentários: Deixei aqui pro final 03 coisas que os examinadores garimpam na 
especificação da UML e trazem para a prova com o objetivo de quebrar o concurseiro. 
São elas: as colaborações, as classes template e o relacionamento de refinamento. 
Segundo Jacobson, as colaborações definem interações e são sociedades de 
papéis e outros elementos que funcionam em conjuntopara proporcionar um 
comportamento cooperativo superior à soma de todos os elementos. Uma 
determinada classe poderá participar em várias colaborações. 
Graficamente, as colaborações são representadas como elipses tracejadas, 
geralmente, incluindo somente seu nome. 
Gabarito: C 
QUESTÃO 110 IDECAN - 2013 - BANESTES - Analista de Tecnologia da Informação - 
Desenvolvimento de Sistemas 
Diagrama de classe compartilha as mesmas propriedades dos demais diagramas. Seu 
conteúdo particular o diferencia dos outros diagramas. São itens contidos nos 
diagramas de classes, EXCETO: 
(A) Casos de uso. 
(B) Classes. 
(C) Interfaces. 
(D) Colaborações. 
(E) Relacionamentos de dependência, generalização e associação. 
Comentários: Casos de uso não são representados em um diagrama de classes... 
Gabarito: A 
3.11 CLASSES TEMPLATE 
 
QUESTÃO 111 VUNESP - 2014 - EMPLASA - Analista Administrativo - Tecnologia da 
Informação 
Na UML 2.0, a notação utilizada para representar um template de classe é: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 84 de 129 
a) 
b) 
c) 
d) 
e) 
Comentários: Classe Template: Um template é um modelo de elemento que pode ser 
parametrizado. Em linguagens como C++ e Ada, é possível escrever classes template, 
que definem uma família de classes (também é possível escrever funções template 
para família de funções). 
Um template possui espaços vazios (slots) que podem ser usados para classes, 
objetos e valores e esses slots servem como parâmetros do template. 
A instanciação envolve a vinculação desses parâmetros formais do template a 
valores reais. No caso de uma classe template, o resultado é uma classe concreta, a 
qual pode ser empregada da mesma forma que outras classes comuns.... 
Uma classe template pode ser representada como qualquer outra classe, desde 
que inclua uma caixa tracejada adicional no canto superior direito do ícone da classe, 
listando os parâmetros para o template. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 85 de 129 
Gabarito: E 
3.12 REFINAMENTO 
 
QUESTÃO 112 FEPESE - 2014 - MPE-SC - Analista - Tecnologia da Informação 
Um diagrama de classes em UML consiste em classes e nos relacionamentos entre 
essas classes. 
Assinale a alternativa que contém tipos de relacionamentos possíveis entre as 
classes: 
 a) Generalização; Associação; Formal e Refnamentos. 
 b) Generalização; Associação; Interdependência; Dependência. 
 c) Associações; Generalizações; Dependências e Refinamentos 
 d) Associação; Generalização; Interdependência; Formal 
 e) Generalização; Associação e Dependência; Formal. 
Comentários: Refinamento é o relacionamento entre duas descrições da mesma 
coisa, mas em níveis diferentes de abstração. 
Um refinamento pode acontecer entre um tipo e uma classe que o realiza, 
sendo, então, uma realização. 
O relacionamento de refinamento também pode ocorrer entre uma classe de 
análise e uma classe de design, ou entre um alto e um baixo nível de descrição (por 
exemplo, entre uma visão geral de um acontecimento e uma visão detalhada). Esse 
relacionamento é usado também para modelar diagramas de implementações 
diferentes da mesma coisa. Uma implementação simples, e outra mais complexa. 
Graficamente, a relação de refinamento é representada por uma linha 
tracejada e uma seta na extremidade em forma de triângulo. 
Gabarito: C 
4. Lista das Questões Utilizadas na Aula. 
QUESTÃO 01 IDECAN - 2013 - BANESTES - Analista de Tecnologia da Informação - 
Desenvolvimento de Sistemas 
UML (Linguagem Unificada de Modelagem) é apenas uma linguagem, sendo parte de 
um método para desenvolvimento de software. É uma linguagem com aspectos e 
destinada a desenvolver itens como 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 86 de 129 
(A) visualizar, modificar, elaborar, atualizar. 
(B) especificar, documentar, instalar, gerar pacotes. 
(C) construir, codificar, implementar, atualizar. 
(D) documentar, gerar pacotes, especificar, codificar. 
(E) visualizar, especificar, construir, documentar. 
QUESTÃO 02 FCC - 2011 - TRE-RN - Programador de computador 
Em relação à UML é INCORRETO afirmar: 
 a) É uma notação independente de processos. 
 b) Um ator representa um papel que um ser humano, um dispositivo de hardware ou 
até outro sistema desempenha com o sistema. 
 c) UML pode existir sem o diagrama de UML. 
 d) Auxilia a visualizar o desenho e a comunicação entre objetos. 
 e) É uma metodologia de desenvolvimento. 
QUESTÃO 03 AOCP - 2012 - BRDE - Analista de Sistemas - Desenvolvimento de Sistemas 
A linguagem UML possui uma série de objetivos particulares. Sobre as características 
desta linguagem, analise as assertivas e assinale a alternativa que aponta as corretas. 
I. Provém aos usuários uma linguagem de modelagem visual expressiva e pronta para 
uso, de forma que os usuários dessa linguagem possam desenvolver e intercambiar 
modelos significativos. 
II. A UML é independente de linguagens de programação e processos de 
desenvolvimento de softwares particulares. 
III. Estimular o crescimento do mercado de ferramentas OO. 
IV. Suportar conceitos de desenvolvimento de nível mais alto tais como colaboração, 
estruturas, modelos e componentes. 
 a) Apenas I e II. 
 b) Apenas I e III. 
 c) Apenas II e III 
 d) Apenas II, III e IV. 
 e) I, II, III e IV. 
QUESTÃO 04 ESAF - 2013 - DNIT - Analista Administrativo - Tecnologia da Informação 
A UML 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 87 de 129 
 a) retrata a estrutura de código orientado à linguagem no nível definido pelo usuário. 
 b) retrata a estrutura de código orientado a objeto no nível exatamente acima do 
próprio código. 
 c) retrata critérios de codificação de segurança de objetos independentes. 
 d) estrutura objetos de codificação orientada a usuários no sentido de estratificar 
códigos inconsistentes. 
 e) retrata a estrutura de código orientado a objeto no nível exatamente abaixo do 
próprio código. 
QUESTÃO 05 FUNDEP - 2014 - COPASA - Analista de Saneamento - Desenvolvimento 
de Sistemas 
Com relação à UML, assinale a alternativa INCORRETA. 
 a) A UML é uma linguagem de modelagem, sendo assim é uma linguagem cujo 
vocabulário e regras têm seu foco voltado para a representação conceitual e física de 
um sistema. 
 b) A UML é uma linguagem padrão para a elaboração da estrutura de projeto de 
software. 
 c) A UML é insuficientemente expressiva para modelar sistemas que não sejam de 
software. 
 d) A UML abrange a documentação da arquitetura do sistema e de todos os seus 
detalhes. 
QUESTÃO 06 IBFC - 2014 - TRE-AM - Analista Judiciário - Análise de Sistemas 
Quanto a UML (Unified Modeling Language), analise as afirmativas abaixo, dê valores 
Verdadeiro (V) ou Falso (F) e assinale a alternativa que apresenta a sequencia correta 
de cima para baixo: 
( ) A UML é uma linguagem de modelagem não proprietária de terceira geração. 
( ) A UML é uma metodologia de desenvolvimento, mostrando o que fazer primeiro e 
em seguida ou como projetar um sistema. 
Assinale a alternativa correta: 
 a) F –F b) V –F c) F –V d) V –V 
QUESTÃO 07 FCC - 2012 - TST - Técnico Judiciário - Programação 
Considere as afirmações sobre UML: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 88 de 129 
I. Surgiu da união de três metodologiasde modelagem: o método de Booch, o método 
OMT (Object Modeling Technique) de Jacobson e o método OOSE (Object-Oriented 
Software Engineering) de Rumbaugh. 
II. É uma linguagem de programação cujo objetivo é auxiliar os engenheiros de 
software a definir as características do software, tais como seus requisitos, seu 
comportamento, sua estrutura lógica, a dinâca de seus processos e até mesmo suas 
necessidades físicas em relação ao equipamento sobre o qual o sistema deverá ser 
implantado. 
III. Tornou-se, nos últimos anos, a linguagem-padrão de modelagem de software 
adotada internacionalmente pela indústria de Engenharia de Software. 
Está correto o que se afirma em 
 a) I, II e III. 
 b) I e II, apenas. 
 c) III, apenas. 
 d) II e III, apenas. 
 e) I e III, apenas. 
QUESTÃO 08 FCC - 2012 - TRF - 2ª REGIÃO - Técnico Judiciário - Informática 
Considere: 
I. UML não é um método de desenvolvimento, pois não determina o que fazer ou como 
desenhar o sistema, e sim, uma linguagem ou notação de diagramas para especificar, 
visualizar e documentar modelos de software orientados a objetos. 
II. As visões mostram diferentes aspectos do sistema que está sendo modelado. Por 
meio de seus diagramas, cada uma das visões definidas mostrará aspectos particulares 
do sistema, dando enfoque a ângulos e níveis de abstrações diferentes permitindo, 
dessa forma, que uma figura completa do sistema possa ser construída. 
III. Não havendo sobreposição entre seus diagramas, as visões podem servir de ligação 
entre a linguagem de modelagem e o método/processo de desenvolvimento 
escolhido. 
IV. Cada modelo de elemento possui uma representação gráfica distinta, sendo que 
um mesmo elemento pode existir em diversos diagramas, desde que submetidos às 
regras para definir que elementos poderão ser mostrados em cada tipo de diagrama. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 89 de 129 
Está correto o que consta em 
 a) I e II, apenas. 
 b) I, II e III, apenas. 
 c) I, II e IV, apenas. 
 d) II, III e IV, apenas. 
 e) I, II, III e IV. 
QUESTÃO 09 FEPESE - 2012 - FATMA - Analista Técnico de Gestão Ambiental - Classe 
IV - Analista de Informática 
Analise a figura abaixo: 
 
Assinale a alternativa que defne corretamente a visão de implementação da UML: 
a) Permite entender a organização dos processos do sistema. 
b) Refere-se à distribuição física do sistema através do conjunto de nós do ambiente 
em que será executado. 
c) É um ponto de vista que permite estruturar e organizar o desenho do sistema de 
forma lógica. 
d) Serve como um contrato entre o cliente e o desenvolvedor, porque mostra 
conceitualmente o conjunto de funções que o sistema deve executar para atender os 
requisitos do cliente. 
e) Captura as decisões de arquitetura para implementação do sistema, especifcando 
os subsistemas, suas dependências, e seus componentes organizados em camadas 
hierárquicas. 
QUESTÃO 10 CONSULPLAN - 2012 - TSE - Analista Judiciário - Análise de Sistemas 
O desenvolvimento de um sistema de software complexo demanda que seus 
desenvolvedores tenham a possibilidade de examinar e estudar esse sistema a partir 
de diversas perspectivas. O uso da UML sugere que um sistema pode ser descrito por 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 90 de 129 
meio de cinco visões independentes do sistema. Duas dessas visões são detalhadas a 
seguir. Observe. 
I. Descreve o sistema de um ponto de vista externo como um conjunto de interações 
entre o sistema e os agentes externos do sistema. 
II. Enfatiza as características de concorrência e paralelismo, sincronização e 
desempenho do sistema. 
As duas visões detalhadas são conhecidas, respectivamente, por visões de 
 a) fluxos de dados e processo. 
 b) fluxo de dados e operação. 
 c) casos de uso e operação. 
 d) casos de uso e processo. 
QUESTÃO 11 CEPERJ - 2013 - CEDERJ - Programador de computador 
Na UML, um sistema pode ser descrito por meio de cinco visões independentes. Uma 
dessas visões descreve o sistema do ponto de vista externo como um conjunto de 
interações entre o sistema e os agentes externos ao sistema. Essa visão, que é criada 
inicialmente e direciona o desenvolvimento das outras visões do sistema, é conhecida 
por Visão de: 
 a) Projeto 
 b) Processo 
 c) Casos de Uso 
 d) Implementação 
 e) Implantação 
QUESTÃO 12 FUNCAB - 2014 - PRODAM-AM - Programador - Desenvolvedor 
O desenvolvimento de softwares demanda que seus desenvolvedores tenham a 
possibilidade de estudar esse sistema a partir de várias perspectivas. De acordo com 
os autores da UML, um sistema pode ser descrito por meio de cinco visões 
independentes. Uma delas descreve o sistema do ponto de vista externo como um 
conjunto de interações entre o próprio sistema e os agentes externos ao sistema. Essa 
visão é criada inicialmente e direciona o desenvolvimento das demais visões do 
sistema. 
Essa abordagem é conhecida como visão de: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 91 de 129 
 a) funções. 
 b) negócios. 
 c) processos. 
 d) casos de uso. 
 e) fluxo de dados. 
QUESTÃO 13 FCC - 2011 - INFRAERO - Analista de Sistemas - Arquitetura de Software 
Quanto à classificação de tipo de bloco de construção, de acordo com Grady Booch et 
al, o vocabulário UML abrange 
 a) 1 tipo. b) 2 tipos. c) 3 tipos. d) 4 tipos. e) 5 tipos. 
QUESTÃO 14 FCC - 2012 - TRE-CE - Analista Judiciário - Análise de Sistemas 
A UML apresenta, em sua sintaxe e semântica, uma notação gráfica com elementos 
bem definidos. A linguagem categoriza quatro itens. Os pacotes são inseridos no 
contexto das partes organizacionais dos modelos e, portanto, categorizados como 
itens 
 a) estruturais. 
 b) comportamentais. 
 c) temporais. 
 d) anotacionais. 
 e) de agrupamento. 
QUESTÃO 15 FCC - 2011 - INFRAERO - Analista de Sistemas - Arquitetura de Software 
Considere: 
I. estruturais, 
II. comportamentais, 
III. de agrupamentos, 
IV. anotacionais. 
Quanto aos itens da UML que podem constituir blocos de construção básicos OO, está 
correto o que consta em 
 a) I e II, apenas. 
 b) I e III, apenas. 
 c) I, II e III, apenas. 
 d) II e IV, apenas. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 92 de 129 
 e) I, II, III e IV. QUESTÃO 16 FEPESE - 2012 - FATMA - Analista Técnico de Gestão 
Ambiental - Classe IV - Analista de Informática 
Assinale a alternativa que indica corretamente os quatro tipos de relacionamentos na 
UML: 
 a) dependência, comportamental, agrupamento e associação. 
 b) dependência, associação, generalização e realização. 
 c) estrutural, comportamental, agrupamento e anotação. 
 d) cardinalidade, dependência, associação e estrutural. 
 e) associação, cardinalidade, generalização e realização. 
QUESTÃO 17 FUMARC - 2011 - PRODEMGE - Analista de Tecnologia da Informação 
Analise as afirmativas abaixo em relação aos tipos de relacionamentos da UML. 
I.____▷ Representa um relacionamento generalização. 
II.-----▷ Representa um relacionamento de dependência. 
III._____ Representa um relacionamento de associação. 
Assinale a alternativa VERDADEIRA: 
 a) Apenas as afirmativas I e II estão corretas. 
 b) Apenas as afirmativas I e III estão corretas. 
 c) Apenas as afirmativas II e III estão corretas. 
 d) Todas as afirmativas estão corretas. 
QUESTÃO 18 FCC - 2011 - TRE-RN - Analista Judiciário -Análise de Sistemas 
Um relacionamento semântico entre classificadores, no qual um deles especifica um 
contrato cujo cumprimento é assegurado pelo outro. Na UML, trata-se de 
 a) herança múltipla. b) realização. c) multiplicidade. d) composição. e) visibilidade. 
QUESTÃO 19 FUMARC - 2014 - AL-MG - Analista de Sistemas - Desenvolvimento 
A representação CORRETA de um relacionamento de realização na UML é: 
a) b) c) d) 
QUESTÃO 20 FCC - 2011 - INFRAERO - Analista de Sistemas - Arquitetura de Software 
Na notação UML, um nome entre ângulos (ex. <<nome>>), colocado acima do nome 
de outro elemento, é utilizado para a representação gráfica de 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 93 de 129 
 a) objeto. b) função. c) multiplicidade. d) operação. e) estereótipo. 
QUESTÃO 21 FUNCAB - 2014 - MDA - Tecnologia da Informação 
Na UML 2.0, os elementos << boundary >> e o << control >>, em um diagrama de 
classe, são exemplos de: 
 a) restrições b) estereótipos. c) composições. d) agregações. e) dependências 
QUESTÃO 22 FCC - 2011 - TRE-RN - Analista Judiciário - Análise de Sistemas 
Por um mecanismo de ampliação de seu vocabulário, a UML permite que sejam criados 
novos blocos de construção derivados dos já existentes, todavia específicos a 
determinados problemas. Esse mecanismo é definido como 
 a) persistência. b) derivação. c) polimorfismo. d) estereótipo. e) operação. 
QUESTÃO 23 FCC - 2012 - TRE-CE - Analista Judiciário - Análise de Sistemas 
A UML oferece mecanismos para a extensão da sintaxe e da semântica da linguagem. 
Considere: 
I. Novos atributos de modelagem. 
II. Novos elementos de modelagem. 
III. Nova semântica de modelagem. 
I, II e III são, respectivamente, 
 a) estereótipos, diagramas e relacionamentos. 
 b) dependências, associações e generalizações. 
 c) valores atribuídos, estereótipos e restrições. 
 d) valores discretos, diagramas e protótipos. 
 e) relacionamentos, dependências e associações. 
QUESTÃO 24 IDECAN - 2013 - BANESTES - Analista de Tecnologia da Informação - 
Desenvolvimento de Sistemas 
Os diagramas são meios utilizados para visualização dos blocos de construção; uma 
apresentação gráfica de um conjunto de elementos, geralmente representados como 
um gráfico conectado de vértices e arcos. Esses diagramas representam visões de 
modelos comuns. São diagramas que representam as partes estáticas de um sistema, 
EXCETO: 
(A) Diagrama de classes. 
(B) Diagrama de objeto. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 94 de 129 
(C) Diagrama de componente. 
(D) Diagrama de atividade. 
(E) Diagrama de implementação. 
QUESTÃO 25 FUMARC - 2011 - BDMG - Analista de Sistemas 
São diagramas da UML que permitem visualizar as partes estáticas de um sistema, 
EXCETO: 
 a) Diagrama de Classes. 
 b) Diagrama de Atividades. 
 c) Diagrama de Implantação. 
 d) Diagrama de Componentes. 
QUESTÃO 26 CETRO - 2013 - ANVISA - Analista Administrativo - Área 5 
Com relação à UML, analise as assertivas abaixo. 
I. É independente das linguagens de programação e dos métodos de desenvolvimento. 
II. A UML 2.0 define 14 tipos de diagramas, divididos em 3 categorias. 
III. Permite que um projeto seja compreendido pelas pessoas e manipulado por 
máquinas. 
É correto o que se afirma em: 
 a) I, II e III. b) I e II, apenas. c) I e III, apenas d) II, apenas. e) I, apenas. 
QUESTÃO 27 FCC - 2011 - TRT - 1ª REGIÃO (RJ) - Analista Judiciário - Tecnologia da 
Informação 
Na UML 2.0, os diagramas de objeto, de componente, de atividade e de comunicação 
são, respectivamente, do tipo (considere E para Estrutural e C para Comportamental): 
 a) C; C; C; E. b) C; C; E; E. c) C; E; E; C. d) E; C; E; C. e) E; E; C; C. 
QUESTÃO 28 FCC - 2012 - TRE-CE - Analista Judiciário - Análise de Sistemas 
Na UML 2.0, representam comportamentos de um sistema, os diagramas de 
 a) comunicação e de caso de uso. 
 b) sequência e de implantação. 
 c) componentes e de atividades. 
 d) pacotes e de componentes. 
 e) atividades e de implantação. 
QUESTÃO 29 FUNCAB - 2013 - DETRAN-PB - Analista de Sistemas 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 95 de 129 
Na UML, são exemplos de diagramas comportamentais e diagramas estruturais, 
respectivamente: 
 a) de estado e de classes. 
 b) de colaboração e de atividades. 
 c) de objetos e de casos de uso. 
 d) de classes e de colaboração. 
 e) de componentes e de sequência. 
QUESTÃO 30 FAPERP - 2012 - TJ-PB - Analista - Desenvolvimento de Sistemas 
A linguagem UML é constituída por uma série de diagramas. Assinale a alternativa que 
contém apenas diagramas estruturais. 
 a) Classes, Objetos e Atividades. 
 b) Objetos, Componentes e Casos de Uso. 
 c) Classes, Componentes e Pacotes. 
 d) Casos de Uso, Atividade e Sequências. 
QUESTÃO 31 FCC - 2012 - TST - Analista Judiciário - Análise de Sistemas 
A especificação da UML, na versão 2.4, apresenta dois grupos de tipos de diagramas, 
sendo eles: 
 a) o conjunto de diagramas que trata dos aspectos relacionados com as classes, 
objetos e os relacionamentos do sistema e o conjunto de diagramas que aborda 
aspectos do estado de funcionamento das aplicações, como o diagrama de máquina 
de estados e o diagrama de interação. 
 b) diagramas voltados para a elaboração de programas que usam classes associadas 
ao conceito de herança e polimorfismo e diagramas voltados para a elaboração de 
programas que usam classes que usufruem dos conceitos de interface e componente. 
 c) o grupo de diagramas que trata de modelar o comportamento do sistema, como o 
diagrama de classes e o diagrama de pacotes e o grupo de diagramas que trata da 
estrutura do sistema, como o diagrama de caso de uso e o diagrama de atividades. 
 d) os diagramas estruturais, que apresentam os níveis de implementação e como as 
partes do sistema se relacionam, e os diagramas comportamentais, os quais 
apresentam o comportamento dinâmico dos objetos do sistema, mostrando as 
mudanças no tempo, dentre os quais está o diagrama de caso de uso. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 96 de 129 
 e) uma agregação de diagramas para desenvolver aplicações que não envolvem o uso 
de classes e objetos, como o diagrama de caso de uso e o diagrama de componentes 
e outra agregação de diagramas que são aplicados diretamente no modelo de 
desenvolvimento orientado a objetos. 
QUESTÃO 32 FEPESE - 2013 - JUCESC - Analista Técnico em Gestão de Registro 
Mercantil - Analista de Informática 
Assinale a alternativa que contém um diagrama estrutural, um comportamental e 
outro diagrama estrutural, todos da UML, respectivamente. 
 a) Diagrama de sequência; diagrama de casos de uso; diagrama de estados. 
 b) Diagrama de objetos; diagrama de implantação; diagrama de classes. 
 c) Diagrama de implantação; diagrama de atividade; diagrama de componentes 
 d) Diagrama de comunicação; diagrama de casos de uso; diagrama de interatividade. 
 e) Diagrama de casos de uso; diagrama de classes; diagrama de sequência 
QUESTÃO 33 Quadrix - 2014 - COBRA Tecnologia S-A (BB) - Analista de Operações - 
Negócios 
A especificação UML define duas grandes categorias de diagramas: diagramas de 
estrutura (structure diagrams) e diagramas de comportamento (behavior diagrams). É 
um diagrama de comportamento: 
 a) Diagrama de classes. 
 b) Diagrama de pacotes. 
 c) Diagrama de atividades. 
 d)Diagrama de componente. 
 e) Diagrama de deployment. 
QUESTÃO 34 FUNDEP - 2014 - COPASA - Analista de Saneamento - Desenvolvimento 
de Sistemas 
Os diagramas estruturais da UML existem para visualizar, especificar, construir e 
documentar os aspectos estáticos de um sistema. 
Assinale a alternativa que apresenta o diagrama que é estrutural. 
 a) Diagrama de sequência. 
 b) Diagrama de máquina de estados. 
 c) Diagrama de atividades. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 97 de 129 
 d) Diagrama de estrutura composta. 
QUESTÃO 35 FUNCAB - 2014 - MDA - Administrador de Banco de Dados 
O diagrama da UML (Unified Modeling Language) denominado “atividade” tem como 
finalidade apresentar o sistema com uma visão que modela os fluxos de controle. Essa 
visão possui uma característica: 
a) estática. b) dinâmica. c) particionada. d) imparcial. e) parcial 
QUESTÃO 36 FUMARC - 2013 - PC-MG - Analista da Polícia Civil - Tecnologia da 
Informação 
São Diagramas Comportamentais da UML, EXCETO: 
 a) Diagrama de Classes. 
 b) Diagrama de Atividades. 
 c) Diagrama de Sequência. 
 d) Diagrama de Caso de Uso. 
QUESTÃO 37 IBFC - 2014 - TRE-AM - Analista Judiciário - Análise de Sistemas 
A UML 2.2 possui 14 tipos de diagramas, divididos em duas grandes categorias: 
Estruturais e Comportamentais. Identifique abaixo o diagrama que NÃO faz parte dos 
Diagramas Estruturais: 
 a) Componentes. b) Pacotes. c) Atividades.. d) Classes. 
QUESTÃO 38 FUNCAB - 2013 – DETRAN/PB - Analista de Sistema 
Na UML, são exemplos de diagramas comportamentais e diagramas estruturais, 
respectivamente: 
A) de estado e de classes. 
B) de colaboração e de atividades. 
C) de objetos e de casos de uso. 
D) de classes e de colaboração. 
E) de componentes e de sequência. 
QUESTÃO 39 FUMARC - 2014 - AL-MG - Analista de Sistemas - Desenvolvimento 
Diagramas comportamentais da UML são utilizados para visualizar, especificar, 
construir e documentar os aspectos dinâmicos de um sistema. São diagramas 
comportamentais da UML, EXCETO: 
 a) Diagrama de Atividades. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 98 de 129 
 b) Diagrama de Sequência. 
 c) Diagrama de Componentes. 
 d) Diagrama de Casos de Uso. 
QUESTÃO 40 FUMARC - 2014 - Prefeitura de Belo Horizonte - MG - Técnico de Nível 
Superior - Informática 
São diagramas estruturais da UML: 
 a) Diagrama de classes e diagrama de implantação. 
 b) Diagrama de classes e diagrama de casos de uso. 
 c) Diagrama de objetos e diagrama de atividades. 
 d) Diagrama de comunicação e diagrama de sequência. 
QUESTÃO 41 FUNCAB - 2014 – SESACRE - Analista de Sistemas 
Na UML 2.0, é considerado um diagrama comportamental: 
A) diagrama de classes. 
B) diagrama de objetos. 
C) diagrama de componentes. 
D) diagrama de implantação. 
E) diagrama de casos de uso. 
QUESTÃO 42 CESGRANRIO - 2011 - Petrobrás - Analista de Sistemas Júnior - Engenharia 
de Software - 2011 
Nos últimos anos, um dos avanços mais importantes na engenharia de software foi o 
aparecimento da UML como padrão para a descrição de sistemas orientados a objetos. 
Associe os diagramas às categorias apresentadas a seguir. 
 
As associações corretas são: 
 a) I - P , II - S , III - R 
 b) I - R , II - Q , III - S 
 c) I - S , II - Q , III - P 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 99 de 129 
 d) I - R , II - P , III - Q 
 e) I - S , II - P , III - Q 
QUESTÃO 43 FCC - 2013 - AL-RN - Analista Legislativo - Analista de Sistemas 
A especificação UML 2.5 define dois tipos principais de diagramas UML: structure 
diagrams e behavior diagrams. Behavior diagrams mostram o comportamento 
dinâmico dos objetos em um sistema, que pode ser descrito como uma série de 
mudanças no sistema no decorrer do tempo. São exemplos de Behavior diagrams os 
diagramas de 
 a) Comunicação, Fluxo de Informação e Objeto. 
 b) Comunicação, Deployment e Máquina de Estado. 
 c) Temporização, Componente e Atividade. 
 d) Sequência, Caso de Uso e Atividade. 
 e) Classe, Atividade e Sequência. 
QUESTÃO 44 CESPE - 2013 - TRE-MS - Programador de computador 
Por meio de diagramas da UML, é possível capturar diferentes visões do sistema. 
Assinale a opção que apresenta o diagrama de um comportamento dinâmico do 
sistema. 
 a) diagrama de casos de uso 
 b) diagrama de objetos 
 c) diagrama de componentes 
 d) diagrama de implantação 
 e) diagrama de classes 
QUESTÃO 45 FCC - 2013 - AL-RN - Analista Legislativo - Analista de Sistemas 
Os diagramas UML podem ser divididos em dois grandes grupos, Diagramas Estruturais 
e Diagramas Comportamentais. Analise a lista de diagramas abaixo: 
I. Componentes. 
II. Comunicação. 
III. Implantação. 
IV. Caso de Uso. 
V. Classes. 
VI. Estados. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 100 de 129 
São Diagramas Comportamentais APENAS os descritos em 
 a) III, IV e V. b) I, IV e V. c) II, V e VI. d) I, II e V. e) II, IV e VI. 
QUESTÃO 46 FCC - 2012 - TRE-SP - Analista Judiciário - Análise de Sistemas 
A UML 2.0 divide os diagramas em duas categorias, estruturais e de comportamento. 
São exemplos de diagramas estruturais e de comportamento, respectivamente, os 
diagramas de 
 a) classe e atividades. 
 b) comunicação e sequência. 
 c) componentes e objetos. 
 d) máquinas de estado e casos de uso. 
 e) casos de uso e sequência. 
QUESTÃO 47 COPESE - 2012 - MPE-TO - Analista Ministerial Especializado - Análise de 
Sistemas 
A UML 2.0 define treze tipos de diagramas, divididos em três categorias 
 
Associe categoria e diagrama e assinale a alternativa CORRETA. 
A: 1 – (B), 1 – (D), 1 – (F), 1 – (G), 1 – (I), 1 – (M), 2 – (C), 2 – (H), 2 – (K), 3 – (A), 3 – (E), 
3 – (J) e 3 – (L) 
B: 3 – (B), 3 – (D), 3 – (F), 3 – (G), 3 – (I), 3 – (M), 2 – (C), 2 – (H), 2 – (K), 1 – (A), 1 – (E), 
1 – (J) e 1 – (L) 
C: 2 – (B), 2 – (D), 2 – (F), 2 – (G), 2 – (I), 2 – (M), 1 – (C), 1 – (H), 1 – (K), 3 – (A), 3 – (E), 
3 – (J) e 3 – (L) 
D: 2 – (B), 2 – (D), 2 – (F), 2 – (G), 2 – (I), 2 – (M), 3 – (C), 3 – (H), 3 – (K), 1 – (A), 1 – (E), 
1 – (J) e 1 – (L) 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 101 de 129 
E: 1 – (B), 1 – (D), 1 – (F), 1 – (G), 1 – (I), 1 – (M), 3 – (C), 3 – (H), 3 – (K), 2 – (A), 2 – (E), 
2 – (J) e 2 – (L). 
QUESTÃO 48 AOCP - 2013 - Colégio Pedro II - Analista de Tecnologia da Informação 
A UML é uma linguagem ou notação de diagramas para especifcar, visualizar e 
documentar modelos de software orientados a objetos. Qual das alternativas abaixo 
NÃO é um tipo de diagrama utilizado em UML? 
 a) Diagrama de Classes. 
 b) Diagrama de Sequência. 
 c) Diagrama de Trabalhos. 
 d) Diagrama de Sequência. 
 e) Diagrama de Estados. 
QUESTÃO 49 IFC - 2012 - IFC - Analista de Tecnologia da Informação 
Qual dos diagramas listados abaixo NÃO faz parte da linguagem de especificação UML 
versão 2? 
 a) Diagrama de Fluxo de Dados. 
 b) Diagrama de Caso de Uso. 
 c) Diagrama de Atividades. 
 d) Diagrama de Máquina de Estados. 
 e) Diagrama de Sequência 
QUESTÃO 50 AOCP - 2012 - BRDE - Analista de Sistemas - Desenvolvimento de Sistemas 
Assinale a seguir a alternativa que apresenta somente tipos de diagramas utilizados 
pela UML (Unified Modeling Language). 
 a) Diagrama de classes, diagrama de objetos,diagrama de componentes, diagrama de 
implementação, diagrama de pacotes, diagrama de estrutura, diagrama de use case, 
diagrama de transição de estados, diagrama de atividade, diagrama de sequência, 
diagrama de interatividade, diagrama de colaboração ou comunicação e diagrama de 
tempo. 
 b) Diagrama de entidade relacionamento, diagrama de classes, diagrama de objeto, 
diagrama de estado, diagrama de sequência, diagrama de colaboração, diagrama de 
atividade, diagrama de componente e o diagrama de execução, diagrama de 
colaboração ou comunicação . 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 102 de 129 
 c) Diagrama de use case, diagrama de classes, diagrama de objeto, diagrama de 
estado, diagrama de sequência, diagrama de colaboração, diagrama de fluxo de dados, 
diagrama de componente e o diagrama de execução,diagrama de tempo. 
 d) Diagrama de entidade relacionamento, diagrama de classes, diagrama de objeto, 
diagrama de estado, diagrama de sequência, diagrama de colaboração, diagrama de 
fluxo de dados, diagrama de componente e o diagrama de execução, diagrama de 
interatividade. 
 e) Diagrama de use case, diagrama de classes, diagrama de objeto, diagrama de 
estado, diagrama de sequência, diagrama de fluxo de dados, diagrama de atividade, e 
o diagrama de execução, diagrama de interatividade, diagrama de tempo. 
QUESTÃO 51 FEPESE - 2012 - FATMA - Analista Técnico de Gestão Ambiental - Classe 
IV - Analista de Informática 
Identifque as afirmativas que definem corretamente as formas de utilização de OCL 
(Object Constraint Language) na UML: 
1. Utilizadas para especifcar condições invariantes em classes e tipos em modelo de 
classes. 
2. Utilizadas para descrever pré e pós-condições em operações e métodos. 
3. Utilizadas para definir estereótipos. 
4. Utilizadas para especifcar guard conditions e change events nos diagramas de 
transição de estados. 
5. Utilizadas para mapear modelagem de banco de dados. 
Assinale a alternativa que indica todas as afirmativas corretas. 
 a) É correta apenas a afirmativa 5. 
 b) São corretas apenas as afirmativas 1 e 2. 
 c) São corretas apenas as afirmativas 3 e 4. 
 d) São corretas apenas as afirmativas 1, 2 e 5. 
 e) São corretas apenas as afirmativas 1, 2, 3 e 4. 
QUESTÃO 52 PR-4 Concursos - 2012 - UFRJ - Técnico de Tecnologia da Informação - 
Desenvolvimento 
A UML é uma linguagem originada na engenharia de software amplamente utilizada 
na modelagem de sistemas. O nome do tipo diagrama estruturante que representa 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 103 de 129 
estruturas estáticas, exibindo classes, interfaces, associações e outros 
relacionamentos é o diagrama de: 
 a) objetos; b) pacotes; c) classes; d) componentes; e) casos de uso. 
QUESTÃO 53 FEPESE - 2014 - MPE-SC - Analista - Tecnologia da Informação - 
Reaplicação 
Assinale a alternativa que apresenta o diagrama UML que mostra um conjunto de 
classes e seus relacionamentos. 
 a) Diagrama de Estados 
 b) Diagrama de Interação 
 c) Diagrama de Casos de Uso 
 d) Diagrama de Colaboração 
 e) Diagrama de Classes 
QUESTÃO 54 FGV - 2014 - DPE-RJ - Técnico Superior Especializado - Desenvolvimento 
de Sistemas 
Maria participa de um projeto cujo objetivo é desenvolver em C# uma versão 
orientada a objetos de um software legado, e deseja criar um diagrama UML para 
definir os modelos das classes do sistema. Esse diagrama deve representar as 
estruturas dessas classes, determinando 
a) o conjunto de casos de testes segundo as melhores práticas de desenvolvimento de 
software. 
 b) a sequência de criação dos objetos. 
 c) os atributos e os métodos. 
 d) os casos de uso que deram origem ao diagrama. 
 e) o número de objetos que serão criados quando o sistema estiver em produção. 
QUESTÃO 55 VUNESP - 2013 - Câmara Municipal de São Carlos/SP - Analista de 
Sistemas 
Um diagrama de classes da UML 2.0, em sua representação, contém 3 
compartimentos, denominados: 
(A) estado, condições e atores. 
(B) atores, transições e estado. 
(C) nome, atributos e operações. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 104 de 129 
(D) exceções, sequência e transições. 
(E) estereótipos, classificação e atributos. 
QUESTÃO 56 ESAF - 2012 - CGU - Analista de Finanças e Controle - prova 3 - 
Desenvolvimento de Sistemas da Informação 
Para indicar a visibilidade da propriedade, a UML 
 a) incorpora um prefixo a um nome de atributo ou nome de operação. 
 b) incorpora um sufixo a um nome de atributo ou origem de operação. 
 c) gera um nome de atributo e nome de transação totalmente distinto do anterior. 
 d) duplica nome de atributo ou nome de operação. 
 e) sublinha o nome de atributo ou nome de operação. 
QUESTÃO 57 VUNESP - 2013 - COREN/SP - Analista de Sistemas 
Em um diagrama de classes na UML 2.0, a notação utilizada para denotar um atributo 
denominado “total”, com visibilidade privada e com multiplicidade 2, do tipo inteiro, 
é 
(A) # total ~ 2; int 
(B) + total {2}, int 
(C) + total (2), int 
(D) ~ total - 2 -int 
(E) – total [2] : int 
QUESTÃO 58 VUNESP - 2012 - FAMERP - Analista de Serviço Administrativo - 
Tecnologia da Informação (Analista Programador) 
A visibilidade é uma propriedade definida para uma classe de um diagrama UML e 
estabelece o escopo do acesso permitido a um membro da classe. O nível de 
visibilidade que provê acesso apenas a objetos de uma mesma classe, bem como seu 
símbolo são, respectivamente, 
(A) private e −. (B) unique e @. (C) protected e #. (D) package e ~. (E) foreign e +. 
QUESTÃO 59 FEPESE - 2012 - FATMA - Analista Técnico de Gestão Ambiental - Classe 
IV - Analista de Informática 
Assinale a alternativa que indica corretamente a visibilidade de atributos e operações 
de uma classe, especifcada pelo símbolo “#” na UML: 
 a) público (public) 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 105 de 129 
 b) privado (private) 
 c) pacote (package) 
 d) protegido (protected) 
 e) multiplicidade (multiplicity) 
QUESTÃO 60 FUNCAB - 2014 - MDA - Analista de Sistemas 
Em diagramas apropriados da UML, pode-se representar o tipo de acesso aos 
membros de dados e aos métodos de uma classe por meio de sinais. O sinal # (jogo da 
velha) representa um acesso do tipo: 
 a) isolado b) privativo c) abstrato d) protegido. e) público 
QUESTÃO 61 VUNESP - 2013 - MPE/ES - Agente Especializado - Analista de Sistemas 
Em uma classe da UML 2.0, um atributo teve sua multiplicidade declarada como [1..*]. 
Isso significa que esse atributo 
(A) pode não ter nenhum valor. 
(B) pode ter um ou mais valores. 
(C) tem pelo menos um valor não definido. 
(D) tem pelo menos dois valores. 
(E) tem, no máximo, dois valores. 
QUESTÃO 62 FCC - 2011 - INFRAERO - Analista de Sistemas - Arquitetura de Software 
Qualquer descendente do classificador é capaz de usar a característica; sua 
especificação é antecedida pelo símbolo #. A definição trata da visibilidade usada na 
notação UML, de nível 
 a) público. b) privado. c) pacote. d) protegido. e) dependente. 
QUESTÃO 63 FCC - 2014 - AL-PE - Analista Legislativo - Sistemas 
Visibilidade refere-se à capacidade de um método referenciar uma característica de 
outra classe. Num diagrama de classes da UML 2.0 a visibilidade é indicada com um 
prefixo representado pelos caracteres: 
I. # II. + III. ~ IV. - 
Os tipos de visibilidade definidos de I a IV são corretae respectivamente: 
 a) private - public - protected - package 
 b) public - private - package - protected 
 c) private - package - public - protected 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 106 de 129 
 d) protected - public - package - private 
 e) package - protected - private – public 
QUESTÃO 64 FCC - 2012 - MPE-PE - Analista Ministerial - Informática 
Atributos estáticos são atributos da classe em vez de serem atributos de uma instância 
da classe. Em UML um atributo estático é representado ao se utilizar em sua 
transcrição o: 
 a) modo sublinhado b) símbolo # c) símbolo / d) modo itálico e) símbolo ~ 
QUESTÃO 65 CESGRANRIO - 2013 - LIQUIGAS - Profissional Júnior - Análise de Sistemas 
- Tecnologia da Informação 
A Figura a seguir representa uma classe UML: 
 
Quantas propriedades (features) estáticas essa classe possui? 
 a) 0 b) 1 c) 2 d) 3 e) 4 
QUESTÃO 66 VUNESP - 2011 - Prefeitura de Diadema - Analista de Sistemas – 
Programação – Net/VB, ASP/C#, JAVA/PHP 
Considerando os diagramas de classe da UML 2.0, há o conceito de navegabilidade. A 
notação utilizada para indicar uma navegabilidade unidirecional é 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 107 de 129 
 
QUESTÃO 67 FUNCAB - 2014 - EMDUR - Analista - Analista de Informática 
No diagrama de classes da UML, uma linha entre as classes de objetos representa 
um(a): 
A) associação. B) atributo. C) operação. D) método. E) herança. 
QUESTÃO 68 ESAF - 2012 - CGU - Analista de Finanças e Controle - prova 3 - 
Desenvolvimento de Sistemas da Informação 
Uma associação em UML representa 
 a) uma população variada de relações (engagements) de redundâncias entre 
instâncias de classe. 
 b) uma população variada de vínculos (links) de relacionamentos entre instâncias de 
classe. 
 c) uma classificação de vínculos (links) de relacionamentos entre classes de atributos. 
 d) uma população constante de valores (values) de relacionamentos quantitativos 
entre atributos de instâncias. 
 e) uma estrutura de equivalências (equal features) entre relacionamentos de 
instâncias de posicionamento de classes. 
QUESTÃO 69 CESGRANRIO - 2013 - BNDES - Profissional Básico - Análise de Sistemas - 
Desenvolvimento 
Considere, em um primeiro sentido, que “pedreiros trabalham em construção civil” e, 
em sentido contrário, que “a construção civil emprega pedreiros”. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 108 de 129 
Na análise orientada a objetos com notação UML(Unified Modeling Language), o 
exemplo mencionado, de acordo com o modelo objeto, está relacionado a uma 
 a) inversão de classes e instâncias em um mesmo método 
 b) conexão de objetos das mesmas classes 
 c) relação entre atividade e entidade 
 d) reciprocidade de informação 
 e) independência funcional 
QUESTÃO 70 VUNESP - 2012 - IAMSPE - Analista de Tecnologia (Informática 
/Desenvolvimento) 
Considere o seguinte diagrama de classes: 
 
Na figura, o texto “abc” está representando um (a) 
(A) papel. (B) herança. (C) restrição. (D) ordenação. (E) multiplicidade. 
QUESTÃO 71 FCC - 2012 - TCE-AP - Analista de Controle Externo - Tecnologia da 
Informação 
Considere o seguinte diagrama UML: 
 
O número 1 e símbolo 1..* que aparecem ao lado das classes Nota Fiscal e Itens se 
referem à restrição de 
 a) herança. b) agregação. c) identidade. d) multiplicidade. e) polimorfismo. 
QUESTÃO 72 VUNESP - 2014 - Câmara Municipal de São José dos Campos - SP - Analista 
Legislativo - Analista de Sistemas 
Considere o seguinte diagrama de classes da UML: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 109 de 129 
 
Nesse diagrama de classes, está representada uma associação do tipo 
 a) reflexiva. b) indireta. c) imperativa. d) derivada. e) adaptativa. 
QUESTÃO 73 VUNESP - 2013 - CTA - Tecnologista Pleno - Computação 
Na UML 2.0, a forma para se indicar uma associação derivada é 
 a) @<nome da associação> 
 b) /<nome da associação> 
 c) $<nome da associação> 
 d) #<nome da associação> 
 e) &<nome da associação> 
QUESTÃO 74 CONSULPLAN - 2012 - TSE - Programador de computador 
A UML define diversos tipos de relacionamentos no modelo de classe. Um desses tipos 
pode ser entendido pelo exemplo a seguir. Observe. 
• Sejam duas classes, ALFA e BETA. 
• Quando BETA herda de ALFA, os atributos e o comportamento de ALFA valem 
também para BETA. 
• Quando for necessário, BETA pode redefinir o comportamento de ALFA. 
• Além disso, BETA participa em qualquer relacionamento no qual ALFA participa. 
O caso exemplificado é conhecido como relacionamento de 
 a) extensão. b) associação. c) comunicação. d) generalização. 
QUESTÃO 75 IADES - 2011 - PG-DF - Analista Jurídico - Analista de Sistemas 
Assinale a alternativa correta a respeito do seguinte diagrama de classes. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 110 de 129 
 
a) Trata-se de um diagrama de colaboração, e representa a interação entre as classes 
Professor e Pessoa. 
 b) A classe Professor herda os atributos nome e idade da classe Pessoa. 
 c) A classe Pessoa herda os atributos turma e salário da classe Professor. 
 d) A classe Professor herda os atributos getNome() e setNome() de Pessoa. 
 e) A classe Pessoa herda os atributos setSalario() e getTurma() da classe Professor. 
QUESTÃO 76 VUNESP - 2013 - CTA - Tecnologista Pleno - Computação 
Considere o seguinte diagrama de classes da UML 2.0 
 
O texto “tipo de produto” é chamado de um(a) 
a) estado. b) interface. c) acoplamento. d) discriminador. e) compartimento. 
QUESTÃO 77 FJG - RIO - 2011 - TCM-RJ - Analista de Informação 
Nos projetos orientados a objetos, as classes de objetos podem ser organizadas em 
uma estrutura de herança que mostra o relacionamento entre classes. A classe de 
objeto mais específica é completamente consistente com a classe-pai, mas inclui 
outras informações. A classe-filho herda os atributos e as operações da classe-pai. 
Nesse contexto, observe-se a seguinte figura. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 111 de 129 
 
Na UML, conforme indicado na figura acima, a seta que aponta de uma entidade de 
classe para a classe- pai, indica a: 
 a) coesão b) elicitação c) integração d) globalização e) generalização 
QUESTÃO 78 FJG - RIO - 2011 - TCM-RJ - Analista de Informação 
Na UML 2.2, o diagrama de classes oferece uma notação gráfica para modelar classes 
e seus relacionamentos, descrevendo assim possíveis objetos. Na elaboração desse 
diagrama, o recurso da generalização possui três finalidades, que são: 
a) gerar código de forma automática, normalizar os identificadores e dar suporte ao 
polimorfismo 
 b) estruturar a descrição de objetos, gerar código de forma automática e normalizar 
os identificadores 
 c) dar suporte ao polimorfismo, estruturar a descrição de objetos e permitir a 
reutilização de código 
 d) normalizar os identificadores, permitir a reutilização de código e estruturar a 
descrição de objetos 
 e) as organizações podem escolher os processos a serem aprimorados, conforme suas 
próprias necessidades e requisitos 
QUESTÃO 79 FCC - 2013 - AL-RN - Analista Legislativo - Analista de Sistemas 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.netPágina 112 de 129 
Os diagramas de classes ilustram atributos e operações de uma classe. Um diagrama 
de classes em notação UML utiliza 
 a) retângulos para representar as classes e uma seta vazia apontando para a 
superclasse para representar herança. 
 b) triângulos para representar associações e retângulos para as entidades. 
 c) elipses para representar os atributos e retângulos para as entidades. 
 d) retângulos para representar atributos e elipses para representar atributos. 
 e) setas para representar a direção e retângulos para representar as associações. 
QUESTÃO 80 FCC - 2011 - TRT - 24ª REGIÃO (MS) - Analista Judiciário - Tecnologia da 
Informação 
Na UML, o relacionamento entre uma superclasse e suas subclasses é denominado 
 a) generalização. 
 b) decomposição. 
 c) agregação composta. 
 d) agregação não composta. 
 e) dependência. 
QUESTÃO 81 CEFET-MG - 2014 - CEFET-MG - Técnico de Tecnologia da Informação 
No processo de utilização da UML (Unified Modeling Language) constata-se que 
 a) atributos são divididos em estruturais e comportamentais. 
 b) métodos são uma estrutura de dados que representam uma classe. 
 c) heranças relacionam as instâncias com suas respectivas classes e métodos. 
 d) polimorfismo das operações é uma consequência da relação de herança entre 
métodos. 
 e) classe é uma estrutura que abstrai um conjunto de objetos com características 
similares. 
QUESTÃO 82 VUNESP - 2011 - TJM-SP - Analista de Sistemas - Judiciário 
Considere o seguinte diagrama de classes, representado conforme a UML. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 113 de 129 
 
A partir desse diagrama de classes, pode-se afirmar que 
 a) a classe Veículo é considerada uma subclasse. 
 b) a classe Carga é uma superclasse, e Passeio, uma subclasse. 
 c) a classe Veículo terá mais atributos do que as classes Carga e Passeio. 
 d) a classe Veículo herda os recursos das classes Carga e Passeio. 
 e) as classes Carga e Passeio herdam os recursos da classe Veículo. 
QUESTÃO 83 VUNESP - 2014 - DESENVOLVESP - Analista de Sistemas 
Considere o seguinte diagrama de classes da UML 2.0: 
 
Com base nesse diagrama, é correto afirmar que 
 a) a classe A é um tipo especial das classes B, C e D. 
 b) as classes A, B, C e D são abstratas. 
 c) as classes B, C e D são subclasses da classe A. 
 d) está representada uma agregação. 
 e) está representada uma composição. 
QUESTÃO 84 VUNESP - 2011 - TJM-SP - Analista de Sistemas - Judiciário 
Considere o seguinte diagrama de classes da UML. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 114 de 129 
 
O diagrama representa uma 
 a) dependência. 
 b) especialização. 
 c) generalização. 
 d) restrição temporal. 
 e) sequência. 
QUESTÃO 85 FUNCAB - 2014 - MDA - Analista de Sistemas 
Nos diagramas de classe da UML, os relacionamentos de dependência são 
representados por: 
 a) losangos preenchidos 
 b) linhas tracejadas com flecha na extremidade. 
 c) linha cheia com flecha na extremidade. 
 d) losangos em branco não preenchidos 
 e) triângulos não preenchidos. 
QUESTÃO 86 Quadrix - 2014 - COBRA Tecnologia S-A (BB) - Analista de Operações - 
Negócios 
Observe a simbologia utilizada em UML para fazer a ligação entre a classe A e B. 
 
Este tipo de ligação é conhecido como: 
 a) Dependência. b) Composição. c) Generalização. d) Abstração. e) Agregação. 
QUESTÃO 87 CESGRANRIO - 2011 - FINEP - Analista - Desenvolvimento de Sistemas 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 115 de 129 
 
Sobre o diagrama apresentado, considere as afirmativas abaixo. 
I - Uma instância de uma nota fiscal pode não conter item algum. 
II - A relação entre as classes NotaFiscal e Item é uma composição. 
III - Um item pode pertencer a mais de uma nota fiscal. 
IV - A operação getFaturamento( ) é estática. 
Estão corretas APENAS as afirmativas 
 a) I e III 
 b) I e IV 
 c) II e IV 
 d) III e IV 
 e) II, III e IV 
QUESTÃO 88 COPESE - 2012 - DPE-TO - Analista em Gestão Especializado – Tecnologia 
da Informação 
Analise o diagrama UML a seguir: 
 
Em relação ao modelo conceitual acima, pode-se dizer que: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 116 de 129 
I. A associação X é obrigatória para qualquer instância de ClasseD, mas opcional para 
as instâncias de ClasseE; 
II. A associação Z é obrigatória para qualquer instância de ClasseB e de ClasseD; 
III. a1 e b1 são atributos de uma instância de ClasseA; 
IV. ClasseB e ClasseE são associadas por composição. 
Está CORRETO o que se afirma em: 
(A) I, II e III. (B) I e III. (C) I e IV. (D) II, III e IV. 
QUESTÃO 89 FCC - 2012 - TRT - 6ª Região (PE) - Analista Judiciário - Tecnologia da 
Informação 
Considere o seguinte diagrama em UML: 
 
Uma representação válida deste diagrama é obtida substituindo-se as classes 
representadas pelas letras A, B, C, D e E, respectivamente, por 
 a) Desenho, Cor, Tipo, Azul, Retângulo. 
 b) Computador, Notebook, Desktop, Impressora, Monitor. 
 c) Pedido, Compra, Venda, Item, Cliente. 
 d) Livro, Índice, Capa, Romance, Aventura. 
 e) Internet, Navegadores, Correio Eletrônico, Firefox, Outlook. 
QUESTÃO 90 CESGRANRIO - 2014 - Banco da Amazônia - Técnico Científico - Analise de 
Sistemas 
Considere as seguintes regras, que devem ser observadas por um sistema de 
informação: 
1. Um carnê possui muitos boletos de pagamento. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 117 de 129 
2. Cada boleto pode ter sido pago ou não. Caso ele tenha sido pago, é necessário que 
se conheça o banco em que o pagamento foi realizado. 
3. Um boleto é parte integrante de apenas um carnê, que, por sua vez, é composto por 
ao menos um boleto. 
4. Caso um carnê seja excluído do sistema, todos os boletos que o compõem também 
deverão ser excluídos. 
Qual diagrama de classes UML representa adequadamente as regras descritas acima? 
a) 
 
b) 
 
c) 
 
d) 
 
e) 
 
QUESTÃO 91 FUNCAB - 2014 - PRODAM-AM - Programador - Desenvolvedor 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 118 de 129 
A UML possui duas formas de relacionamento parte-todo, uma geral, que relaciona uma classe 
de montagem a uma das classes das partes constituintes e outra, mais restritiva, em que uma 
parte constituinte pode pertencer a no máximo uma montagem e, quando uma parte 
constituinte tiver sido atribuída a uma montagem, terá um tempo de vida coincidente com a 
montagem. 
Essas formas de relacionamento parte-todo são denominadas, respectivamente. 
 a) composição e fragmentação. 
 b) fragmentação e otimização. 
 c) otimização e globalização. 
 d) globalização e agregação. 
 e) agregação e composição. 
QUESTÃO 92 FCC - 2014 - SABESP Analista de Gestão 01 (Sistemas) 
Considere a imagem abaixo: 
 
Na UML 2.0, o conceito de modelagem de classes que pode ser observado na imagem 
é 
(A) Herança. 
(B) Propagação. 
(C) Agregação. 
(D) Composição. 
(E) Associação Simples. 
QUESTÃO 93 VUNESP - 2011 - TJM-SP - Analista de Sistemas - Judiciário 
Considere duas classes S e T de um diagrama de classes da orientação a objetos feitos 
por meio da UML. Há uma associação de composição entre as classes S e T. Assinale a 
alternativa querepresenta esse tipo de associação entre S e T (abstraindo-se as 
cardinalidades). 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 119 de 129 
 a) 
 b) 
 c) 
 d) 
 e) 
QUESTÃO 94 FEPESE - 2012 - FATMA - Analista Técnico de Gestão Ambiental - Classe 
IV - Analista de Informática 
Analise o diagrama de classe da UML abaixo: 
 
Assinale a alternativa que defne corretamente qual o relacionamento entre as classes 
da figura acima: 
 a) Composição b) Agregação c) Generalização d) Associação e) Dependência. 
QUESTÃO 95 CS - UFG - 2014 - UEAP - Analista de Tecnologia da Informação - 
Desenvolvimento de Sistemas 
Considere o diagrama de classes UML a seguir. 
 
Como modelado no diagrama UML, o relacionamento entre o objeto 
CatálogoDeProduto e o objeto EspecificaçãoDoProduto significa que 
 a) a parte é membro de zero ou mais objetos compostos. 
 b) a parte deve estar sempre ligada a algum objeto composto. 
 c) o composto deve ser removido quando as partes forem removidas. 
 d) o composto só existe enquanto as partes existirem. QUESTÃO 96 MPE-RS - 2012 - 
MPE-RS - Técnico Superior de Informática 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 120 de 129 
Há um tipo de associação em UML que pode ser usado para representar 
relacionamentos todo-parte com uma semântica particular, com algumas implicações, 
tais como: (i) uma instância da parte pertence a apenas uma instância do todo de cada 
vez; (ii) a parte deve sempre pertencer a um todo; e (iii) o todo é responsável pela 
criação e remoção de suas partes – seja por si mesmo criando/removendo as partes, 
ou pela colaboração com outros objetos. 
A notação UML para este tipo de associação é um losango cheio em uma linha de 
associação, posicionado na extremidade da linha em que está o todo. 
O nome do tipo de associação descrito acima é 
 a) agregação. b) generalização. c) especialização. d) composição. e) instanciação. 
QUESTÃO 97 MPE-RS - 2012 - MPE-RS - Técnico Superior de Informática 
Considere as seguintes afirmações sobre UML 
I. UML é um acrônimo para Unified Modeling Language; portanto, UML é uma 
linguagem, uma notação, e não uma metodologia. 
II. Um diagrama de classes UML é um modelo de classes que mostra o relacionamento 
estático entre elas, incluindo associações, agregações e generalizações. 
III. UML é uma linguagem orientada a objetos baseada numa extensão de XML. 
Quais estão corretas? 
 a) Apenas II. 
 b) Apenas I e II. 
 c) Apenas I e III. 
 d) Apenas II e III. 
 e) I, II e III. 
QUESTÃO 98 FUMARC - 2012 - TJ-MG - Técnico Judiciário - Analista de Sistemas 
Em relação aos tipos de relacionamentos da UML, correlacione as colunas a seguir 
considerando a defnição mais adequada: 
 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 121 de 129 
 
Está CORRETA a seguinte sequência de respostas: 
 a) III, I, IV, II. b) VI, II, I, III. c) II, I, VI, III. d) III, I, II, VI. 
QUESTÃO 99 FUNCAB - 2011 - Prefeitura Municipal de Serra/ES - Analista de Sistemas 
Qual das alternativas a seguir contém um diagrama de classes UML 2.0 que representa 
a implementação da interface INTF pela classe CLXP? 
 
QUESTÃO 100 FUMARC - 2011 - PRODEMGE - Analista de Tecnologia da Informação 
Analise as afirmativas abaixo em relação ao Diagrama de Classes da UML. 
I. É um diagrama comportamental da UML. 
II. Pode representar classes e interfaces. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 122 de 129 
III. Pode representar relacionamentos de dependência e generalização. 
Assinale a alternativa VERDADEIRA: 
 a) Apenas as afirmativas I e II estão corretas. 
 b) Apenas as afirmativas I e III estão corretas. 
 c) Apenas as afirmativas II e III estão corretas. 
 d) Todas as afirmativas estão corretas. 
QUESTÃO 101 MB - 2011 - MM - QT - Primeiro Tenente - Informática 
Disciplina: Engenharia de Software 
 
 
Considerando os conceitos da UML, assinale a opção que define, respectivamente, os 
itens (1), (2), (3) e (4) representados no diagrama acima. 
 a) Classe; Realização; Estado; e Associação. 
 b) Classe; Dependência; Interface; e Associação. 
 c) Classe; Dependência; Interface; e Realização. 
 d) Nó; Dependência; Interface; e Realização. 
 e) Nó; Realização; Estado; e Associação. 
QUESTÃO 102 VUNESP - 2013 - MPE/ES - Agente Especializado - Analista de Sistemas 
Na UML 2.0, supondo que a classe Escritório tenha uma interface fornecida ‘X’, sua 
notação é: 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 123 de 129 
 
QUESTÃO 103 FCC - 2011 - INFRAERO - Analista de Sistemas - Arquitetura de Software 
(adaptada) 
Uma classe é escrita em itálico na UML para especificar que tal classe 
 a) é concreta. 
 b) pode não apresentar instâncias diretas. 
 c) herda características de mais de uma classe mãe. 
 d) herda características de apenas uma classe mãe. 
 e) se relaciona com ela mesma. 
QUESTÃO 104 FCC - 2012 - TRT - 11ª Região (AM) - Analista Judiciário - Tecnologia da 
Informação 
Sobre o diagrama de classe da UML é correto afirmar: 
 a) Quando se utiliza diagramas de classe deve-se focar exclusivamente na estrutura 
do software e ignorar seu comportamento. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 124 de 129 
 b) Dependência com classes não são adequadas para ilustrar um relacionamento 
transitório, como quando um objeto é passado para outro como parâmetro. 
 c) A UML permite representar dependência apenas de classes. Utilizam-se 
dependências quando se deseja mostrar que as mudanças em uma classe não afetam 
a outra classe. 
 d) Suporta quatro abreviações de visibilidade: + (público), - (privado), ~ (pacote) e # 
(protegido). 
 e) Uma classe abstrata é uma classe que pode ser instanciada diretamente. A maneira 
mais comum de identificar uma classe abstrata na UML é colocar o nome em negrito. 
QUESTÃO 105 FCC - 2013 - TRT - 9ª REGIÃO (PR) - Analista Judiciário - Tecnologia da 
Informação 
O diagrama de classes da UML descreve os tipos de objetos presentes no sistema e os 
vários tipos de relacionamentos estáticos existentes entre eles. Mostram também as 
propriedades e as operações de uma classe e as restrições que se aplicam à maneira 
como os objetos estão conectados. Em relação aos termos utilizados no desenho do 
diagrama de classes, é correto afirmar: 
 a) Agregação é uma forma de associação em que um objeto agregado é composto de 
partes constituintes. O agregado é semanticamente um objeto estendido, tratado 
como uma unidade em muitas operações, embora fisicamente ele seja composto por 
vários objetos menores. Por exemplo, um carro consiste em rodas, motor, lataria etc. 
Carro para motor é uma agregação. 
 b) As classes abstratas permitem definir métodos em um local para serem usadas por 
várias subclasses. Todos os métodos em uma classe abstrata devem ter corpo (não 
somente a assinatura), mesmo aqueles que serão implementados pelas subclasses. 
 c) Multiplicidade é uma restrição sobre a cardinalidade de um conjunto. Ela se aplica 
a associações, porém, não se aplica a atributos. A multiplicidade para uma associação 
restringe o número de objetos relacionados a determinado objeto. 
 d) A herança múltipla permite que uma superclasse tenha mais de uma subclasse e 
que essas subclasses herdem todas ascaracterísticas da superclasse. As subclasses, 
por sua vez, não podem estar associadas a mais de uma superclasse. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 125 de 129 
 e) Composição é uma forma de associação em que uma parte constituinte pode 
pertencer a várias classes de montagem. No diagrama de classes a notação para a 
composição é um pequeno losango vazio ao lado da classe de montagem. 
QUESTÃO 106 FCC - 2013 - DPE-SP - Programador de computador 
Um diagrama de classes descreve os tipos de objetos presentes no sistema e os vários 
tipos de relacionamentos estáticos existentes entre eles. Com relação aos conceitos 
da UML relacionados às classes do diagrama de classes é correto afirmar que 
 a) um estereótipo deve ser usado ao lado do nome de uma classe para identificá-la 
sem ambiguidades como um tipo específico de classe. Uma classe estereotipada deve 
ter seu nome escrito em itálico. 
 b) o nome de um método estático deve ser colocado em itálico e de um método 
abstrato deve ser escrito sublinhado no compartimento de operações do diagrama de 
classes. 
 c) uma classe pode implementar apenas uma interface. Essa relação é conhecida 
como realização e é mostrada como uma linha tracejada com um triângulo na 
extremidade que toca a classe. 
 d) uma associação unidirecional é representada por uma linha ligando duas classes 
com um triângulo vazio na extremidade de um dos lados. Significa que um objeto de 
uma classe (lado sem o triângulo) pode chamar os métodos na classe do lado da linha 
com o triângulo. 
 e) é possível rotular atributos e operações no diagrama de classes com os indicadores 
de visibilidade + (público), - (privado), ~ (pacote) e # (protegido). 
QUESTÃO 107 CS - UFG - 2014 - UEAP - Analista de Tecnologia da Informação - 
Desenvolvimento de Sistemas 
Para responder às questões 58 e 59, considere o diagrama de classes UML da figura a 
seguir, relativo a um sistema de caixa eletrônico. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 126 de 129 
 
Os marcadores de visibilidade de atributos e de métodos das classes UML da figura 
descrevem, dentre outras coisas, que o 
 a) atributo saldoTotal da classe Conta torna-se visível para as classes Transação e 
CaixaEletrônico. 
 b) atributo usuárioAutenticado da classe CaixaEletrônico é acessível por qualquer 
classe do produto de software. 
 c) método executar( ) da classe abstrata Transação é oculto para as subclasses Saque, 
Depósito e ConsultaSaldo. 
 d) método creditar( ) da classe BDEntidadeBancária pode ser invocado pela classe 
Transação e suas subclasses. 
QUESTÃO 108 FCC - 2011 - TRT - 24ª REGIÃO (MS) - Analista Judiciário - Tecnologia da 
Informação 
Na UML, especifica-se que uma classe é abstrata escrevendo seu nome 
 a) só com a inicial em letra maiúscula. 
 b) todo com letras maiúsculas. 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 127 de 129 
 c) em itálico. 
 d) em negrito. 
 e) grifado. 
QUESTÃO 109 VUNESP - 2011 - TJM-SP - Analista de Sistemas - Judiciário 
Na modelagem orientada a objetos, há um tipo de elemento chamado de Colaboração, 
que pode ser anexado a um diagrama de classes. A representação UML utilizada para 
a Colaboração é: 
 a) b) c) d) e) 
QUESTÃO 110 IDECAN - 2013 - BANESTES - Analista de Tecnologia da Informação - 
Desenvolvimento de Sistemas 
Diagrama de classe compartilha as mesmas propriedades dos demais diagramas. Seu 
conteúdo particular o diferencia dos outros diagramas. São itens contidos nos 
diagramas de classes, EXCETO: 
(A) Casos de uso. 
(B) Classes. 
(C) Interfaces. 
(D) Colaborações. 
(E) Relacionamentos de dependência, generalização e associação. 
QUESTÃO 111 VUNESP - 2014 - EMPLASA - Analista Administrativo - Tecnologia da 
Informação 
Na UML 2.0, a notação utilizada para representar um template de classe é: 
a) 
b) 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 128 de 129 
c) 
d) 
e) 
QUESTÃO 112 FEPESE - 2014 - MPE-SC - Analista - Tecnologia da Informação 
Um diagrama de classes em UML consiste em classes e nos relacionamentos entre 
essas classes. 
Assinale a alternativa que contém tipos de relacionamentos possíveis entre as classes: 
 a) Generalização; Associação; Formal e Refnamentos. 
 b) Generalização; Associação; Interdependência; Dependência. 
 c) Associações; Generalizações; Dependências e Refinamentos 
 d) Associação; Generalização; Interdependência; Formal 
 e) Generalização; Associação e Dependência; Formal. 
5. Gabarito. 
01 - E 
02 - E 
03 - E 
04 - B 
05 - C 
06 - B 
07 - E 
08 - C 
09 - E 
10 - D 
11 - C 
12 - D 
13 - C 
14 - E 
15 - E 
16 - B 
17 - B 
18 - B 
19 - A 
20 - E 
21 - B 
22 - D 
23 - C 
24 - D 
25 - B 
26 - C 
27 - E 
PRODEB PROJ - Engenharia de Software 
Aula 03 
Vitor Almeida 
 
 
 
www.tiparaconcursos.net Página 129 de 129 
28 - A 
29 - A 
30 - C 
31 - D 
32 - C 
33 - C 
34 - D 
35 - B 
36 - A 
37 - C 
38 - A 
39 - C 
40 - A 
41 - E 
42 - E 
43 - D 
44 - A 
45 - E 
46 - A 
47 - A 
48 - C 
49 - A 
50 - A 
51 - E 
52 - C 
53 - E 
54 - C 
55 - C 
56 - A 
57 - E 
58 - A 
59 - D 
60 - D 
61 - B 
62 - D 
63 - D 
64 - A 
65 - A 
66 - B 
67 - A 
68 - B 
69 - B 
70 - A 
71 - D 
72 - A 
73 - B 
74 - D 
75 - B 
76 - D 
77 - E 
78 - C 
79 - A 
80 - A 
81 - E 
82 - E 
83 - C 
84 - A 
85 - B 
86 - B 
87 - C 
88 - B 
89 - C 
90 - C 
91 - E 
92 - C 
93 - D 
94 - A 
95 - B 
96 - D 
97 - B 
98 - A 
99 - A 
100 - C 
101 - C 
102 - A 
103 - B 
104 - D 
105 - A 
106 - E 
107 - D 
108 - C 
109 - C 
110 - A 
111 - E 
112 - C

Mais conteúdos dessa disciplina