Buscar

Do_curso-94108-aula-06-v1

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 214 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 214 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 214 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Livro Eletrônico
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB
(Analista TI) Com Videoaulas- Pós-Edital
Diego Carvalho
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 1 de 213 
SUMÁRIO PÁGINA 
- Apresentação 01 
- Lista de Exercícios Comentados 134 
- Gabarito 213 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 2 de 213 
EXERCÍCIOS CESGRANRIO 
UNIFIED MODELING LANGUAGE 
 
1. (CESGRANRIO - 2010 – PETROBRÁS - Analista de Sistemas – B) Em relação aos 
diagramas utilizados na UML 2.0, 
 
a) o diagrama de estrutura composta serve para ilustrar a arquitetura de um 
sistema, mostrando o agrupamento de suas classes. 
 
b) o diagrama de pacotes enfatiza a apresentação das classes do ambiente 
modelado, de acordo com um conjunto de eventos. 
 
c) o diagrama de implantação é usado para sistemas distribuídos e permite 
apresentar a topologia de uma rede de máquinas e qual processo cada máquina 
vai rodar. 
 
d) o diagrama de colaboração tem o objetivo de mostrar como as mensagens 
entre os objetos são trocadas no decorrer do tempo para a realização de uma 
operação. 
 
e) o diagrama de sequência mostra o contexto de uma interação, inclusive os 
objetos e seus relacionamentos pertinentes a uma interação particular. 
 
Comentários: 
 
(a) Errado. Na verdade, essa é a função do Diagrama de Pacotes; (b) Errado. Na 
verdade, essa é a função do Diagrama de Estrutura Composta; (c) Correto. O 
Diagrama de Implantação é usado em sistemas distribuídos? Sim, é usado nesse 
contexto mesmo. Ele permite apresentar a topologia de uma rede de máquinas e 
qual processo cada máquina vai rodar? Sim, ele serve exatamente para isso; (d) 
Errado. Na verdade, essa é a função do Diagrama de Sequência; (e) Errado. Na 
verdade, essa é a função do Diagrama de Colaboração (Comunicação). 
 
Gabarito: C 
 
2. (CESGRANRIO – 2014 – EPE – Analista de Gestão Corporativa - Tecnologia de 
Informação) Caso os desenvolvedores decidam usar a notação UML, qual 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 3 de 213 
diagrama é adequado para representar esse ciclo de vida, incluindo os estados 
e a passagem de um estado para outro? 
 
a) 
 
 
b) 
 
 
c) 
 
 
d) 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 4 de 213 
 
 
e) 
 
 
Comentários: 
 
A questão pede “incluindo os estados e a passagem de um estado para outro”, logo 
o único diagrama que trata disso é o Diagrama de (Máquina de) Estados. 
 
Gabarito: D 
 
3. (CESGRANRIO – 2014 – EPE – Analista de Gestão Corporativa - Tecnologia de 
Informação) Qual a forma correta de descrever a associação entre um objeto 
“Venda” e um objeto “Item de Venda”, em um diagrama de classes UML, para 
manter a semântica existente no relacionamento entre as entidades de mesmo 
nome no diagrama de entidades e relacionamentos do SCL? 
 
a) 
 
 
b) 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 5 de 213 
 
 
c) 
 
 
d) 
 
 
e) 
 
 
Comentários: 
 
A associação entre Venda e Item de Venda é um Composição, em que a Entidade 
Todo é a Venda e a entidade Parte é Item de Venda, pois um item de venda não 
existe sem uma venda. Logo, Diamante Cheio do lado de Venda. 
 
Gabarito: A 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 6 de 213 
4. (CESGRANRIO – 2014 – EPE – Analista de Gestão Corporativa - Tecnologia de 
Informação) Uma equipe de desenvolvimento de software escolheu utilizar a 
análise orientada a objeto, seguindo a notação UML, para desenvolver um 
projeto razoavelmente complexo. Em certo ponto do projeto, ficou clara a 
necessidade de representar quais elementos externos interagem com que 
funcionalidades do sistema, em um nível alto de abstração. 
 
Qual o diagrama destinado para representar essas interações? 
 
a) Diagrama de Casos de Uso 
b) Diagrama de Colaboração 
c) Diagrama de Fluxo de Dados 
d) Diagrama de Interface com o Usuário 
e) Diagrama de Sequência 
 
Comentários: 
 
O diagrama de casos de uso corresponde a uma visão externa do sistema e 
representa graficamente os atores, os casos de uso, e os relacionamentos entre estes 
elementos. Ele tem como objetivo ilustrar em um nível alto de abstração quais 
elementos externos interagem com que funcionalidades do sistema, ou seja, a 
finalidade de um diagrama de caso de uso é apresentar um tipo de diagrama de 
contexto que apresenta os elementos externos de um sistema e as maneiras 
segundo as quais eles as utilizam. 
 
Gabarito: A 
 
5. (CESGRANRIO – 2014 – FINEP – Analista – Desenvolvimento de Sistemas) Um 
fragmento combinado é um elemento da UML frequentemente empregado na 
construção de diagramas de sequência. Dentre os diferentes tipos de operadores 
de fragmentos combinados encontra-se: 
 
a) if 
b) while 
c) case 
d) for 
e) par 
 
Comentários: 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 7 de 213 
Nos diagramas de seqüência, fragmentos combinados são agrupamentos lógicos 
representados por um retângulo, que contém as estruturas condicionais que afetam 
o fluxo de mensagens. Um fragmento combinado contém operandos de interação 
e é definido pelo operador de interação. O operador Par define que o fragmento 
representa uma execução paralela de dois ou mais comportamentos. Vamos 
relembrar os operadores: 
 
Gabarito: E 
 
6. (CESGRANRIO – 2014 – FINEP – Analista – Desenvolvimento de Sistemas) O 
sistema de informação responsável pelo registro civil de um estado brasileiro 
possui uma função para registrar as informações necessárias sobre um cidadão 
que precisa obter uma carteira de identidade. Através dessa função, são 
registrados no sistema informações tais como: o nome, a data de nascimento, 
os nomes dos pais e o local de nascimento desse cidadão. No ato do 
cadastramentodescrito acima, o funcionário que opera o sistema pergunta ao 
cidadão se ele deseja registrar que ele é doador de órgãos para transplante. 
Caso a resposta seja afirmativa, o funcionário seleciona essa opção no formulário 
de registro, o que fará com que o sistema abra um formulário para que o 
funcionário registre informações fornecidas pelo cidadão, tais como: tipo 
sanguíneo, doenças preexistentes, etc. Baseado apenas no que foi descrito 
acima, qual diagrama de casos de uso descreve adequadamente as 
funcionalidades disponibilizadas pelo sistema de informação em questão? 
 
a) 
 
 
Alt – Alternativas Break – Quebra Ignore – Ignorar 
Opt – Opção Critical - Região Crítica Consider – Considerar 
Par – Paralelo Ne - Negativo Seq – Seqüência Fraca 
Loop – Laço Assertion – Afirmação Strict – Seqüência Estrita 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 8 de 213 
b) 
 
 
c) 
 
 
d) 
 
 
e) 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 9 de 213 
 
 
Comentários: 
 
