Questões de Concurso Sobre arquitetura de software
Foram encontradas 8.215 questões
Uma equipe de engenharia DevOps está implantando uma aplicação web em um cluster Kubernetes, utilizando objetos do tipo Deployment para garantir alta disponibilidade e atualização controlada da aplicação.
Durante a implantação, foi utilizado o seguinte manifesto Kubernetes:
Considerando os conceitos de Pods, Deployments e exposição de aplicações em Kubernetes, analise as afirmativas a seguir.
I. A partir do campo replicas: 3, o Kubernetes deverá manter três Pods derivados do template especificado em spec.template, cada um executando um contêiner com a imagem nginx:1.25.
II. O campo selector.matchLabels determina quais Pods pertencem ao Deployment, devendo corresponder aos rótulos definidos em spec.template.metadata.labels.
III. A definição containerPort: 80 faz com que o Kubernetes crie automaticamente um Service para permitir acesso externo à aplicação.
IV. O Deployment gerencia a execução dos Pods por meio de ReplicaSets, responsáveis por garantir que o número desejado de réplicas esteja em execução.
V. No Kubernetes, contêineres podem ser executados diretamente nos nós do cluster, sem necessidade de encapsulamento em Pods.
Assinale a alternativa CORRETA:
Em arquiteturas modernas baseadas em microsserviços, é comum a utilização de uma API Gateway, que atua como um ponto único de entrada para requisições externas. Esse componente integra a camada de middleware, sendo responsável por funções como roteamento de requisições, autenticação, transformação de mensagens, controle de acesso e aplicação de políticas de segurança, permitindo que clientes acessem múltiplos serviços de backend de forma transparente.
Considere o seguinte exemplo de configuração simplificada de um gateway para registrar um serviço e criar uma rota de acesso:

Clientes podem acessar o serviço por meio do endpoint:

