QuestLab Plataforma Inteligente de Questões
Banco público de questões

Questões para Concursos

Pesquise questões reais por disciplina, assunto, tópico, banca, órgão, cargo, ano e modalidade.

Questões por banca

29 bancas disponíveis. Clique para visualizar todas.

Encontre as questões que procura
Limpar filtros
64 questões encontradas

Uma empresa especializada em desenvolvimento de software para gestão bancária enfrenta problemas frequentes com erros inesperados em seu sistema de processamento de empréstimos. Muitos desses erros ocorrem devido a entradas inválidas, falta de validação adequada e contratos mal definidos entre os módulos do sistema. Para garantir que os componentes do software se comuniquem corretamente e respeitem regras bem definidas, o arquiteto de software propõe a adoção da Programação por Contrato (Design by Contract – DbC). Nesse contexto, o uso da Programação por Contrato (Design by Contract – DbC) é adequado pois ela

A adiciona verificações redundantes de erro em pontos aleatórios do código para evitar falhas inesperadas.
B emprega assertivas para validar entradas externas em qualquer parte do código, independentemente de sua origem, e em qualquer estágio de execução.
C implementa contratos explícitos, entre métodos e seus consumidores, definindo pré-condições, pós-condições e invariantes para garantir o correto funcionamento do sistema.
D incorpora mecanismos de confiabilidade ao final do processo de implementação e documentação, objetivando a corretude dos programas.
E utiliza exceções para capturar e corrigir automaticamente qualquer erro de entrada nos métodos.

Um técnico bancário de suporte resolveu configurar a infraestrutura de um ambiente de produção utilizando o processo de Infraestrutura como Código (IaC). Ao estudar sobre o assunto, ele descobriu que há dois tipos de abordagem para IaC: a declarativa e a imperativa. A respeito dessas abordagens, o técnico aprendeu que

A a abordagem declarativa é mais adequada para ambientes locais, enquanto a abordagem imperativa é ideal apenas para ambientes em nuvem.
B a abordagem declarativa descreve o estado final da infraestrutura, enquanto a abordagem imperativa detalha os passos para alcançar esse estado.
C a abordagem imperativa é adequada para hardware e software, enquanto a abordagem declarativa descreve os modelos de ambientes on-premises.
D a abordagem imperativa descreve apenas recursos de software, enquanto a abordagem declarativa é utilizada exclusivamente para hardware.
E ambas focam a descrição do estado final da infraestrutura, sendo que a declarativa descreve esse estado mais detalhadamente que a imperativa.

Considerando o modelo de desenvolvimento de software conhecido como RAD ( Rapid Application Development ), assinale a alternativa que corresponde à fase cujo foco é transformar os objetos de dados em modelos de dados realmente usáveis, utilizados para estabelecer o fluxo de informações de negócio para alcançar os objetivos preestabelecidos.

A Modelagem de dados
B Modelagem de processo
C Modelagem de negócio
D Geração da aplicação
E Teste e modificação

Em relação ao desenvolvimento e à manutenção de sistemas e aplicações, o processo de localizar e remover erros no código-fonte de um software é conhecido como:

A Verificação.
B Homologação.
C Validação.
D Depuração.
E Revisão.

Sobre um determinado tipo de teste de desenvolvimento de software, analise as características abaixo: • O sistema é testado como um todo. • Os testes são concentrados nas interações entre os componentes e objetos que compõem o sistema. • É um processo coletivo quando os componentes do sistema são desenvolvidos por diferentes membros do time ou por subtimes. As características acima definem o teste de:

A Unidade.
B Sistema.
C Requisitos.
D Componentes.
E Lançamento.

Ao desenvolver um sistema de software, a escolha da arquitetura é crucial para garantir que ele seja capaz de lidar com grandes volumes de dados e manter uma alta disponibilidade. O arquiteto de soluções de um projeto está encarregado de criar um sistema que não só precisa ser escalável, mas também seguro e estável ao longo do tempo. Dado esse cenário, a abordagem ideal é a de