Vejamos as diferenças entre a Inclusão, Extensão e Generalização: 
 
- Inclusão: Quando o caso de uso A “inclui” o caso de uso B, significa que sempre 
que o caso de uso A for executado, o caso de uso B também será executado. A 
direção do relacionamento é do caso de uso que está incluindo para o caso de uso 
incluído. 
 
- Extensão: Quando o caso de uso B estende o caso de uso A, significa que quando 
o caso de uso A for executado, o caso de uso B poderá (poderá – talvez não seja) 
ser executado também. A direção do relacionamento é do caso de uso extensor 
(aqui o caso de uso B) para o caso de uso estendido (caso de uso A). 
 
- Generalização: Quando o caso de uso B generaliza o caso de uso C isso significa 
que, além de fazer tudo que nele está especificado (ele = B), ele também executará 
tudo que está especificado no caso de uso C. A direção do relacionamento é sempre 
do generalizador (aqui o caso de uso B) para o generalizado (caso de uso C). 
 
No caso da questão, observe que o funcionário registra o cidadão, mas não 
necessariamente o registra como doador. Logo, trata-se de uma extensão! 
 
Gabarito: A 
 
7. (CESGRANRIO – 2014 – IBGE – Analista – Análise e Desenvolvimento de 
Aplicações) Em Análise de Sistemas, a UML é uma: 
 
a) metodologia que determina como deve ser realizada a análise de requisitos 
de sistemas complexos. 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 10 de 213 
b) metodologia de desenvolvimento de sistemas que inclui desde a análise de 
requisitos até a especificação de testes do sistema com modelos orientados a 
objetos. 
 
c) notação para o projeto físico de sistemas que usam linguagens orientadas a 
objetos como o Java e o C++. 
 
d) linguagem de modelagem que usa os conceitos de orientação a objetos para 
permitir a especificação de sistemas em diversos níveis de abstração. 
 
e) notação para facilitar representação visual de padrões de projeto e 
desenvolvimento da estrutura lógica de programas em plataformas de objetos 
distribuídas. 
 
Comentários: 
 
UML é sigla para Unified Modeling Language, ou seja, é uma linguagem de 
modelagem que utiliza conceitos de orientação a objetos para permitir a 
especificação de sistemas em diversos níveis de abstração. 
 
Gabarito: D 
 
8. (CESGRANRIO – 2014 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) 
Devido à complexidade de um sistema de informação, o líder de projeto solicitou 
a um analista de sistemas a criação de diagramas que ilustrem os passos que 
compõem os casos de uso desse sistema, incluindo a sequência principal e todas 
as sequências alternativas. 
 
Para atender a essa solicitação, o analista deve criar diagramas de: 
 
a) classes 
b) atividades 
c) componentes 
d) objetos 
e) estados 
 
Comentários: 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 11 de 213 
O Diagrama de Atividades tem como objetivo principal a especificação do 
comportamento do software, do ponto de vista funcional, ou seja, das suas 
funcionalidades. 
 
 
 
Gabarito: B 
 
9. (CESGRANRIO – 2014 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) Em 
um modelo de casos de uso, o tipo de relação a ser estabelecido entre um ator 
e um caso de uso é o de: 
 
 a) associação 
 b) composição 
 c) dependência 
 d) extensão 
 e) generalização 
 
Comentários: 
 
Entre Ator e Casos de Uso só há Associação. 
 
Gabarito: A 
 
10. (CESGRANRIO – 2014 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) 
Seja o seguinte diagrama UML 2: 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 12 de 213 
 
 
Que tipo de diagrama é esse? 
 
a) Diagrama de objetos 
b) Diagrama de tempo 
c) Diagrama de estados 
d) Diagrama de comunicação 
e) Diagrama de colaboração 
 
Comentários: 
 
O Diagrama de comunicação expõe o livre posicionamento dos participantes, o 
vínculo entre os participantes, uma numeração para mostrar a sequência de 
mensagens. No UML 1.x, era chamado de Diagrama de Colaboração. 
 
Gabarito: D 
 
11. (CESGRANRIO – 2013 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) No 
diagrama de sequência UML a seguir, existem 5 mensagens, numeradas de 1 a 
5. 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 13 de 213 
 
 
Qual delas representa uma mensagem assíncrona? 
 
a) 1 
b) 2 
c) 3 
d) 4 
e) 5 
 
Comentários: 
 
Pessoal, só relembrando: 
 
: Mensagem Sincrona 
: Mensagem Assíncrona 
 
Gabarito: D 
 
12. (CESGRANRIO – 2013 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) A 
Figura a seguir representa uma classe UML: 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 14 de 213 
 
 
Quantas propriedades (features) estáticas essa classe possui?a) 0 
b) 1 
c) 2 
d) 3 
e) 4 
 
Comentários: 
 
Vejamos a notação para atributos e métodos de classes em UML: 
 
- atributo ~ atributo # atributo + atributo atributo atributo 
Privado Pacote Protegido Público Abstrato (itálico) Estático (sublinhado) 
 
Logo, não temos nenhuma propriedade estática. 
 
Gabarito: A 
 
13. (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 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 15 de 213 
d) reciprocidade de informação 
e) independência funcional 
 
Comentários: 
 
Questão bem confusa e de difícil interpretação, mas podemos pensar que são duas 
formas de ver a relação entre pedreiros e a construção civil, de tal forma que a 
construção é uma composição de pedreiros, pois sem eles não há construção, logo 
representa a conexão dos objetos da classe pedreiro com os objetos da classe 
contrução civil. Sério, que questão horrível! 
 
Gabarito: B 
 
14. (CESGRANRIO – 2012 – EPE – Analista de Gestão Corporativa – Tecnologia da 
Informação) Considere o diagrama de estados a seguir, apresentado na notação 
da UML. Esse diagrama representa uma máquina de lavar roupas, que possui 
dois botões, On e Off, para ligar e desligar a máquina, respectivamente. Nesse 
diagrama, há uma variável n, cujo valor é alterado em determinadas situações. 
 
 
 
 
Considere que o sistema se encontra no estado inicial e que o botão “On” é 
pressionado duas vezes consecutivas. Em seguida, o botão “Off” é pressionado por 
duas vezes também consecutivas e, finalmente, o botão “On” é novamente 
pressionado uma única vez. Qual o valor da variável n após essa sequência de 
eventos? 
 
a) 0 
b) 1 
c) 2 
d) 3 
e) 4 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 16 de 213 
Comentários: 
 
Vamos analisar cada execução passo-a-passo: 
 
I. A variável n inicia com valor 0; 
 
II. Ao pressionar ON, o valor passa a: n = 1 (Exit) -> n = n + 1 (ON), logo n = 2, mas 
ao retornar ao estado Ligado, o valor de N é “setado” para 0, logo n= 0; 
 
III. Ao pressionar ON, novamente, repete-se o passo II, logo n = 0; 
 
