Pular para o conteúdo

Provas

← Voltar para a lista de provas

BANRISUL 2025 — Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software — Prova Objetiva — Conhecimentos Específicos

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Cebraspe2025

50 questões nesta prova · página 1 de 3 · 47 com gabarito

Engenharia de Software Metodologias Ágeis — Modelo Iterativo e Incremental

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

No contexto de desenvolvimento de software, uma equipe que busca entregar incrementos contínuos e se adaptar rapidamente às mudanças do mercado deve priorizar a utilização de um modelo que possibilite
Selecione uma alternativa

Resolução comentada

O modelo iterativo e incremental permite entregas contínuas e adaptação.

Para entregar incrementos contínuos e se adaptar a mudanças, o adequado é um ciclo iterativo e incremental, com pequenas entregas regulares ajustadas pelo feedback do cliente, base das metodologias ágeis.

Análise das alternativas

B) Documentação completa antecipada e sem mudanças é característica do modelo tradicional. C) Planejamento rígido e sequencial descreve o modelo cascata. D) Requisitos fixos e pouca interação com o cliente contrariam o agilismo. E) Revisão só ao final reduz a capacidade de adaptação.

Referência: Manifesto Ágil; Sommerville – Engenharia de Software.

Resolução comentada do VaiConcursos.

Engenharia de Software Scrum — Papéis

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

No framework Scrum, entre os papéis bem definidos para a execução do projeto, o profissional responsável por garantir que a equipe esteja aplicando corretamente os princípios e práticas do Scrum, ajudando a remover impedimentos e promovendo a colaboração, é denominado
Selecione uma alternativa

Resolução comentada

O Scrum Master garante a aplicação do Scrum e remove impedimentos.

O Scrum Master é responsável por promover e apoiar o Scrum, ajudando o time a entender e aplicar suas práticas, removendo impedimentos e favorecendo a colaboração.

Análise das alternativas

A) Gerente de projeto não é um papel do Scrum. B) Analista de negócios também não é papel do Scrum. C) O Product Owner gerencia o Product Backlog e maximiza o valor do produto. D) Os Desenvolvedores constroem o incremento.

Referência: Guia do Scrum.

Resolução comentada do VaiConcursos.

Engenharia de Software TDD (Test-Driven Development)

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

No desenvolvimento de software, a prática de TDD (Test-Driven Development) tem como característica principal um fluxo estruturado de criação de código baseado em testes. Se uma equipe adotar os princípios do TDD, então ela deverá iniciar o desenvolvimento de um novo recurso, por meio
Selecione uma alternativa

Resolução comentada

No TDD, os testes automatizados são escritos antes do código.

O TDD segue o ciclo red-green-refactor: escreve-se primeiro um teste automatizado que falha, depois o código mínimo para passar e, por fim, refatora-se. Assim, o teste guia a implementação conforme os requisitos.

Análise das alternativas

A) Testes exploratórios manuais não são o ponto de partida do TDD. C) Código antes dos testes é o fluxo tradicional (test-last). D) TDD dispensa planejamento extensivo antecipado. E) Revisão por pares antes de qualquer teste não caracteriza o TDD.

Referência: Kent Beck – Test-Driven Development: By Example.

Resolução comentada do VaiConcursos.

Engenharia de Software Kanban — Limitação do WIP

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

Um dos principais objetivos de uma equipe que utiliza o Kanban como abordagem ágil de desenvolvimento é otimizar o fluxo de trabalho e reduzir gargalos no processo. Nesse caso, para atingir essa meta, a equipe poderá utilizar como estratégia
Selecione uma alternativa

Resolução comentada

Kanban otimiza o fluxo limitando o WIP.

Limitar o trabalho em progresso (WIP) é prática central do Kanban: evita sobrecarga, expõe gargalos e faz as tarefas fluírem de modo eficiente.

Análise das alternativas

A) Revisão de código não é o método principal do Kanban para o fluxo. B) Hierarquia fixa e sem desvios contraria a flexibilidade do Kanban. D) Requisitos rígidos antecipados são típicos de abordagens tradicionais. E) Sprints de duração fixa são do Scrum.

Referência: David Anderson – Kanban; Guia Kanban.

Resolução comentada do VaiConcursos.

Banco de Dados SQL — Funções de Agregação

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Questão anulada

Sabendo que as funções de agregação em SQL são aplicadas em um grupo de valores e um único valor retorna para cada grupo, assinale a opção em que é apresentada a função de agrupação que leva em consideração os valores nulos existentes.
Selecione uma alternativa