O gateway encaminhará automaticamente a requisição para o serviço backend correspondente.
Com base no funcionamento de API Gateways em arquiteturas distribuídas, analise as afirmativas a seguir.
I. A configuração apresentada permite que o cliente acesse o recurso /usuarios pelo gateway, sem precisar conhecer diretamente o endereço ou a porta do serviço backend responsável pelo processamento da requisição.
II. A presença da API Gateway na arquitetura implica que os serviços internos deixam de se comunicar diretamente entre si, passando toda interação obrigatoriamente pelo gateway.
III. A centralização do acesso aos serviços em uma API Gateway possibilita a implementação de mecanismos comuns, como autenticação, registro de logs e limitação de requisições, em um único ponto da arquitetura.
Assinale a alternativa CORRETA:
Entre as soluções utilizadas para comunicação assíncrona estão os message brokers, que implementam o modelo de fila de mensagens, no qual produtores enviam mensagens para uma fila e consumidores as processam posteriormente.
Considere o seguinte código em Python, que utiliza a biblioteca pika para consumir mensagens de uma fila em um broker implementado com RabbitMQ.
Esse código ilustra um consumidor de mensagens que se conecta a um broker RabbitMQ e recebe mensagens publicadas em uma fila.
Com base no conceito de middleware e no funcionamento de sistemas de mensageria em arquiteturas distribuídas, analise as afirmações a seguir:
I. O programa estabelece uma conexão com um servidor de mensageria e passa a atuar como consumidor de mensagens da fila denominada “tarefas”.
II. Para toda mensagem entregue ao consumidor a partir da fila tarefas, a função callback será executada para processar o conteúdo recebido.
III. A utilização de um middleware de mensageria como o RabbitMQ implica que produtores e consumidores precisam estar em execução simultaneamente para que a comunicação ocorra de maneira síncrona.
Assinale a alternativa CORRETA.
Assinale a alternativa correta considerando o requisito segurança e sua relação com a arquitetura de software.
Ao avaliar a eficiência e a confiabilidade de uma arquitetura de sistemas, o analista deve considerar que:
Com base nos conceitos relacionados aos fundamentos da computação, julgue o item a seguir.
No modelo PaaS, o provedor abstrai a infraestrutura subjacente ao desenvolvedor, sem afastar, em regra, a necessidade de configuração lógica dos serviços consumidos pela aplicação.
I.O método POST não é considerado idempotente, pois múltiplas requisições idênticas podem resultar em múltiplas alterações no estado do servidor.
II.Os métodos GET e PUT são considerados idempotentes, pois múltiplas requisições idênticas produzem o mesmo efeito no estado do recurso.
III.A idempotência de um método HTTP refere-se ao efeito no estado do recurso no servidor, não implicando a obrigatoriedade de respostas idênticas em requisições repetidas.
É correto o que se afirma em:
I.Uma mensagem SOAP é composta por um elemento Envelope, que pode conter um Header opcional e um Body obrigatório.
II.O protocolo SOAP pode ser transportado sobre diferentes protocolos de aplicação, como HTTP e SMTP.
III.O elemento Body de uma mensagem SOAP pode conter múltiplos elementos raiz independentes, desde que pertençam a namespaces distintos.
É correto o que se afirma em:
Ao projetar um novo sistema para um ministério, o arquiteto de software precisa decidir entre uma arquitetura monolítica e uma arquitetura de microsserviços. O sistema terá módulos com diferentes demandas de escalabilidade: um módulo de consulta pública com picos de acesso sazonais e um módulo de processamento em lote com uso intensivo de CPU. A equipe de desenvolvimento é grande e distribuída.
Analise as seguintes proposições sobre a escolha do padrão arquitetural indicada para este cenário:
I. Uma arquitetura monolítica seria a indicada, pois a implantação única facilita a gestão da infraestrutura e garante a consistência transacional entre os módulos, mesmo que isso signifique escalar a aplicação como um todo para atender aos picos de um único módulo.
II. A arquitetura de microsserviços é a escolha ideal, pois permite escalar o serviço de consulta pública de forma independente do serviço de processamento em lote, otimizando o uso de recursos. Além disso, facilita o trabalho paralelo de equipes distribuídas em serviços autônomos.
III. A complexidade da comunicação entre serviços e a necessidade de um gateway de API para expor as funcionalidades ao cliente são desvantagens da arquitetura de microsserviços que a tornam inviável para o setor público, que preza pela simplicidade operacional.
Está correto o que se afirma em:
I. Web Services são projetados para serem independentes de plataforma e linguagem de programação, permitindo que diferentes sistemas e aplicativos se comuniquem entre si.
II. HTML, XML e JSON são exemplos de formatos adotados por Web Services para enviar e receber dados.
III. REST é um estilo arquitetural para sistemas distribuídos, muitas vezes utilizado para construir Web Services leves e escaláveis.
IV. Um dos princípios de REST é a adoção de URL única para acesso a todos os recursos (dados, serviços).
Na arquitetura e no projeto de software, a aplicação de Padrões de Projeto (Design Patterns) é fundamental para resolver problemas recorrentes com soluções previamente testadas e otimizadas pela engenharia. Contudo, a eficácia dessas soluções depende da escolha do padrão correto para o cenário arquitetural adequado, evitando a inserção de complexidade desnecessária no código. Relacione a Coluna 1 à Coluna 2, associando os padrões de projeto às suas respectivas situações de aplicabilidade prática.
Coluna 1
1. Singleton.
2. Factory Method.
3. Observer.
Coluna 2
( ) Quando a mudança do estado interno de um objeto precisa ser percebida (mas com baixo acoplamento) por outros objetos, gerando um gatilho para, por exemplo, criação de outros objetos, execução de funções ou recuperação de uma instância única de um objeto, entre outros.
( ) Quando for necessário que uma única instância possa ser visível e acessível globalmente, não sendo possível instanciar duas ou mais instâncias distintas da mesma classe.
( ) Quando uma classe quer delegar a criação de objetos para suas subclasses, encapsulando o conhecimento sobre as subclasses criadas em uma única superclasse.
A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
No contexto do padrão arquitetural MVC (Model-View-Controller), analise as assertivas abaixo e julgue-as em Verdadeiras (V) ou Falsas (F):
( ) O Model encapsula os dados da aplicação e pode incluir regras de negócio associadas a esses dados.
( ) A View é responsável por controlar o fluxo da aplicação e tratar as entradas do usuário.
( ) O Controller é responsável pela apresentação dos dados ao usuário por meio da interface.
( ) O padrão MVC organiza o sistema em componentes com responsabilidades distintas, favorecendo manutenção e evolução.
Qual alternativa preenche, CORRETAMENTE, de cima para baixo, os parênteses acima?
No contexto dos Padrões de Projeto (Design Patterns), as soluções são classificadas em categorias conforme seu propósito na construção e organização de sistemas orientados a objetos. Diante disso, relacione os padrões da Coluna I às suas respectivas categorias, dispostas na Coluna II:
Coluna I:
(1) Padrões Criacionais.
(2) Padrões Estruturais.
(3) Padrões Comportamentais.
Coluna II:
( ) Singleton.
( ) Adapter.
( ) Observer.
( ) Strategy.
( ) Flyweight.
( ) Builder.
Qual alternativa preenche, CORRETAMENTE, de cima para baixo, os parênteses acima?