IV. Ao pressionar OFF, há transição para o estado desligado, então: n = 1 (Exit) -> n 
= 2 (OFF), n = 0 (Entra no estado desligado); 
 
V. Ao pressionar OFF novamente: n = 2 (OFF) -> n = 0 (Entrada no estado 
desligado); 
 
VI. Ao pressionar ON: n = 2 (Saída do estado desligado) -> n = 1 (ON) -> n= 0 
(Entrada no estado ligado) 
 
Logo, n = 0 ao final das execuções. 
 
Gabarito: A 
 
15. (CESGRANRIO – 2012 – CHESF – Profissional de Nível Superior) Um robô foi 
construído para andar em um grid cujas posições são indicadas por pares 
ordenados (x,y), onde x e y são números inteiros. Esse robô recebe como 
comando uma string binária e funciona segundo a máquina de estado a seguir, 
descrita em UML 2.3. 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 17 de 213 
 
 
Iniciando na posição (0,0), o robô recebeu a string binária 111011110100010100. Em 
que posição o robô parou? 
 
a) (0,2) 
b) (0,4) 
c) (2,0) 
d) (2,2) 
e) (4,0) 
 
Comentários: 
 
Questão bem simples, vamos fazer passo a passo: 
 
 
Início P 1 -> V 1 -> VP 1 -> 
(0,0) (0,0) (0,0) (0,1) 
VP 0 -> PS 1 -> P 1 -> V 1 -> 
(0,2) (0,2) (0,2) (0,2) 
VP 1 -> VP 0 -> PS 1 -> P 0 -> 
(0,3) (0,4) (0,4) (0,4) 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 18 de 213 
H 0 -> HM 0 -> PS 1 -> P 0 -> 
(0,4) (-1,4) (-1,4) (-1,4) 
H 1 -> HP 0 -> PS 0 -> Fim 
(-1,4) (0,4) (0,4) (0,4) 
 
Gabarito: B 
 
16. (CESGRANRIO – 2012 – Petrobras - Analista de Sistemas Júnior - Engenharia de 
Software) Seja o seguinte diagrama de classes UML: 
 
 
 
Qual conjunto de classes e interfaces Java é compatível com os elementos de 
modelagem existentes nesse diagrama? 
 
 a) 
package PKGB; 
public interface X3 { 
 public abstract int opA(); 
 public abstract double opB(int z); 
} 
package PKGA; 
import PKGB.X3; 
public class A implements X3 { 
 int a1; 
 double a2; 
 private C[] c; 
 public void ma01(int x) { 
 // código irrelevante 
 } 
 public int opA() { 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 19 de 213 
 // código irrelevante 
 } 
} 
package PKGA; 
public class B extends A { 
 int b1; 
 String b2; 
 public void ma01(int x) { 
 // código irrelevante 
 } 
 public double opB(int y) { 
 // código irrelevante 
 } 
 public int opA() { 
 // código irrelevante 
 } 
} 
package PKGA; 
public class C { 
 private int c1; 
 private String c2; 
 public double mc01(double a, double b) { 
 // código irrelevante 
 } 
 public String mc02(String str, int ini, int param4) { 
 // código irrelevante 
 } 
} 
 
 b) 
package PKGB; 
public interface X3 { 
 public abstract int opA(); 
 public abstract double opB(int z); 
} 
package PKGA; 
import java.util.*; 
public class A { 
 int a1; 
 double a2; 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 20 de 213 
 private List<C> lc; 
 public void ma01(int x) { 
 // código irrelevante 
 } 
 public int opA() { 
 // código irrelevante 
 } 
} 
package PKGA; 
importPKGB.X3; 
public class B extends A implements X3 { 
 int b1; 
 String b2; 
 public void ma01(int x) { 
 // código irrelevante 
 } 
 public double opB(int y) { 
 // código irrelevante 
 } 
 public int opA() { 
 // código irrelevante 
 } 
} 
package PKGA; 
import java.util.*; 
 public class C { 
 private int c1; 
 private String c2; 
 private List<A> la; 
 public double mc01(double a, double b) { 
 // código irrelevante 
 } 
 public String mc02(String str, int 
 ini, int param4) { 
 // código irrelevante 
 } 
} 
 
 c) 
package PKGB; 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 21 de 213 
public interface X3 { 
 public abstract int opA(); 
 public abstract double opB(int z); 
} 
package PKGA; 
import java.util.*; 
public class A { 
 private int a1; 
 private double a2; 
 private List<C> lc; 
 public void ma01(int x) { 
 // código irrelevante 
 } 
 public int opA() { 
 // código irrelevante 
 } 
} 
package PKGA; 
import PKGB.X3; 
public class B extends A implements X3 { 
 private int b1; 
 private String b2; 
 public void ma01(int x) { 
 // código irrelevante 
 } 
 public double opB(int y) { 
 // código irrelevante 
 } 
 public int opA() { 
 // código irrelevante 
 } 
} 
package PKGA; 
public class C { 
 private int c1; 
 private String c2; 
 public double mc01(double a, double b) { 
 // código irrelevante 
} 
 public String mc02(String str, int ini, int param4) { 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 22 de 213 
 // código irrelevante 
 } 
} 
 
 d) 
package PKGB; 
public interface X3 { 
 public abstract int opA(); 
 public abstract double opB(int z); 
} 
package PKGA; 
public class A { 
 int a1; 
 double a2; 
 private C[] c; 
 public void ma01(int x) { 
 // código irrelevante 
 } 
 public int opA() { 
 // código irrelevante 
 } 
} 
package PKGA; 
import PKGB.X3; 
public class B extends A implements X3 { 
 int b1; 
 String b2; 
 public void ma01(int x) { 
 // código irrelevante 
 } 
 public double opB(int y) { 
 // código irrelevante 
 } 
 public int opA() { 
 // código irrelevante 
 } 
} 
package PKGA; 
public class C { 
 private int c1; 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 23 de 213 
 private String c2; 
 public double mc01(double a, double b) { 
 // código irrelevante 
} 
 public String mc02(String str, int ini, int param4) { 
 // código irrelevante 
 } 
} 
 
 e) 
package PKGB; 
public interface X3 { 
 public abstract int opA(); 
 public abstract double opB(int z); 
} 
package PKGA; 
import java.util.*; 
public class A { 
 int a1; 
 double a2; 
 List<C> lc; 
 public void ma01(int x) { 
 // código irrelevante 
 } 
 public int opA() { 
 // código irrelevante 
 } 
} 
package PKGA; 
import PKGB.X3; 
public class B implements A extends X3 { 
 int b1; 
 String b2; 
 public void ma01(int x) { 
 // código irrelevante 
 } 
 public double opB(int y) { 
 // código irrelevante 
 } 
 public int opA() { 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 24 de 213 
 // código irrelevante 
 } 
} 
package PKGA; 
public class C { 
 private int c1; 
 private String c2; 
 public double mc01(double a, double b) { 
 // código irrelevante 
 } 
 public String mc02(String str, int ini, int param4) { 
 // código irrelevante 
 } 
} 
 
Comentários: 
 