Banco de Dados SQL — Junções (JOIN)

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

Três tabelas. Tabela I, Clientes, com colunas IdCliente, Nome, Endereco, Cidade e CEP: 1, Jose Silva, Av Rio Branco 200, Rio de Janeiro, 21200; 2, Maria Silveira, Av Contorno 100, São Paulo, 11901; 3, Rita Castro, Rua Sao Joao 132, Brasilia, 71000. Tabela II, Pedidos, com colunas IdOrdem, IdCliente, IdVendedor e Data: 101, 3, 55, 2025-03-01; 102, 23, 23, 2025-05-02; 103, 1, 67, 2025-01-23; 104, 24, 37, 2024-12-11; 105, 2, 23, 2024-11-10; 106, 3, 21, 2025-05-10. Tabela III, Resultado, sem cabeçalho de colunas: Jose Silva, Rio de Janeiro, 2025-01-23; Maria Silveira, São Paulo, 2024-11-10; Rita Castro, Brasilia, 2025-03-01; Rita Castro, Brasilia, 2025-05-10.

Com base nas informações nas tabelas I e II, precedentes, assinale a opção em que são apresentados comandos SQL que permitem a obtenção do resultado demonstrado na tabela III.
Selecione uma alternativa

Banco de Dados Índices e Otimização de Consultas

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

Suponha a existência de uma tabela de um banco de dados relacional no qual esteja armazenado um volume muito grande de dados, em muitas linhas de registros. Nessa situação, considerada a otimização do acesso aos dados dessa tabela,
Selecione uma alternativa

Resolução comentada

Novos índices podem degradar operações de escrita.

Índices aceleram leituras, mas cada INSERT, UPDATE e DELETE precisa atualizá-los, além de ocuparem espaço. Um índice desnecessário ou mal escolhido pode, portanto, piorar o desempenho geral.

Análise das alternativas

B) Em tabelas grandes os índices são justamente muito úteis. C) Vários índices em excesso prejudicam as escritas. D) 'Sempre' é incorreto, pois o otimizador pode não usar o índice e há custo de manutenção. E) Indexar todas as colunas é má prática.

Referência: Boas práticas de indexação em SGBDs relacionais.

Resolução comentada do VaiConcursos.

Banco de Dados Índices Funcionais

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

Em bancos de dados com suporte à indexação funcional,
Selecione uma alternativa

Resolução comentada

Índice funcional é criado sobre o resultado de uma função aplicada à coluna.

Em índices funcionais (baseados em função), o índice armazena o valor calculado por uma expressão ou função sobre a coluna, como UPPER(nome), permitindo que consultas que usam essa mesma expressão aproveitem o índice.

Análise das alternativas

B) Colunas com NULL podem ser indexadas funcionalmente. C) Pode-se indexar colunas de vários tipos, como texto e datas. D) Basta o comando CREATE INDEX, sem procedimento armazenado. E) Todo índice guarda uma cópia dos valores indexados, então isso não é característica distintiva do funcional; a alternativa A é a definição correta.

Referência: Oracle: function-based indexes; PostgreSQL: expression indexes.

Resolução comentada do VaiConcursos.

Banco de Dados Arquitetura de Banco de Dados — Níveis de Abstração

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

Na arquitetura de banco de dados relacional, a camada de abstração de dados tem como principal objetivo
Selecione uma alternativa

Resolução comentada

A abstração oculta a camada física, oferecendo visão lógica ao usuário.

O principal objetivo da abstração de dados é esconder detalhes de armazenamento e implementação, permitindo que os usuários trabalhem com uma visão lógica dos dados (independência de dados).

Análise das alternativas

A) Interface amigável é questão de ferramentas, não o objetivo da abstração. B) Balanceamento de carga é infraestrutura/cluster. C) Automatizar backups é administração. E) Armazenar consultas frequentes temporariamente é cache.

Referência: Silberschatz – abstração de dados e independência de dados.

Resolução comentada do VaiConcursos.

Banco de Dados Arquitetura de Banco de Dados — Níveis de Abstração

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

Na arquitetura de banco de dados relacional, composta por vários elementos dispostos em camadas, a camada lógica tem como função
Selecione uma alternativa

Resolução comentada

A camada lógica define tabelas, relacionamentos e restrições de integridade.