A colocar tudo em um único servidor central, para manter todos os dados controlados em um só lugar.
B optar por uma arquitetura de microsserviços, onde cada parte do sistema pode crescer de forma independente e usar replicação para garantir que, mesmo se algo falhar, o sistema continue funcionando.
C configurar um banco de dados local em cada estação de trabalho, sem a necessidade de conectar as máquinas entre si.
D centralizar tudo em um único data center, sem planejar nenhum tipo de backup ou replicação dos dados.
E focar apenas no desempenho imediato, sem considerar se o sistema vai precisar escalar no futuro.

Desenvolvimento seguro é um conjunto de práticas que visam incorporar a segurança em todas as fases do ciclo de vida do desenvolvimento de software . As técnicas de análise de segurança de aplicações desempenham um papel crucial na identificação e mitigação de vulnerabilidades. Assinale a opção que indica a técnica usada para analisar o código-fonte de uma aplicação em busca de vulnerabilidades, sem executar essa aplicação.

A DAST (Dynamic Application Security Testing).
B SAST (Static Application Security Testing).
C IAST (Interactive Application Security Testing).
D Black Box Testing.
E Fuzz Testing.

Um empreendimento de sistemas de informação vai trabalhar com metodologias que sejam compatíveis com práticas e cultura DevOps, visando aumentar a sua capacidade de distribuir aplicativos e serviços de forma mais rápida. Para isso, ela vai aplicar as fases do ciclo de vida DevOps, sendo que vai se focar mais na fase que exige que os desenvolvedores incorporem o seu código em um repositório compartilhado, com check-in e compilação diários, permitindo detectar problemas de forma imediata, garantindo que o código principal seja sempre viável e pronto para a produção. Nesse caso, essa fase é identificada como sendo a de

A feedback contínuo.
B integração contínua.
C introdução contínua.
D monitoramento contínuo.
E operações contínuas.

Durante a fase inicial de um projeto de desenvolvimento de software , uma equipe procura empregar uma técnica de elicitação de requisitos que estimule a criatividade e encoraje a participação de todos os stakeholders para gerar um amplo leque de ideias e soluções para problemas potenciais. Essa técnica favorece um ambiente em que todas as sugestões são bem-vindas, sem críticas imediatas, permitindo que a equipe explore possibilidades inovadoras e identifique requisitos que podem não ser evidentes em uma análise inicial. A técnica descrita é conhecida como

A entrevista.
B grupo focal.
C observação.
D brainstorm.
E workshops de requisitos.

As plataformas no-code e low-code têm transformado o desenvolvimento de software, permitindo que usuários com pouca ou nenhuma habilidade de programação criem aplicativos e soluções digitais. Considerando a emergência e o impacto dessas tecnologias, analise as afirmações a seguir sobre ferramentas no-code e low-code .

I. Plataformas no-code permitem que profissionais não técnicos desenvolvam aplicativos complexos sem escrever uma única linha de código, utilizando interfaces gráficas e funcionalidades de arrastar e soltar.

II. Embora as ferramentas low-code reduzam a necessidade de codificação, elas ainda exigem algum conhecimento técnico para a implementação de funcionalidades personalizadas e integração com outros sistemas.

III. A escalabilidade e a segurança de soluções desenvolvidas com ferramentas no-code e low-code dependem unicamente das infraestruturas de cloud providas pelos fornecedores dessas plataformas, sem espaço para otimizações específicas ao contexto de uso.

IV. Embora ferramentas no-code e low-code facilitem a prototipagem e o desenvolvimento rápido, elas exigem uma compreensão detalhada dos processos de negócio para que as aplicações finais atendam efetivamente às necessidades dos usuários sem gerar redundâncias funcionais. Está correto o que se afirma em

A I e IV, apenas.
B II e III, apenas.
C I, II e IV, apenas.
D II, III e IV, apenas.
E I, II, III e IV.