Primeiramente devemos entender os relacionamentos existentes: A tem referência 
para um array objetos da Classe C, privados. B é Especialização da Classe A e 
implementa a interface K3 do PKGB. Agora vamos analisar cada opção. 
 
(a) Errada. Não é A que implementa a interface K3 e sim B; (b) Errada. C está com 
referência para um array de Objetos que extendem a Classe A; (c) Errada. OS 
atributos a1 e a2 não são privado e sim default; (d) Correta; (e) Errada. A classe B 
extende a classe A e implementa a interface K3, além disso o Array de C deve ser 
privado. 
 
Gabarito: D 
 
17. (CESGRANRIO – 2012 – BNDES – Petrobras - Analista de Sistemas Júnior - 
Engenharia de Software) Um restaurante contratou uma equipe para 
desenvolver um sistema de informação que auxilie nas tarefas diárias do negócio. 
Após um levantamento inicial, a equipe listou os seguintes requisitos: 
 
▪ O caixa será responsável por encerrar uma conta e registrar o pagamento da 
mesma; 
 
▪ Caso o pagamento seja feito com cheque, será necessário que o sistema do 
restaurante se comunique com o sistema de consulta de cheques do Serviço 
de Proteção ao Lojista para obter informações sobre o cliente; 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 25 de 213 
 
▪ Caso o pagamento seja feito com cartão de crédito, será necessário que o 
sistema do restaurante se comunique com o sistema da administradora do 
cartão para obter autorização; 
 
▪ Apenas o gerente terá acesso à função de estorno do valor pago. Caso a 
despesa tenha sido paga com cartão, seránecessário se comunicar com o 
sistema da administradora; 
 
▪ Tanto o sistema da administradora de cartões como o de consulta de cheques 
serão acessados via web service; 
 
▪ O gerente também poderá encerrar uma conta. 
 
Qual diagrama de caso de uso descreve adequadamente os requisitos acima? 
 
 a) 
 
 
 
b) 
 
 
 
c) 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 26 de 213 
 
 
d) 
 
 
 
e) 
 
 
 
 
Comentários: 
 
Devemos entender o que os requisitos querem nos dizer. Se tanto o gerente quanto 
o caixa terão as mesmas funções básicas, com o gerente tendo funções exclusivas, 
então gerente é generalização de caixa, logo as alternativas A e B são eliminadas. 
Em seguida devemos perceber que há dois atores externos, o Sistema de Consulta 
de Cheques e o Sistema de Administradora de Cartões, logo eliminamos a 
alternativa E que não contempla esses atores. O conceito de web service está ligado 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 27 de 213 
a aspectos de implementação e não tem representação em UML, logo a Letra D 
está eliminada também. Por fim, nos resta a opção correta letra C. 
 
Gabarito: C 
 
18. (CESGRANRIO – 2016 – IBGE – Supervisor de Pesquisas – Tecnologia de 
Informação e Comunicação) A Figura a seguir exibe um diagrama E-R. 
 
 
 
Qual diagrama de classes conceituais UML é semanticamente equivalente ao 
diagrama acima? 
 
a) 
 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 28 de 213 
b) 
 
 
c) 
 
 
d) 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 29 de 213 
 
e) 
 
 
 
Comentários: 
 
Primeiro vamos representar cada uma das entidades A, B e C bem como dos 
relacionamentos R, S e T. Para isso, temos que representar os atributos de cada um 
deles. Notem que A-C possuem um relacionamento N:N e, nesse caso, devemos ter 
uma Entidade Associativa (S). Notem que B-B também possuem um relacionamento 
N:N, mas esse relacionamento possui um atributo t1. Logo, temos uma Associação 
Qualificada T da Entidade B que representa uma associação que se distingue das 
demais e cujo atributo só faz sentido com a existência da associação. 
 
 
 
Agora temos que representar as associações entre as entidades: 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 30 de 213 
 
 
Gabarito: E 
 
19. (CESGRANRIO – 2016 – IBGE – Supervisor de Pesquisas – Tecnologia de 
Informação e Comunicação) Qual diagrama UML contém uma associação 
ternária ou uma associação equivalente a uma ternária? 
 
a) 
 
 
b) 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 31 de 213 
 
c) 
 
 
d) 
 
 
e) 
 
 
Comentários: 
 
Para que aconteça uma relação ternária, mais de duas entidades devem estar 
relacionadas. Numa representação R2, isso é representado por um losango com três 
entidades participantes. A equivalência em UML está melhor representada pela 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 32 de 213 
primeira opção, pois as entidades A e B tem um relacionamento R1 que por sua vez 
se relaciona com C através de uma relacionamento R2. A dúvida que poderia 
aparecer seria quanto a última opção, contudo repare que embora exista o 
relacionamento V1 materializado, este não tem nenhuma ligação com o 
relacionamento V2. 
 
Gabarito: A 
 
20. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) Qual 
notação gráfica é usada em diagramas de sequência UML para representar uma 
mensagem cuja origem é conhecida, mas cujo destino se encontra fora do 
escopo das interações descritas por esses diagramas? 
 
a) 
b) 
c) 
d) 
e) 
 
Comentários: 
 
(a) Mensagem enviada de um destinatário desconhecido; (b) Mensagem enviada 
para um destinatário desconhecido; (c) Mensagem Sincrona; (d) Mensagem 
assíncrona; (e) Mensagem de Resposta. 
 
Gabarito: B 
 
21. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) No 
modelo de caso de uso da UML, o único tipo de relação permitido entre atores 
é: 
 
a) associação 
b) dependência 
c) extend 
d) include 
e) generalização 
 
Comentários: 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 33 de 213 
 
O único tipo de relacionamento entre atores em UML é a generalização. Desta 
forma, os casos de uso de B são também casos de uso de A e A tem seus próprios 
casos de uso. 
 
 
 
Gabarito: E 
 
22. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) A 
Figura a seguir exibe um diagrama de classes UML. 
 
 
 
O retângulo onde se lê a letra X, adjacente à classe A, indica que a associação 
entre A e B é: 
 
a) navegável de A para B 
b) navegável de B para A 
c) derivada 
d) qualificada 
e) uma agregação 
 
Comentários: 
 
Trata-se de uma associação qualificada em UML. Um qualificador é um atributo ou 
um conjunto de atributos cujos valores servem para partir o conjunto de instâncias 
associadas ao longo de uma associação. Os qualificadores são atributos da 
associação. Ele é representado graficamente por um retângulo na extremidade da 
associação. 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.brPág. 34 de 213 
O retângulo qualificador faz parte da associação e não dos qualificadores que 
contém. O qualificador é posicionado no extremo da classe de origem. Uma 
instância da classe de origem, junto de um valor do qualificador, permite selecionar 
univocamente um subconjunto das instâncias da classe de destino, isto é, da classe 
do outro extremo da associação. 
 
A multiplicidade afeta o destino da cardinalidade das instâncias da classe de destino, 
com base no par de informações: instância de origem e valor do qualificador. Os 
valores comuns são: 0..1: um único valor pode ser selecionado ou, eventualmente, 
nenhum; 1: um único valor tem de ser selecionado; *: o valor do qualificador é um 
índice que agrega as instâncias de destino em diferentes subconjuntos. 
 
 
 