No modelo em camadas (físico, lógico e de visão/externo), o nível lógico descreve a estrutura do banco: tabelas, colunas, relacionamentos e restrições de integridade, independentemente de como os dados são armazenados fisicamente.

Análise das alternativas

B) Desempenho é tarefa de ajuste (tuning), não função específica da camada lógica. C) Visões específicas para usuários pertencem ao nível externo/de visão. D) Armazenamento físico em disco é da camada física. E) Controle de concorrência é função do gerenciador de transações do SGBD.

Referência: Arquitetura de três esquemas (ANSI/SPARC) – Elmasri/Navathe; Silberschatz.

Resolução comentada do VaiConcursos.

Banco de Dados Normalização e Desnormalização

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

Em uma grande empresa, a prática mais adequada para o balanceamento entre normalização e desempenho em consultas de um banco de dados, considerando-se que o negócio exige leitura intensa e baixa taxa de atualização, seria
Selecione uma alternativa

Resolução comentada

Desnormalização controlada equilibra normalização e desempenho em leitura intensa.

Com leitura intensa e poucas atualizações, o custo da redundância é baixo e o ganho de desempenho é alto. Por isso, permitir desnormalizações controladas, como colunas duplicadas, é a prática mais adequada.

Análise das alternativas

A) Indexar todas as colunas prejudica escrita e espaço. B) Abandonar as formas normais em um único JSON é extremo e arriscado. C) Normalizar até a 5FN prioriza integridade e pode prejudicar o desempenho de leitura. E) Restringir-se a NoSQL não é necessário, e bancos relacionais bem ajustados atendem.

Referência: Modelagem de dados: normalização e desnormalização.

Resolução comentada do VaiConcursos.

Banco de Dados Normalização e Desnormalização

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

Um administrador de banco de dados pretende melhorar o desempenho de relatórios executivos que são lidos com muita frequência e executam joins complexos. Para tanto, ele considera desnormalizar algumas tabelas.
Nessa situação hipotética,
Selecione uma alternativa

Resolução comentada

Desnormalização duplica dados de forma controlada para acelerar relatórios.

Para relatórios muito lidos e com joins custosos, a desnormalização cria tabelas de relatório com dados duplicados, trocando redundância controlada por desempenho de leitura.

Análise das alternativas

A) Não é necessário limitar a tabelas temporárias. B) Eliminar as tabelas originais é inviável e desnecessário. C) Manter só joins complexos ignora o objetivo de melhorar o desempenho. E) Indexar todas as tabelas é excessivo e não resolve a desnormalização.

Referência: Modelagem de dados: normalização e desnormalização; data warehouse.

Resolução comentada do VaiConcursos.

Engenharia de Software Princípios SOLID

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

Julgue os itens a seguir, de acordo com o princípio da responsabilidade única (PRS) do SOLID.
I Uma classe deve ser aberta para extensão, mas fechada para modificação.
II Objetos em um programa devem ser substituíveis por instâncias de seus subtipos sem alteração da correção do programa.
III Uma classe deve depender de abstrações, e não de implementações concretas.
Assinale a opção correta.
Selecione uma alternativa

Resolução comentada

Os três itens descrevem outros princípios (OCP, LSP, DIP), não o SRP.

O princípio da responsabilidade única diz que uma classe deve ter apenas um motivo para mudar. O item I descreve o aberto/fechado (OCP), o II descreve a substituição de Liskov (LSP) e o III descreve a inversão de dependência (DIP). Nenhum se refere ao SRP.

Análise das alternativas

B) O item I é do OCP. C) O item II é do LSP. D) I e III pertencem a outros princípios. E) II e III pertencem a outros princípios.

Referência: Princípios SOLID (Robert C. Martin).

Resolução comentada do VaiConcursos.

Programação JavaScript — Funções e Callbacks

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Questão anulada

<html>
<script type="text/javascript" >
function passo1(valor) {
return valor + 2;}
function passo2(valor) {
return valor + 3;}
function passo1a(valor, callback) {
const resultado1a = valor + 2;
callback(resultado1a);}
function passo2a(valor, callback) {
const resultado1a = valor + 3;
callback(resultado1a);}
let resultado1 = 0 ;
resultado1 = passo1(resultado1);
resultado1 = passo2(resultado1);
console.log('resultado1: ${resultado1}');
passo1a(0,(resultado1a) => {
passo2a(resultado1a,(resultado2) => {
console.log('resultado2: ${resultado2}');
});
});
</script>
</html>

