NEW
Font size
S
M
L
XL
WorksheetsRevisão N2 - AMS
Total questions: 56
Worksheet time: 2hrs 52mins
Name
Class
Date
1.
Uma rede de hotéis deseja modelar seu sistema de reservas. Um conceito fundamental é a diferença entre o 'Tipo de Quarto' (Standard, Luxo, Suite), que define preços e descrições gerais, e o 'Quarto Físico' (número 101, 102), que é ocupado por um hóspede. Se o analista modelar apenas uma classe 'Quarto' contendo tanto a descrição quanto o número e status de ocupação, qual problema de design (code smell) e manutenção ocorrerá quando o gerente quiser alterar o preço de todos os quartos 'Standard'?
a)
Redundância de dados, pois a alteração do preço exigirá atualizar centenas de objetos 'Quarto' individuais, em vez de um único objeto descritor.
b)
Acoplamento fraco, pois as instâncias de quarto ficarão independentes da descrição.
c)
Violação de encapsulamento, pois o preço se tornará público para os hóspedes.
d)
Herança cíclica, pois o quarto herdará de si mesmo.
e)
Polimorfismo excessivo, causando lentidão na busca.
2.
Em um sistema de E-commerce, um 'Carrinho de Compras' é composto por vários 'Itens'. A regra de negócio diz: 'Se o carrinho for excluído (ex: sessão expirada), os itens associados a ele devem ser destruídos imediatamente, pois não pertencem a nenhum outro lugar'. No diagrama de classes, qual conector visual deve ligar Carrinho a Item para garantir essa semântica de ciclo de vida?
a)
Uma linha simples (associação).
b)
Uma linha com um losango vazio na ponta do Carrinho (agregação).
c)
Uma linha com um losango preenchido (preto) na ponta do Carrinho (composição).
d)
Uma linha tracejada com seta (dependência).
e)
Uma linha de generalização (herança).
3.
Uma universidade precisa modelar o histórico escolar. Um aluno cursa várias disciplinas, e uma disciplina tem vários alunos. Onde deve ser armazenado o atributo 'Nota Final' e 'Frequência' desse aluno naquela disciplina específica, considerando que a nota não pertence apenas ao aluno (ele tem várias) nem apenas à disciplina (ela tem várias notas)?
a)
Na classe Aluno, como uma lista de notas.
b)
Na classe Disciplina, como um mapa de alunos.
c)
Em uma Classe Associativa ligada ao relacionamento entre Aluno e Disciplina.
d)
Criando uma subclasse AlunoAprovado que herda de Aluno.
e)
A nota deve ser calculada em tempo de execução e não armazenada.
4.
Um sistema bancário possui uma classe `Conta` com um atributo `saldo`. Para evitar que um programador júnior altere o saldo diretamente (ex: `conta.saldo = 1000000`) sem passar pelas validações de segurança e auditoria, o arquiteto definiu o atributo como `private`. Qual mecanismo deve ser exposto para permitir operações legítimas de negócio?
a)
Métodos públicos `getSaldo()` e `setSaldo(valor)` simples.
b)
Métodos públicos de negócio como `depositar(valor)` e `sacar(valor)` que encapsulam as regras e logs.
c)
Tornar o atributo `protected` para que subclasses possam alterá-lo livremente.
d)
Criar uma classe amiga (friend class) que tenha acesso total.
e)
Nenhum, o saldo nunca deve ser alterado.
5.
Em um jogo de RPG, um `Personagem` pode usar diferentes tipos de `Arma` (Espada, Arco, Machado). O método `atacar()` funciona de forma diferente para cada arma. O sistema trata todas as armas de forma genérica na classe Personagem (`minhaArma.usar()`). Qual conceito de Orientação a Objetos permite que a execução correta (corte, tiro ou golpe) aconteça sem que o Personagem precise saber o tipo exato da arma?
a)
Encapsulamento.
b)
Herança Múltipla.
c)
Polimorfismo.
d)
Agregação.
e)
Instanciação.
6.
Um sistema de RH modelou `Gerente` e `Vendedor` como subclasses de `Funcionario`. Porém, surgiu uma nova regra: um funcionário pode ser promovido de Vendedor para Gerente, ou atuar temporariamente em ambas as funções. Com a herança rígida atual, seria necessário destruir o objeto Vendedor e criar um novo objeto Gerente, perdendo a identidade. Qual abordagem de modelagem resolveria esse problema de mutabilidade de papéis?
a)
Utilizar Herança Múltipla para criar a classe `GerenteVendedor`.
b)
Substituir a herança por Composição, onde `Funcionario` possui uma lista de `Papeis` (Roles) que podem ser adicionados ou removidos.
c)
Tornar `Funcionario` uma classe abstrata.
d)
Usar uma interface `Promovivel` em todas as classes.
e)
Duplicar os dados do funcionário em duas instâncias diferentes.
7.
Em um diagrama de classes de um hospital, a classe `Medico` tem uma associação com `Paciente` com multiplicidade `1..*` do lado do Paciente e `0..1` do lado do Médico. O que essa leitura de multiplicidade informa sobre a regra de negócio?
a)
Um médico atende muitos pacientes, e um paciente pode ser atendido por vários médicos.
b)
Um médico atende no mínimo um paciente, mas um paciente pode não ter médico responsável ou ter no máximo um.
c)
Um médico pode não ter pacientes, e o paciente tem sempre um médico.
d)
Médicos e Pacientes não se relacionam.
e)
A multiplicidade está invertida e incorreta para um hospital.
8.
Durante o processo de 'Checkout de E-commerce', o sistema precisa realizar duas tarefas independentes: 'Validar Estoque' e 'Verificar Crédito do Cliente'. Ambas podem demorar e devem ser feitas ao mesmo tempo para agilizar. Após ambas terminarem com sucesso, o pedido é efetivado. Quais nós de controle da UML devem ser usados para abrir e fechar esse paralelismo?
a)
Decision (Losango) para abrir e Merge (Losango) para fechar.
b)
Fork (Barra) para abrir e Join (Barra) para fechar.
c)
Start Node para abrir e End Node para fechar.
d)
Expansion Region para ambas.
e)
Send Signal para abrir e Accept Event para fechar.
9.
No fluxo de 'Atendimento ao Cliente', se o atendente precisar solicitar uma autorização ao Supervisor, o fluxo muda da raia 'Atendente' para a raia 'Supervisor'. O que o uso de raias (swimlanes) comunica visualmente neste contexto?
a)
A duração temporal da tarefa.
b)
A mudança de responsabilidade/papel na execução da atividade.
c)
A mudança de estado do objeto.
d)
O início de um processamento paralelo.
e)
A ocorrência de um erro no sistema.
10.
Em um diagrama de atividades de 'Venda de Ingressos', após o usuário selecionar o assento, o sistema reserva temporariamente o lugar e aguarda o pagamento. Se o pagamento não ocorrer em 15 minutos, um evento de tempo (Timer) dispara. Qual elemento representa essa espera por tempo ou sinal externo?
a)
Action de Envio de Sinal (Send Signal).
b)
Action de Aceitação de Evento (Accept Event Action).
c)
Nó de Objeto.
d)
Fluxo de Controle Final.
e)
Datastore Node.
11.
Uma startup está lançando um produto inovador e precisa validar a ideia no mercado o mais rápido possível (Time-to-market), com equipe pequena e orçamento limitado. Qual estilo arquitetural é geralmente mais adequado para esta fase inicial, evitando a complexidade de sistemas distribuídos?
a)
Microservices.
b)
Monolito Modular.
c)
Arquitetura Baseada em Eventos (Event-Driven).
d)
Space-Based Architecture.
e)
Service-Oriented Architecture (SOA).
12.
Um sistema de streaming de vídeo (como Netflix ou YouTube) tem como requisito crítico a 'Latência' (iniciar o vídeo rápido) e 'Disponibilidade'. O sistema atende usuários no mundo todo. Qual tática arquitetural é essencial para atender a esses requisitos geográficos?
a)
Uso de um único banco de dados centralizado parrudo.
b)
Implementação de Content Delivery Networks (CDNs) e Caching distribuído na borda (edge).
c)
Arquitetura em Camadas estrita.
d)
Uso exclusivo de renderização no lado do servidor (SSR).
e)
Protocolo SOAP para transferência de arquivos.
13.
No modelo C4 de documentação, você precisa explicar para a Diretoria (público não técnico) como o novo sistema CRM se integra com o sistema de E-mail Marketing existente e quem são os usuários principais. Qual diagrama você deve apresentar?
a)
Nível 1: Diagrama de Contexto.
b)
Nível 2: Diagrama de Containers.
c)
Nível 3: Diagrama de Componentes.
d)
Nível 4: Diagrama de Código.
e)
Diagrama de Entidade-Relacionamento.
14.
Ao migrar um sistema legado monolítico para microserviços, você percebe que um serviço de 'Relatórios' precisa de dados que estão espalhados por 5 outros serviços (Clientes, Pedidos, Estoque, etc.). Fazer 5 chamadas de rede para gerar um relatório está deixando o sistema lento. Qual padrão arquitetural pode resolver esse problema de agregação de dados para leitura?
a)
CQRS (Command Query Responsibility Segregation) com uma base de leitura otimizada.
b)
Aumentar a memória RAM dos servidores.
c)
Voltar para o Monolito.
d)
Circuit Breaker.
e)
Singleton.
15.
No Modelo C4, o diagrama de 'Containers' mostra as unidades implantáveis. Se sua aplicação web usa um Banco de Dados Relacional (PostgreSQL) e um Banco de Dados NoSQL (Redis) para cache, como eles aparecem neste diagrama?
a)
Não aparecem, são detalhes de infraestrutura.
b)
Aparecem como dois Containers distintos, pois armazenam dados e são implantados separadamente.
c)
Aparecem dentro do container da Aplicação Web como componentes.
d)
Aparecem no diagrama de contexto como sistemas externos.
e)
Aparecem apenas no nível de código.
16.
Um sistema de vendas de ingressos para grandes shows sofre com o problema de 'Comboio': se o serviço de Pagamento ficar lento, todas as threads do serviço de Vendas ficam travadas esperando resposta, derrubando o site todo. Qual padrão de estabilidade deve ser implementado para falhar rápido e impedir que a lentidão se propague?
a)
Circuit Breaker.
b)
MVC (Model-View-Controller).
c)
Repository Pattern.
d)
Adapter.
e)
Lazy Loading.
17.
Um desenvolvedor criou uma interface 'Trabalhador' com os métodos 'codificar()' e 'gerenciarProjeto()'. A classe 'Programador' implementa ambos bem, mas a classe 'Gerente' é forçada a implementar 'codificar()' lançando uma exceção, pois gerentes não codificam. Qual princípio SOLID está sendo violado e sugere que interfaces devem ser segregadas em partes menores e mais específicas?
a)
Single Responsibility Principle (SRP).
b)
Interface Segregation Principle (ISP).
c)
Liskov Substitution Principle (LSP).
d)
Dependency Inversion Principle (DIP).
e)
Open/Closed Principle (OCP).
18.
Ao modelar uma classe 'Moeda' (Money) para um sistema financeiro, você decide que, ao somar dois valores (ex: 10 reais + 5 reais), o objeto original de 10 reais não deve ser alterado. Em vez disso, um novo objeto representando 15 reais deve ser retornado. Que padrão de projeto/conceito garante essa segurança contra efeitos colaterais indesejados?
a)
Singleton.
b)
Value Object (Objeto de Valor) com Imutabilidade.
c)
Data Transfer Object (DTO).
d)
Proxy.
e)
Decorator.
19.
Em um e-commerce, uma 'Categoria' de produtos (ex: Eletrônicos) pode conter várias subcategorias (ex: Celulares, Notebooks), que por sua vez podem ter outras subcategorias. Qual tipo de associação na modelagem de classes representa essa estrutura hierárquica onde um objeto se relaciona com outros do mesmo tipo?
a)
Associação Reflexiva (Auto-associação).
b)
Associação Bidirecional.
c)
Generalização.
d)
Realização.
e)
Dependência Cíclica.
20.
Considere o clássico problema 'Quadrado é um Retângulo'. Matematicamente sim, mas em POO, se a classe 'Quadrado' herda de 'Retângulo' e sobrescreve 'setAltura' para mudar também a largura (mantendo lados iguais), ela pode quebrar o código que espera que 'setAltura' afete apenas a altura (comportamento de Retângulo). Qual princípio adverte contra esse uso de herança onde a subclasse altera o comportamento esperado da superclasse?
a)
Princípio de Substituição de Liskov (LSP).
b)
Princípio de Inversão de Dependência (DIP).
c)
Encapsulamento.
d)
Polimorfismo Paramétrico.
e)
Coesão Lógica.
21.
Você está modelando um sistema de gestão de times esportivos. Um 'Time' é composto por 'Jogadores'. Se o Time for dissolvido, os Jogadores não deixam de existir; eles ficam livres para serem contratados por outros times. Que tipo de relacionamento UML representa corretamente esse vínculo onde a 'parte' sobrevive sem o 'todo'?
a)
Composição (Losango Preenchido).
b)
Agregação (Losango Vazio).
c)
Herança.
d)
Dependência.
e)
Realização.
22.
Sua empresa possui um sistema legado monolítico gigante e crítico que não pode ser desligado para reescrita total. A estratégia adotada é criar novas funcionalidades em microserviços modernos e, gradualmente, migrar as funcionalidades antigas, 'estrangulando' o legado até que ele possa ser desativado. Qual é o nome desse padrão de migração?
a)
Strangler Fig Pattern.
b)
Adapter Pattern.
c)
Facade Pattern.
d)
Sidecar Pattern.
e)
Anti-Corruption Layer.
23.
Você está desenvolvendo um sistema que possui uma Aplicação Web (Desktop) e um App Mobile. O App Mobile precisa de menos dados e formatos diferentes para economizar bateria e banda, enquanto a Web precisa de mais detalhes. Criar uma única API genérica para ambos resultou em ineficiência. Qual padrão arquitetural sugere criar camadas de API específicas para cada interface de usuário?
a)
API Gateway Único.
b)
Backend for Frontend (BFF).
c)
Service Mesh.
d)
Model-View-Controller (MVC).
e)
Broker Pattern.
24.
Em um sistema de contabilidade, não basta saber o saldo atual de uma conta. É exigência legal saber exatamente toda a sequência de depósitos, saques e juros que levaram àquele saldo, permitindo reconstruir o estado em qualquer ponto do tempo. Qual padrão arquitetural armazena as mudanças de estado como uma sequência de eventos imutáveis em vez de apenas o estado atual?
a)
CQRS.
b)
Event Sourcing.
c)
Active Record.
d)
Data Mapper.
e)
Transaction Script.
25.
Em uma arquitetura de microserviços, você precisa lidar com autenticação, limitação de taxa (rate limiting), cache e monitoramento para dezenas de serviços. Implementar isso em cada serviço gera duplicação e risco. Qual componente arquitetural centraliza essas preocupações transversais na entrada do sistema?
a)
Load Balancer.
b)
API Gateway.
c)
Service Registry.
d)
Circuit Breaker.
e)
Reverse Proxy simples.
26.
Diferente da 'Orquestração', onde um controlador central diz a cada serviço o que fazer, qual estilo de coordenação em microserviços permite que os serviços reajam a eventos de domínio de forma descentralizada e autônoma (ex: Serviço A publica 'PedidoCriado', Serviço B escuta e processa 'Pagamento')?
a)
Coreografia (Choreography).
b)
Master-Slave.
c)
Pipeline.
d)
Blackboard.
e)
Layered.
27.
Para desacoplar a lógica de negócio da infraestrutura de rede em microserviços (como retries, mTLS, observabilidade), utiliza-se um container auxiliar que roda ao lado do container da aplicação principal, interceptando o tráfego. Esse padrão é a base das Service Meshes. Qual é o nome desse padrão?
a)
Sidecar Pattern.
b)
Ambassador Pattern.
c)
Proxy Pattern.
d)
Facade Pattern.
e)
Decorator Pattern.
28.
No Modelo C4, muita confusão ocorre com o termo 'Container'. Um arquiteto novato desenhou um diagrama de Container e incluiu 'Docker' como um dos blocos. Segundo Simon Brown, essa interpretação está errada. O que define um 'Container' no nível 2 do C4?
a)
Um sistema operacional virtualizado.
b)
Qualquer unidade de software que seja executável/implantável separadamente (ex: Single Page App, Mobile App, Server-side Web App, Database).
c)
Uma pasta no sistema de arquivos.
d)
Um pacote Java (JAR) ou DLL.
e)
Uma classe com métodos estáticos.
29.
Você está criando um Diagrama de Componentes (Nível 3) para uma API Rest em Java Spring. O que deve ser representado como um 'Componente' neste nível?
a)
Cada método de cada classe.
b)
O servidor Tomcat onde a aplicação roda.
c)
Um agrupamento lógico de código relacionado (ex: 'PaymentController' + 'PaymentService' + 'PaymentRepository') que oferece um serviço claro.
d)
As tabelas do banco de dados individualmente.
e)
Os usuários do sistema.
30.
Por que o Diagrama de Contexto de Sistema (Nível 1) do C4 geralmente omite detalhes técnicos como protocolos (HTTP/gRPC) e formatos de dados (JSON/XML)?
a)
Porque o modelo C4 proíbe detalhes técnicos.
b)
Porque o público-alvo deste diagrama inclui stakeholders não-técnicos que precisam entender o escopo e as integrações macro, não a tecnologia.
c)
Porque protocolos mudam muito rápido.
d)
Porque isso polui o visual.
e)
Porque essas decisões ainda não foram tomadas no nível 1.
31.
No Modelo C4, como são representados os usuários humanos (Personas) e qual sua importância no Diagrama de Contexto?
a)
Não são representados, pois arquitetura é sobre software.
b)
São representados como 'Atores' (bonecos palito) ou caixas, fundamentais para mostrar quem inicia as ações e recebe valor do sistema.
c)
São representados como atributos da classe Usuário.
d)
São representados apenas nos Casos de Uso, não na arquitetura.
e)
São representados como sistemas externos.
32.
Se um arquiteto precisa mostrar como um 'Single Page Application' (SPA) no navegador interage com uma 'API Backend' e como essa API acessa um 'Banco de Dados Relacional', qual diagrama C4 é o mais apropriado para essa visão de distribuição física/lógica de alto nível?
a)
Diagrama de Contexto (Nível 1).
b)
Diagrama de Containers (Nível 2).
c)
Diagrama de Componentes (Nível 3).
d)
Diagrama de Código (Nível 4).
e)
Diagrama de Classes.
33.
Uma empresa de logística está reestruturando seu sistema de entregas. No modelo atual, 'Caminhão' herda de 'Veículo'. No entanto, a empresa adquiriu uma frota de veículos anfíbios que funcionam tanto como caminhões quanto como barcos. Tentar modelar 'VeículoAnfibio' herdando simultaneamente de 'Caminhão' e 'Barco' em linguagens como Java ou C# gera problemas. Qual conceito de Orientação a Objetos é a solução mais robusta para permitir que um objeto possua comportamentos de múltiplas fontes sem usar herança múltipla de classes?
a)
Uso de Interfaces (ou Protocols), permitindo que a classe assine contratos de comportamento de múltiplas fontes.
b)
Uso de Classes Abstratas aninhadas.
c)
Duplicação de código em ambas as classes.
d)
Uso de atributos estáticos globais.
e)
Transformar todas as classes em Structs.
34.
Em um sistema de biblioteca, a regra de negócio estabelece que um 'Livro' físico pode existir nas prateleiras mesmo que não esteja emprestado a nenhum 'Leitor'. Por outro lado, um 'Empréstimo' não pode existir sem estar vinculado a um 'Livro' e a um 'Leitor'. Analisando o tempo de vida dos objetos, qual a diferença conceitual na associação entre (Livro-Empréstimo) comparada a (Leitor-Empréstimo)?
a)
Ambas são Composições fortes, pois o Empréstimo é parte do Livro.
b)
O Empréstimo é uma entidade associativa que depende existencialmente das duas pontas (Livro e Leitor) para fazer sentido no negócio.
c)
O Livro é uma generalização do Empréstimo.
d)
O Leitor compõe o Livro, pois sem leitor não há livro lido.
e)
Não há relação direta entre eles.
35.
Um desenvolvedor modelou a classe 'Pedido' com um atributo público 'listaDeItens'. Outras partes do sistema (como a classe 'Relatorio') acessam e modificam essa lista diretamente, adicionando itens sem passar por validação de estoque. Qual princípio SOLID e de OO está sendo violado e qual a correção adequada?
a)
Violado o Princípio Aberto/Fechado (OCP). Correção: Criar uma subclasse para cada item.
b)
Violado o Encapsulamento. Correção: Tornar a lista privada e fornecer métodos como 'adicionarItem()' que encapsulam a regra de validação.
c)
Violado o Princípio de Substituição de Liskov. Correção: Remover a lista.
d)
Violado o Polimorfismo. Correção: Usar interfaces.
e)
Violada a Herança. Correção: Pedido deve herdar de Item.
36.
Em um sistema acadêmico, deseja-se modelar a situação onde 'Professor' e 'Aluno' são papéis que uma mesma 'Pessoa' pode desempenhar ao longo do tempo (aluno de mestrado pode ser professor substituto). Se modelarmos Professor e Aluno como subclasses rígidas de Pessoa (Herança), um objeto não pode ser os dois ao mesmo tempo. Qual padrão de modelagem resolve isso privilegiando Composição?
a)
Padrão Decorator ou Role Object: Pessoa 'tem' uma lista de Papéis (Roles) associados.
b)
Padrão Singleton: Garantir que só exista uma Pessoa.
c)
Padrão Factory: Criar pessoas dinamicamente.
d)
Herança Múltipla Virtual.
e)
Uso de Classes Estáticas.
37.
Analise a seguinte regra de negócio de um CRM: 'Um Cliente Corporativo possui obrigatoriamente um CNPJ, enquanto um Cliente Pessoa Física possui obrigatoriamente um CPF. Ambos possuem Nome e Endereço'. Ao modelar isso com Orientação a Objetos, qual a melhor estrutura para garantir a integridade dos dados e evitar campos nulos desnecessários?
a)
Uma única classe Cliente com campos CPF e CNPJ opcionais.
b)
Uma classe abstrata Cliente (com Nome, Endereço) e duas subclasses concretas: ClientePF (com CPF) e ClientePJ (com CNPJ).
c)
Duas classes independentes sem relação nenhuma.
d)
Uma interface Cliente implementada por uma classe BancoDeDados.
e)
O uso de um atributo genérico 'tipo' e um campo string 'identificador' sem validação.
38.
Numa modelagem de classes para um E-commerce, a classe 'CalculadoraDeFrete' não guarda estado (não tem atributos de valor), apenas métodos que recebem dados e retornam o valor do frete. Outras classes usam essa calculadora. Qual o tipo de relacionamento mais adequado da classe 'Carrinho' para com a 'CalculadoraDeFrete', considerando que o Carrinho apenas 'usa' a calculadora momentaneamente?
a)
Associação (linha contínua), mantendo a calculadora como atributo fixo.
b)
Composição (losango cheio).
c)
Dependência (seta tracejada), pois o Carrinho depende da interface da calculadora para uma operação, mas não a 'possui'.
d)
Generalização (seta vazia).
e)
Agregação (losango vazio).
39.
Considere a relação entre 'Motor' e 'Carro'. Se o carro for destruído em um compactador, o motor que está dentro dele também é destruído (no contexto do software de gestão de pátio de sucata). Se o motor pudesse ser removido e vendido separadamente antes da destruição, a relação mudaria. Para o cenário de 'destruição conjunta', qual a representação UML correta?
a)
Agregação (Losango vazio).
b)
Associação Simples.
c)
Composição (Losango preenchido).
d)
Realização.
e)
Dependência.
40.
Um arquiteto definiu uma classe abstrata 'Pagamento' com um método abstrato 'efetuarTransacao()'. As classes concretas 'PagamentoCartao', 'PagamentoBoleto' e 'PagamentoPix' implementam esse método de formas diferentes. O módulo de Checkout recebe apenas um objeto do tipo 'Pagamento' e chama 'efetuarTransacao()'. Isso exemplifica qual pilar da POO que facilita a extensibilidade do sistema?
a)
Acoplamento Estático.
b)
Polimorfismo.
c)
Encapsulamento de Dados.
d)
Herança Simples.
e)
Singleton.
41.
Em um processo de 'Solicitação de Viagem Corporativa', o funcionário preenche os dados. Em seguida, o sistema deve enviar um e-mail ao gestor E, ao mesmo tempo, registrar a solicitação no banco de dados. O fluxo só deve continuar para a próxima etapa (Aprovação) quando AMBAS as ações (e-mail e registro) tiverem sido concluídas. Que par de nós UML representa corretamente essa lógica?
a)
Nó de Decisão (Decision) para dividir e Nó de Fusão (Merge) para juntar.
b)
Nó de Bifurcação (Fork) para dividir e Nó de Junção (Join) para sincronizar.
c)
Região de Expansão.
d)
Nó Inicial e Nó Final.
e)
Raias de Piscina (Swimlanes).
42.
Um diagrama de atividades modela um algoritmo de busca. Existe um loop onde o sistema verifica o próximo item de uma lista. Se a lista acabar, o fluxo sai do loop. Qual a diferença visual na UML entre o ponto onde o fluxo se divide (Verificar se tem item) e o ponto onde o loop retorna para o início (Repetir)?
a)
Ambos usam o losango. O de divisão tem 1 entrada e 2 saídas (Decision). O de retorno tem 2 entradas e 1 saída (Merge).
b)
O de divisão é um círculo, o de retorno é um quadrado.
c)
Não há diferença, a ferramenta decide.
d)
Loops não usam losangos, usam apenas setas curvas.
e)
O Merge usa uma barra grossa.
43.
No fluxo de 'Atendimento Médico', se o paciente chegar em estado crítico (Emergência), o processo de triagem padrão deve ser interrompido imediatamente e o fluxo deve pular direto para 'Atendimento na UTI'. Qual elemento da UML 2.0 permite desenhar uma área em volta da Triagem que, ao receber um sinal de 'Emergência', aborta tudo dentro dela?
a)
Região de Atividade Interrompível (Interruptible Activity Region).
b)
Raia de Emergência (Emergency Swimlane).
c)
Nó de Decisão (Decision Node).
d)
Região de Expansão (Expansion Region).
e)
Nó Final de Fluxo.
44.
Você precisa modelar um processo de 'Auditoria' que deve processar 10.000 registros de transações financeiras. Para cada registro, aplica-se a mesma regra: 'Verificar Fraude'. Para indicar que essa ação ocorre repetidamente para a coleção inteira, qual notação é mais limpa e semanticamente correta que desenhar um loop manual?
a)
Expansion Region (Região de Expansão) com a palavra-chave <<iterative>> ou <<parallel>>.
b)
Loop Node com condição while.
c)
Fork e Join com 10.000 pernas.
d)
Nó de Objeto Múltiplo.
e)
Comentário de texto 'Repetir 10k vezes'.
45.
Em um processo de vendas, a atividade 'Calcular Impostos' é realizada pelo Sistema ERP, enquanto a atividade 'Aprovar Desconto' é realizada pelo Gerente de Vendas. Como o Diagrama de Atividades visualiza essa distinção de responsabilidade organizacional?
a)
Usando cores diferentes nas caixas.
b)
Usando Partições (Swimlanes/Raias), uma para 'Sistema ERP' e outra para 'Gerente'.
c)
Usando ícones de computador e de pessoa.
d)
Escrevendo o nome do responsável dentro de cada caixa de ação.
e)
Criando diagramas separados.
46.
Durante um fluxo de compra, o sistema chega a um ponto onde precisa aguardar que o Pagamento seja confirmado pelo banco externo. O sistema não faz nada enquanto isso, apenas espera. Qual nó representa essa espera passiva por um estímulo externo?
a)
Accept Event Action (Ação de Aceitação de Evento).
b)
Send Signal Action (Ação de Envio de Sinal).
c)
Time Event (Evento de Tempo).
d)
Decision Node (Nó de Decisão).
e)
Activity Final Node.
47.
Qual a consequência de usar um 'Activity Final Node' (Olho de Boi / Círculo com bola cheia) dentro de um ramo de um fluxo paralelo (iniciado por um Fork)?
a)
Apenas aquele ramo termina.
b)
Todo o diagrama de atividade é encerrado imediatamente, cancelando todos os outros ramos paralelos que ainda estavam rodando.
c)
O fluxo retorna ao início.
d)
O sistema entra em deadlock.
e)
Nada acontece.
48.
Em um diagrama de atividades, você vê um retângulo com o texto 'Nota Fiscal [Emitida]' conectado por uma seta a uma ação 'Enviar Email'. O que esse retângulo representa?
a)
Uma anotação (Note).
b)
Um Nó de Objeto (Object Node), indicando que a ação anterior produziu o objeto Nota Fiscal nesse estado específico.
c)
Uma Classe.
d)
Uma ação de banco de dados.
e)
Um parâmetro de entrada.
49.
Uma empresa decide migrar seu e-commerce monolítico para Microservices para permitir que equipes diferentes trabalhem em tecnologias diferentes. Porém, após a migração, percebem que para adicionar um simples campo 'Data de Nascimento' no cadastro, precisam alterar o Serviço de Cliente, o Serviço de Pedido, o Serviço de Nota Fiscal e o Frontend. Qual antipadrão arquitetural foi criado?
a)
Acoplamento Distribuído (ou Monólito Distribuído).
b)
Alta Coesão.
c)
Service Discovery Failure.
d)
Circuit Breaker.
e)
Event Sourcing.
50.
No modelo C4, o Diagrama de Contexto (Nível 1) mostra o sistema 'zoom out'. Qual elemento é fundamental nesse diagrama para entender o impacto do sistema no ambiente da empresa?
a)
As tabelas do banco de dados.
b)
As Classes principais.
c)
Os Sistemas Externos (com os quais o sistema se integra) e os Usuários (Pessoas).
d)
Os Containers Docker.
e)
As APIs REST.
51.
A Lei de Conway diz que 'o design do sistema reflete a estrutura de comunicação da organização'. Se uma empresa tem times estritamente separados por especialidade (Time de DBAs, Time de Java, Time de JavaScript), que tipo de arquitetura essa estrutura tende a produzir naturalmente?
a)
Arquitetura em Camadas (Layered), horizontalmente fatiada.
b)
Microservices independentes.
c)
Arquitetura Hexagonal.
d)
Serverless.
e)
Arquitetura Orientada a Eventos.
52.
Um sistema bancário exige que todas as transações sejam ACID (Atômicas, Consistentes, Isoladas, Duráveis). Qual estilo arquitetural torna a implementação de transações ACID distribuídas extremamente complexa e muitas vezes desencorajada em favor de consistência eventual?
a)
Microservices.
b)
Monolito Modular.
c)
Client-Server clássico.
d)
Mainframe.
e)
Desktop Application.
53.
Para documentar a arquitetura de um software, o modelo C4 propõe níveis de abstração. Se você quer mostrar para um desenvolvedor novo onde rodar o 'build' da aplicação Web e qual banco de dados ela acessa (tecnologias como React, Java Spring, PostgreSQL), qual diagrama é o mais indicado?
a)
Diagrama de Containers (Nível 2).
b)
Diagrama de Contexto (Nível 1).
c)
Diagrama de Componentes (Nível 3).
d)
Diagrama de Classes UML.
e)
Fluxograma.
54.
Em uma arquitetura Hexagonal (Ports and Adapters), a lógica de negócio (o Core/Domínio) deve ser isolada de detalhes externos como banco de dados e UI. Como o Core se comunica com o banco de dados sem depender dele diretamente?
a)
O Core define uma Interface (Porta) de Repositório, e o Banco de Dados implementa essa interface (Adaptador).
b)
O Core importa a biblioteca SQL driver diretamente.
c)
O Banco de Dados chama o Core.
d)
Não há comunicação, o Core é stateless.
e)
O Controller faz a ponte manual.
55.
Seu sistema precisa processar uploads de vídeos gigantes. O usuário faz o upload e quer continuar navegando. O processamento (transcodificação) demora minutos. Qual padrão arquitetural resolve o problema de não travar a navegação do usuário?
a)
Arquitetura Assíncrona baseada em Filas (Message Queue).
b)
Arquitetura MVC Síncrona.
c)
Chamada RPC direta bloqueante.
d)
Polling constante do cliente.
e)
Aumentar o timeout do servidor HTTP.
56.
Qual a principal diferença entre 'Escalabilidade Vertical' (Scale Up) e 'Escalabilidade Horizontal' (Scale Out) em termos de arquitetura?
a)
Vertical adiciona mais recursos (CPU/RAM) à mesma máquina; Horizontal adiciona mais máquinas ao cluster.
b)
Vertical adiciona mais máquinas; Horizontal adiciona mais CPU.
c)
Vertical é para banco de dados; Horizontal é para front-end.
d)
Vertical é feita na nuvem; Horizontal é feita on-premise.
e)
Não há diferença, são sinônimos.
Reset