Gabarito: D 
 
23. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) Qual 
diagrama UML contém uma composição? 
 
a) 
 
 
b) 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 35 de 213 
 
 
c) 
 
 
d) 
 
 
e) 
 
 
 
Comentários: 
 
(a) Herança\Generalização; (b) Dependência; (c) Assocaição; (d) Composição. O 
todo contém as partes (e não referências para as partes). Quando o todo 
desaparece, todas as partes também desaparecem; (e) Agregação é uma associação 
em que um objeto é parte de outro, de tal forma que a parte pode existir sem o 
todo. Lembrem-se: 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 36 de 213 
 
 
 
 
 
 
 
 
Gabarito: D 
 
24. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) Uma 
empresa que possui um site de vendas de produtos na Web desenvolveu um 
sistema de informação para registrar suas vendas e controlar a entrega das 
mesmas. Os seguintes dados são manipulados por esse sistema: 
 
▪ Cliente – todos os clientes precisam estar cadastrados no sistema para que 
possam realizar compras. Sobre um cliente precisa-se conhecer o login, a 
senha de login, o nome e o número do CPF. 
 
▪ Produtos – todos os produtos precisam estar cadastrados no sistema para 
que possam ser comprados pelos clientes. Sobre um produto precisa-se 
registrar o código de identificação, uma descrição, o preço de venda e a 
quantidade disponível para compra. 
 
▪ Transportadoras – todas as transportadoras precisam estar cadastradas no 
sistema para que possam ser escolhidas para entregar as compras dos 
clientes. Sobre uma transportadora precisa-se registrar o código de 
identificação, o nome e o número do CNPJ. 
 
▪ sistema deve registrar a quantidade de cada produto que faz parte de uma 
compra, a data da compra e o endereço de entrega da mesma. Além disso, 
ele deve registrar a transportadora escolhida pelo cliente para realizar a 
entrega. 
 
Qual diagrama de classes conceituais UML descreve corretamente o negócio 
descrito acima, sem apresentar incompletudes e redundâncias? 
 
a) 
IMPORTANTE 
 
Observem que o Relacionamento de Composição é representado por uma linha sólida 
com um diamante cheio na classe compositora. Pessoal, quando eu aprendi isso, decorei 
assim: Diamante Cheio = Composição. Portanto, Diamante Vazio = Agregação. 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 37 de 213 
 
 
b) 
 
 
c) 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 38 de 213 
 
 
d) 
 
 
e) 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 39 de 213 
 
 
Comentários: 
 
Primeiro, notem que toda vez que a questão diz que algo precisa estar cadastrado 
no sistema, nós podemos considerar que se trata de uma entidade que precisa ser 
persistida, logo seriam classes. Qual o erro da Letra B? Transportadora não se 
relaciona com o produto, mas com a compra; Qual o erro da Letra C? Ele considera 
Transportadora como um atributo da compra e, não, uma entidade; Qual o erro da 
Letra D? A questão diz que o sistema deve registrar a quantidade de cada produto 
que faz parte de uma compra, ou seja, a quantidade é um atributo do 
relacionamento PRODUTO-COMPRA e, não, PRODUTO-COMPRA-CLIENTE, 
portanto tem que estar em uma entidade associativa; Qual o erro da Letra E? A 
questão diz que o sistema deve registrar a quantidade de cada produto que faz 
parte de uma compra, ou seja, a quantidade é um atributo do relacionamento 
PRODUTO-COMPRA e, não, PRODUTO-COMPRA-CLIENTE, portanto tem que estar 
em uma entidade associativa. 
 
Galera, eu honestamente não gosto dessa questão. A maneira que é descrita a parte 
final é desleixada e deixa ambígua a modelagem. 
 
Gabarito: A 
 
25. (CESGRANRIO – 2014 – CEFET-RJ – Técnico em Tecnologia de Informação) Uma 
faculdade decidiu alterar seu sistema acadêmico, atualmente escrito em Delphi, 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 40 de 213 
para aceitar uma interface Web. Para isso, decidiu adotar as tecnologias Ajax e 
PHP. A primeira parte do trabalho será alterar o subsistema de avaliação, 
chamado de NOTAS. O modelo de dados atual desse subsistema é bastante 
simples, e é descrito pelo modelo diagrama a seguir, que usa a notação IDEF1X. 
 
 
 
Qual modelo de classes UML apresenta associações entre as classes que 
representam relacionamentos equivalentes àqueles existentes entre as entidades do 
mesmo nome no DER do sistema Notas? 
 
a) 
 
 
b) 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 41 de 213 
 
 
c) 
 
 
d) 
 
 
e) 
 
 
Comentários: 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.brPág. 42 de 213 
 
Vejamos a definição de uma composição: 
 
- A Composição é uma agregação mais forte; nela, a existência da Parte NÃO faz 
sentido se o Todo não existir. 
 
- O losango preenchido fica posicionado do lado do Todo. 
 
Voltando à questão, vamos pensar: Aluno, Turma e Prova TÊM nota, logo o TODO 
é Aluno, Turma e Prova e a PARTE é nota. (1) Faz sentido a entidade Nota continuar 
existindo sem que a entidade Turma exista? Não! Galera Nota não existe sem Aluno, 
Turma e Prova – logo isso é uma Composição. Portanto a representação é uma 
linha sólida com um diamante cheio do lado do todo... Letra A. 
 
Gabarito: A 
 
26. (CESGRANRIO – 2014 – CEFET-RJ – Técnico em Tecnologia de Informação) Uma 
universidade decidiu alterar seu sistema acadêmico, atualmente escrito em 
Delphi, para aceitar uma interface Web. Para isso, decidiu adotar as tecnologias 
Ajax e PHP. A primeira parte do trabalho será alterar o subsistema de avaliação, 
chamado de NOTAS. O modelo de dados atual desse subsistema é bastante 
simples, e é descrito pelo modelo diagrama a seguir, que usa a notação da 
Engenharia da Informação. 
 
 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 43 de 213 
Para reconstruir a representação em DER dos dados do subsistema NOTAS de 
acordo com um Diagrama de Classes de UML, como deve ser representada a 
associação entre uma classe Nota e uma classe Turma, de forma a manter 
significado equivalente ao do relacionamento entre as entidades de mesmo 
nome? 
 
a) 
b) 
c) 
d) 
e) 
 
Comentários: 
 
O relacionamento entre Nota e Turma é 1:N - uma turma tem zero ou várias notas, 
mas uma nota é de necessariamente uma turma. Essa modelagem é meio esquisita, 
mas representa que a nota que compõe a turma e não o contrário. Logo, losango 
preenchido do lado da Turma. 
 
Gabarito: B 
 
27. (CESGRANRIO – 2014 – CEFET-RJ – Técnico em Tecnologia de Informação) Qual 
diagrama de estados UML não possui erros sintáticos nem erros semânticos? 
 