Assinale a opção em que é apresentado o resultado que aparecerá no console de um navegador caso o código precedente seja salvo em um arquivo .html e esse arquivo seja aberto nesse navegador.
Selecione uma alternativa

Programação C# — Herança e Sobrescrita de Métodos

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

public class Pessoa{
protected string cpf = "444.555.666-77";
protected string nome = "Pedro Maria Silva";
public virtual void GetInfo(){
Console.WriteLine($"Nome: {nome}");
Console.WriteLine($"CPF: {cpf}");
}
}
class Colaborador : Pessoa {
public readonly string id = "ABC567EFG";
public override void GetInfo(){
base.GetInfo();
Console.WriteLine($"ID colaborador: {id}");
}
}
class TestClass
{
static void Main()
{
Colaborador E = new Colaborador();
E.GetInfo();
}
}

Assinale a opção em que é apresentado o resultado da execução do código em C# precedente.
Selecione uma alternativa

Resolução comentada

Chamada de base.GetInfo() mais a linha adicional do ID.

O objeto Colaborador chama o GetInfo sobrescrito, que executa base.GetInfo() (imprime nome e CPF) e depois imprime o ID do colaborador. Saída: nome, CPF e ID.

Análise das alternativas

A) Omitiria a linha do ID. C) Omitiria a chamada ao base. D) e E) Mostrariam só parte da saída.

Referência: C#: virtual, override e base.

Resolução comentada do VaiConcursos.

Programação Programação Orientada a Objetos — Encapsulamento

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

public class aluno {
private String nome;
private int idade;
public String getNome() { return nome; }
public void setNome(String nome) {
this.nome = nome; }
public int getIdade() { return idade; }
public void setIdade(int idade) {
if (idade > 0) { this.idade = idade; }
}
}

Assinale a opção em que é citada a propriedade da programação orientada a objetos evidenciada no código Java precedente.
Selecione uma alternativa

Resolução comentada

O código evidencia o encapsulamento.

Os atributos são privados e acessados por getters e setters públicos, com validação no setIdade (só aceita idade > 0). Isso caracteriza o encapsulamento: ocultar o estado interno e controlar o acesso a ele.

Análise das alternativas

A) Não há objeto de outra classe como atributo. B) Não há interface. C) Não há extends. D) Não há sobrescrita ou uso de tipos distintos.

Referência: POO: encapsulamento.

Resolução comentada do VaiConcursos.

Programação CSS — Seletores

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

Assinale a opção correspondente ao caractere utilizado em CSS3 como seletor universal.
Selecione uma alternativa

Resolução comentada

O seletor universal em CSS é o asterisco (*).

O * seleciona todos os elementos do documento, sendo o seletor universal do CSS.

Análise das alternativas

B) ':' inicia pseudo-classes e pseudo-elementos. C) '@' inicia at-rules (@media, @import). D) '.' seleciona por classe. E) '#' seleciona por id.

Referência: CSS3: seletores.

Resolução comentada do VaiConcursos.

Programação HTML5 — Elementos Semânticos

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

Assinale a opção em que é apresentada a tag que, em HTML5, representa um conteúdo independente de um documento.
Selecione uma alternativa

Resolução comentada

<article> representa conteúdo independente e autocontido.

Em HTML5,

marca conteúdo completo e independente, que poderia ser distribuído isoladamente, como uma notícia, post ou comentário.

Análise das alternativas

A)

Referência: Especificação HTML5: elementos semânticos.

Resolução comentada do VaiConcursos.

Programação Programação Orientada a Objetos — Composição

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Gabarito disponível

Em Java, uma composition
Selecione uma alternativa

Resolução comentada

Composition em Java é manter referência de uma classe dentro de outra.

Em Java, composition é a técnica em que uma classe possui, como atributo, uma referência a outra classe, expressando a relação 'tem um'.

Análise das alternativas

A) Descreve o Collections Framework. B) Descreve a desserialização. C) Descreve a abstração. D) Descreve o princípio da responsabilidade única.

Referência: Java: composição de classes.

Resolução comentada do VaiConcursos.

Programação C# — Reflexão

Cebraspe 2025

Banco do Estado do Rio Grande do Sul S.A. (BANRISUL) · Técnico em Tecnologia da Informação II — Área 2: Desenvolvimento de Software

Questão anulada

Assinale a opção em que é indicado o recurso da linguagem C# que permite a um código inspecionar e manipular sua própria estrutura e comportamento em tempo de execução.
Selecione uma alternativa