a) 
 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 44 de 213 
b) 
 
 
c) 
 
 
d) 
 
 
e) 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 45 de 213 
 
 
Comentários: 
 
(b) Não pode haver dois nós de início (distintos); (c) Não há definido evento, guarda 
ou ação de transição do estado ST1 para o ST2 nem do ST1 para o ST3; (d) Não 
pode haver condição de guarda (booleana) do nó de início para o estado inicial; (e) 
Não pode haver transição do nó de final para um estado intermediário. 
 
Gabarito: A 
 
28. (CESGRANRIO – 2014 – Banco da Amazônia – Técnico em Tecnologia de 
Informação) 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) 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 46 de 213 
 
 
b) 
 
 
c) 
 
 
d) 
 
 
e) 
 
 
 
Comentários: 
 
Galera, observando a quarta informação, temos que – caso um carnê seja excluído 
do sistema – todos os boletos que o compõem também deverão ser excluídos. 
Dessa forma, sabemos que o relacionamento entre Boleto e Carnê é uma 
Composição, i.e., um boleto não existe sem um carnê ou a parte não existe sem o 
todo. O único item que representa corretamente a composição é o Item C. 
 
Gabarito: C 
 
29. (CESGRANRIO – 2014 – Banco da Amazônia – Técnico em Tecnologia de 
Informação) Seja o seguinte diagrama de sequência UML: 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 47 de 213 
 
 
Qual mensagem é do tipo lost message? 
 
a) 1 
b) 2 
c) 3 
d) 4 
e) 5 
 
Comentários: 
 
A mensagem vinda de TA não chega a TB, logo se trata de uma Lost Message. 
 
Gabarito: B 
 
30. (CESGRANRIO – 2016 – UNIRIO – Técnico em Tecnologia de Informação) Qual 
diagrama UML contém uma composição? 
 
a) 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 48 de 213 
 
 
b) 
 
 
c) 
 
 
d) 
 
 
e) 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 49 de 213 
 
 
 
Comentários: 
 
(a) Herança\Generalização; (b) Dependência; (c) Associação; (d) Composição. 
Lembrem-se do Diamante Cheio = Composição; (e) Agregação. 
 
Gabarito: D 
 
31. (CESGRANRIO – 2012 – EPE – Analista de Gestão Corporativa – Tecnologia da 
Informação) Considere um sistema de software que foi modelado com o 
seguinte diagrama de casos de uso: 
 
 
 
Ator 2 pode participar em interações com esse sistema que envolvam 
comportamentos do(s) caso(s) de uso: 
 
a) W, apenas. 
b) W e X, apenas. 
c) V e W, apenas. 
d) U, W, X, Y e Z, apenas. 
e) U, V, W, X, Y e Z. 
 
Comentários: 
 
Por se tratar de uma Herença entre o Ator 1 (Pai) e o Ator 2 (Filho), todos os casos 
de uso com os quais o Ator 1 participar, o Ator 2 (Filho) também participará. Assim, 
devemos definir quais interações o Ator 1 tem e somá-las às interações do Ator 2. 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 50 de 213 
O Ator 1 tem interaçõescom o caso de uso X, que é uma generalização de Y e Z, 
logo o Ator 1 tem interações com X, Y e Z. 
 
Além disso o caso de uso Z tem uma relação de inclusão com o caso de uso U, logo 
o Ator 1 também tem interação com este. Assim, o Ator 1 se tem interações com X, 
Y, Z e U. O Ator 2 além das interações do Ator 1, tem interações com o caso de uso 
W e sua extensão V (observe que a questão pergunta quais interações o Ator 2 
pode se envolver). Logo, ele tem interações com X, Y, Z, U, W e V. 
 
Gabarito: E 
 
32. (CESGRANRIO – 2014 – LIQUIGÁS – Profissional Júnior – Análise de Sistemas) 
Qual diagrama UML está em conformidade com os artefatos normalmente 
produzidos pela disciplina de análise e especificação de requisitos? 
 
a) Diagrama de classes contendo as classes de domínio e as classes do 
subsistema responsável pela persistência dos dados. 
 
b) Diagrama de sequência que ilustre as interações entre os componentes de um 
framework da camada de apresentação e os objetos controladores de casos de 
uso. 
 
c) Diagrama de estados que ilustre a visão externa do comportamento de um 
sistema. 
 
d) Diagrama de componentes que mostre como as classes de domínio estão 
distribuídas pelos componentes de um sistema. 
 
e) Diagrama de implantação que ilustre os nós da rede de computadores do 
cliente e a distribuição dos componentes por esses nós. 
 
Comentários: 
 
Pessoal, esta questão está bem ruim, mas vamos ver cada opção: 
 
(a) Fase de Projeto da solução; (b) Fase de Implementação da solução e codificação; 
(c) Fase inicial para entender os fluxos do sistema e seus estados; (d) Fase de 
Implementação da solução e codificação; (e) Fase Final antes da entrega. 
 
Gabarito: C 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 51 de 213 
 
ACERTEI ERREI 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 52 de 213 
EXERCÍCIOS ESAF 
UNIFIED MODELING LANGUAGE 
 
1. (ESAF - 2008 – BACEN – Analista de Sistemas) A UML inclui diagramas de 
interação para ilustrar como os objetos interagem por meio de mensagens. Os 
diagramas de interação constituem uma generalização de dois tipos de 
diagramas especializados na UML: Diagrama de Seqüência e Diagrama de 
Comunicação. 
 
Assinale a sentença que se refere exclusivamente a um Diagrama de 
Comunicação. 
 
a) Cada mensagem entre objetos é representada com uma expressão de 
mensagem em linha sólida, com seta cheia, entres as linhas de vida verticais. 
b) A notação UML para chamadas assíncronas é uma mensagem com seta 
traçada. 
c) Os participantes da linha da vida devem representar um objeto, não uma 
coleção. 
d) A ordem das mensagens é ilustrada com números de seqüência. 
e) A barra de especificação de execução indica o foco de controle. 
 
Comentários: 
 
(a) Linha de Vida é exclusividade do Diagrama de Sequência; (b) Notação para 
chamadas assíncronas se referem exclusivamente ao Diagrama de Sequência; Linha 
de Vida novamente é exclusividade do Diagrama de Sequência; (d) Perfeito, a ordem 
das mensagens é ilustrada com números de sequência; (e) Barra de Especificação é 
exclusiva do Diagrama de Sequência. 
 
Gabarito: D 
 
2. (ESAF - 2010 – SUSEP – Analista de Sistemas) O Diagrama de Estado mostra: 
 
a) os estados expressos que os objetos de uma dada classe podem assumir e as 
transformações entre pares de classes 
 
b) os estados admissíveis que os atributos de uma dada classe podem modificar 
e os pares de estados mais relevantes. 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 53 de 213 
 
c) os estados de atualização que os objetos de qualquer classe podem assumir 
e as transições permitidas entre instâncias. 
 
d) os estados admissíveis que os objetos de uma dada classe podem assumir e 
as transições permitidas entre pares de estados. 
 
e) os estados coerentes com os objetos priorizados e as restrições de transições 
entre pares de estados. 
 
Comentários: 
 
Conforme vimos em aula, ele mostra os estados admissíveis que os objetos de uma 
dada classe podem assumir e as transições permitidas entre pares de estados. 
 
Gabarito: D 
 
3. (ESAF - 2012 – CGU – Analista de Sistemas) 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: 
 
A UML incorpora um prefixo (+, -, ~, #) a um nome de atributo ou nome de 
operação (método). 
 
Gabarito: A 
 
4. (ESAF - 2010 – MPOG – Analista de Sistemas) Na UML – Unified Modelling 
Language: 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 54 de 213 
 
a) um atributo representa operações entre objetos. 
b) um atributo representa informações sobre um objeto. 
c) um atributo possui várias classes. 
d) não existem atributos não numéricos. 
e) atributos são classes abstratas. 
 
Comentários: 
 
Um atributo representa informações (dados) sobre um objeto – trata-se do estado 
de um objeto. 
 
Gabarito: B 
 
5. (ESAF - 2012 – CGU – Analista de Sistemas) 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. 
 
Comentários: 
 
Conforme vimos em aula, uma associação é um relacionamento estrutural entre 
objetos e especifica os objetos de uma classe que estão ligados a objetos de outra 
classe. Em outras palavras, uma população variada de vínculos (links) de 
relacionamentos entre instâncias de classes (objetos). 
 
Gabarito: B 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 55 de 213 
6. (ESAF - 2012 – CGU – Analista de Sistemas) Quanto ao uso dediagramas na UML 
para a modelagem de objetos é correto afirmar que o Diagrama de Seqüência: 
 
a) descreve a funcionalidade do sistema percebida por atores externos. 
 
b) apresenta a interação de seqüência de tempo dos objetos que participam na 
interação. 
 
c) apresenta a interação de seqüência de atores que participam na interação. 
 
d) descreve a funcionalidade do sistema percebida por atores internos. 
 
e) apresenta a interação de seqüência estática de pacotes, relacionamentos e 
instâncias. 
 
Comentários: 
 
O Diagrama de Sequência é um diagrama de interação que captura o 
comportamento de um único cenário, mostrando vários exemplos de objetos e 
mensagens que são trocadas dentro de caso de uso. Ele modela a interação entre os 
objetos, permitindo a visualização da execução de um ponto específico da aplicação, 
com ênfase na ordem temporal. 
 
Conforme vimos em aula, ele apresenta a interação de sequência de tempo dos 
objetos que participam na interação. 
 
Gabarito: B 
 
ACERTEI ERREI 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 56 de 213 
EXERCÍCIOS FCC 
UNIFIED MODELING LANGUAGE 
 
1. (FCC - 2010 – DPE/SP – Análise de Sistemas) Na UML os diagramas servem para 
capturar diferentes visões do sistema. NÂO é um diagrama UML: 
 
a) Diagrama de Métodos. 
b) Diagrama de Classes. 
c) Diagrama de Objetos. 
d) Diagrama de Sequência. 
e) Diagrama de Estados. 
 
Comentários: 
 
Conforme vimos em aula, não existe Diagrama de Métodos. 
 
Gabarito: A 
 
2. (FCC- 2012 – TRE/PI – Análise de Sistemas – IV) Um diagrama de objetos é um 
tipo especial de diagrama, composto por objetos e seus vínculos, que 
compartilha as mesmas propriedades comuns a todos os outros diagramas. 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 57 de 213 
Comentários: 
 
Diagramas de Objetos podem ser vistos como especiais por serem uma instância 
do Diagrama de Classes ou por conterem valores específicos ao objeto em si. Ele, 
de fato, é composto de objetos e seus vínculos e compartilha as mesmas 
propriedades comuns a todos os outros diagramas. Professor, que propriedades? 
 
Grady Booch afirma: 
 
“Um diagrama de objetos é um tipo especial de diagrama e compartilha as mesmas 
propriedades comuns a todos os outros diagramas – ou seja, um nome e o conteúdo 
gráfico que formam uma projeção em um modelo. O que distingue um diagrama de 
objetos de todos os outros tipos de diagramas é o seu conteúdo particular”. 
 
Gabarito: C 
 
3. (FCC – 2008 – TCE/AL - Análise de Sistemas) Um diagrama de objetos: 
 
a) tem a mesma função que um diagrama de atividades diferenciando deste 
apenas na representação gráfica. 
 
b) capta um conjunto de abstrações como um grupo de interesse e em tal 
contexto expõe sua semântica e seus relacionamentos com outras abstrações 
existentes nesse grupo da mesma forma que em um diagrama de classes. 
 
c) exibe um único conjunto de objetos relacionados uns com os outros em um 
determinado momento. 
 
d) mostra a seqüência de execução de atividades entre objetos relacionados, no 
tempo, e a duração de cada objeto por meio de linhas de vida. 
 
e) exibe diversos conjuntos de objetos relacionados uns com os outros em um 
determinado momento. 
 
Comentários: 
 
(a) Não, completamente errado! Um diagrama é estrutural com o objetivo de 
modelar o fluxo de atividades de um sistema e o outro é comportamental com o 
objetivo de modelar o relacionamento entre objetos de um sistema em um dado 
instante de execução; (b) Galera... já ouviram falar em gerador de lero-lero? Pois é, 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 58 de 213 
nada nesse item faz sentido! (c) Perfeito, é exatamente isso! Por que ele diz um único 
conjunto de objetos? Porque são apenas aqueles objetos instanciados em um dado 
momento da modelagem; (d) Sequência de execução de atividades? No tempo? 
Linhas de vida? Trata-se de Diagrama de Sequência; (e) Na verdade, é apenas um 
conjunto de objetos relacionados em um determinado momento. 
 
Gabarito: C 
 
4. (FCC- 2009 – MEC – Análise de Sistemas) A UML define em sua versão 2.0, treze 
tipos de diagramas. Acerca do Diagrama de Objetos da UML, assinale a 
alternativa correta: 
 
a) O Diagrama de Objetos mostra a configuração de nós de processamento em 
tempo de execução. 
 
b) O Diagrama de Objetos representa retratos estáticos de instâncias de itens 
encontrados em diagramas de classes. 
 
c) O Diagrama de Objetos representa uma visão dinâmica da interface entre 
objetos e funcionalidades do sistema. 
 
d) O Diagrama de Objetos tem por propósito focalizar um fluxo de atividades 
que ocorrem internamente em um processamento, dentro de um período de 
tempo. 
 
e) O Diagrama de Objetos descreve o comportamento de objetos como reação 
a eventos discretos, por meio de sequências de estados e ações que ocorrem 
durante sua vida. 
 
Comentários: 
 
Costuma-se dizer que o diagrama de objetos representa uma fotografia estática do 
sistema em um dado momento de execução, portanto esses diagramas não refletem 
o sistema genericamente, mas de forma específica – em um determinado instante. 
Como ele mostra instâncias, em vez de classes, ele é frequentemente chamado 
Diagrama de Instâncias. 
 
(a) Diagrama de Implantação; (b) Perfeito; (c) Diagrama de Estrutura Composta; (d) 
Diagrama de Tempo; (e) Diagrama de Máquina de Estados. 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 59 de 213 
Gabarito: B 
 
5. (FCC - 2011 - TCE-PR - Analista de Controle - Informática) Em UML 2.3, o 
Diagrama de Perfil é um diagrama pertencente à categoria Diagrama de: 
 
a) Estrutura estática, sendo usado para mostrar a estrutura de um sistema sob o 
nível mais baixo dos classificadores. 
 
b) Comportamento e mostra a estrutura interna de um classificador e o 
comportamento de uma colaboração. 
 
c) Comportamento, descrevendo a estrutura interna de uma classe e as 
colaborações que esta estrutura torna possível. 
 
d) Comportamento, sendo utilizado para descrever o hardware utilizado em 
implementações de sistemas e os ambientes de execução. 
 
e) Estruturas, que opera no nível metamodelo permitindo definir estereótipos 
personalizados, valores etiquetados e restrições. 
 
Comentários: 
 
Diagramas Estruturais: representam aspectos estáticos do sistema sob diversas visões 
diferentes. Em outras palavras, esses diagramas apresentam a estrutura do sistema 
inalterada há qualquer momento por não levarem em consideração o tempo em sua 
representação. São eles: Componente, Classes, Implantação, Perfil, Objetos, Estrutura 
Composta e Pacotes. 
 
O Diagrama de Perfilpermite representar esses novos elementos, operando no nível 
de metamodelos. Imaginem que eu quero utilizar a UML para representar uma rede 
de computadores. A UML tem símbolos para representar roteadores, switches, etc? 
Não! Para tal, podem-se utilizar estereótipos. Como? Ora, eu desenho um retângulo 
e escrevo nele a expressão <<roteador>> ou <<switch>>. 
 
Conforme vimos em aula, trata-se de um Diagrama Estrutural! Ademais, ele 
realmente opera no nível de metamodelo para definir estereótipos, etc. 
 
Gabarito: E 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 60 de 213 
6. (FCC – 2014 – TRT/1 – Analista de Sistemas) Diagramas de casos de uso 
constituem-se em um tipo de diagrama definido na UML. Segundo a UML 2.4.1, 
em um diagrama de casos de uso, 
 
a) um ator pode ser representado apenas pelo símbolo do “stick man”. 
 
b) só pode haver representado um único ator. 
 
c) o número de atores e de casos de uso sempre deve ser o mesmo. 
 
d) só pode haver representado um único caso de uso. 
 
e) um ator pode ser representado pelo “stick man” ou por um retângulo com a 
expressão <<actor>>. 
 
Comentários: 
 
A UML oferece diversos estereótipos padronizados, podemos citar 
<<interface>>, <<extends>> e <<include>>. No entanto, vamos supor que 
haja um relacionamento Pessoa saca Dinheiro. Não há um 
estereótipo <<sacar>>, todavia ele pode ser criado e representado 
usando Diagramas de Perfil por meio da expressão 
<<estereótipo>>. Continuando: se eu não quiser representar um 
ator por meio de um stickman, eu posso utilizar um retângulo 
com o nome <<ator>> ou <<stickman>>. 
 
Conforme vimos em aula, um Diagrama de Casos de Uso pode ter diversos atores 
e diversos casos de uso, inclusive pode ter mais de um ator por caso de uso! E como 
representar um caso de uso? Ora, através de um stickman ou através de estereótipos, 
i.e., um retângulo com o nome <<actor>>. 
 
Gabarito: E 
 
7. (FCC - 2013 – TRT/12 - Análise de Sistemas) A UML é utilizada para modelar 
sistemas orientados a objetos. Um de seus diagramas é usado como técnica para 
descrever lógica de procedimento, processo de negócio e fluxo de trabalho. Esse 
diagrama, de várias formas, desempenha um papel semelhante aos fluxogramas, 
mas a principal diferença entre esse diagrama e a notação de fluxograma é que 
o diagrama suporta comportamento paralelo. O diagrama citado é o de: 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 61 de 213 
a) Máquina de Estados. 
b) Atividades 
c) Sequência. 
d) Distribuição 
e) Componentes. 
 
Comentários: 
 
O Diagrama de Atividades descreve lógica de procedimento, processo de negócio e 
fluxos de trabalho. De várias formas, eles desempenham um papel semelhante aos 
fluxogramas, mas se diferenciam, pois suportam comportamentos paralelos. Mas o 
que é uma atividade? É um comportamento parametrizado representado como um 
fluxo coordenado de ações. 
 
Conforme vimos em aula, trata-se claramente do Diagrama de Atividades. 
 
Gabarito: B 
 
8. (FCC - 2014 – AL/PE - Análise de 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: 
 
MODIFICADOR CLASSE SUBCLASSE PACOTE TODOS 
UML PÚBLICO + X X X X 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 62 de 213 
PROTEGIDO # X X 
 PACOTE ~ X X 
PRIVADO – X 
 
JAVA 
PÚBLICO + X X X X 
 PROTEGIDO # X X X 
 DEFAULT ~ X X 
PRIVADO - X 
 
Conforme vimos em aula, já é possível matar a questão pelo primeiro item – 
Protegido (#). 
 
Gabarito: D 
 
9. (FCC - 2013 – TRT/12 - Análise 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: 
 
Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um 
conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses 
diagramas apresentam como os processos do programa se relacionam com o passar 
do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, 
Comunicação, Interação Geral e Tempo. 
 
Conforme vimos em aula, são Diagramas Comportamentais: Sequência, Casos de 
Uso e Atividade. 
 
Gabarito: D 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 63 de 213 
10. (FCC - 2013 – AL/RN - Análise 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: 
 
Diagramas Comportamentais: representam aspectos dinâmicos do sistema como um 
conjunto de mudanças no tempo. Podemos dizer em outras palavras que esses 
diagramas apresentam como os processos do programa se relacionam com o passar 
do tempo. São eles: Máquina de Estados, Casos de Uso, Atividade, Sequência, 
Comunicação, Interação Geral e Tempo. 
 
Conforme vimos em aula, são Diagramas Comportamentais: Comunicação, Caso de 
Uso e Estados. 
 
Gabarito: E 
 
11. (FCC - 2012 – TRF/2 - Análise de Sistemas) Uma classe pode relacionar-se com 
outras de diferentes maneiras, utilizando notações gráficas, tais como: 
 
 
Diego Carvalho
Aula 06
Engenharia de Software e Desenvolvimento de Sistemas p/ BRB (Analista TI) Com Videoaulas- Pós-Edital
www.estrategiaconcursos.com.br
1177579
CARGO – ÓRGÃO/ANO 
Curso de Engenharia de Software e Desenvolvimento 
Prof. Diego Carvalho – Aula ?? 
 
Prof. Diego Carvalho www.estrategiaconcursos.com.br Pág. 64 de 213 
 
I, II e III referem-se,

Continue navegando