Foram encontradas 91.005 questões
Resolva questões gratuitamente!
Junte-se a mais de 4 milhões de concurseiros!
Sobre as três primeiras formas normais do modelo relacional, analise as assertivas abaixo:
I. Para que um modelo relacional esteja na 1ª FN, cada atributo deve ser estritamente atômico, ou seja, indivisível. Na prática, não pode haver uma lista de valores dentro de um único campo (multivalorados) nem subestruturas (compostos), garantindo que cada interseção entre linha e coluna contenha um único valor do seu domínio.
II. Para que um modelo relacional esteja na 2ª FN, é necessário que ele já respeite a 1ª FN e que todo atributo que não faz parte da chave primária seja parcial ou funcionalmente independente dessa chave. Ou seja, basta que o atributo dependa de apenas um pedaço da chave composta para que a regra seja cumprida.
III. Para que um modelo relacional esteja na 3ª FN, é necessário que, além de estar na 2ª FN, nenhum atributo não principal seja transitivamente dependente da chave primária. Ou seja, se um campo não é chave, ele deve depender diretamente da chave primária, e não de outro campo que também não é chave.
Quais estão corretas?
Durante a apresentação do projeto conceitual de um novo banco de dados, uma analista instrui sua equipe sobre a correta representação das regras de negócio da organização utilizando o modelo Entidade-Relacionamento (ER). O foco do alinhamento recai sobre as restrições estruturais e a fundamentação teórica das associações. Considerando as orientações da profissional, analise as assertivas a seguir:
I. A analista esclareceu como a equipe deve classificar as associações de acordo com a quantidade de conjuntos de entidades envolvidos, conceito conhecido como grau do relacionamento. Como exemplo prático, ela mencionou que conexões simultâneas entre três entidades distintas configuram um arranjo ternário (ou de grau três), ao passo que vínculos restritos a apenas dois conjuntos devem ser nomeados como binários.
II. No que diz respeito aos relacionamentos binários, o time foi orientado a aplicar as razões de cardinalidade para delimitar o limite máximo de ocorrências de associação nas quais uma dada entidade pode figurar. Seguindo essa lógica, a analista reforçou que os desenvolvedores devem modelar o projeto apoiando-se nas proporções clássicas: um-para-um (1:1), um-para-muitos (1:N), muitos-para-um (N:1) e muitos-para-muitos (M:N).
III. Ao detalhar a restrição de participação — métrica que indica se a existência de um dado no banco depende de sua vinculação a outro —, a profissional definiu que ela estabelece o teto absoluto (valor máximo) de associações permitidas por entidade. Além disso, determinou como padrão que os colaboradores categorizassem essa participação no projeto sob dois prismas estruturais: dinâmica ou estática.
Quais estão corretas?
O desenvolvimento de um sistema gerenciador de banco de dados robusto exige que a modelagem dos dados siga um ciclo de vida estruturado, partindo da abstração das regras de negócio até a especificação de como os dados serão armazenados em disco. Sobre as etapas fundamentais do projeto de um banco de dados, analise as assertivas abaixo:
I. A fase inicial consiste em levantar requisitos de dados com o cliente. É recomendado que o levantamento dos requisitos funcionais (operações e transações) sejam feitos em etapas posteriores para não gerar confusões nos tipos de requisitos.
II. O projeto conceitual utiliza modelos de dados de alto nível para criar uma descrição concisa das necessidades da organização. Por omitir propositalmente os detalhes de implementação e armazenamento, o esquema conceitual atua como uma excelente ferramenta de comunicação para validar os requisitos junto aos usuários não técnicos.
III. A transição para a implementação real do software inicia-se na fase de projeto lógico (também chamada de mapeamento do modelo de dados), momento em que o esquema conceitual é transformado para o modelo de dados suportado pelo SGBD comercial adotado pela instituição, a exemplo do modelo relacional.
IV. No projeto físico, a atenção dos arquitetos de banco de dados volta-se para a infraestrutura e o desempenho, especificando as estruturas de armazenamento internas, a organização dos arquivos, os caminhos de acesso e a criação de índices.
Quais estão corretas?
Um dos maiores benefícios dos sistemas de controle de versão distribuídos é a capacidade de alternar rapidamente entre diferentes contextos de trabalho. Considere o seguinte cenário:
Um desenvolvedor estava trabalhando ativamente em um repositório local, inserindo código na branch novo-botao-save. Antes de concluir a funcionalidade, recebeu um chamado urgente para corrigir um bug crítico na tela de login que já estava em produção. Para resolver o problema partindo de uma base de código estável, ele guardou temporariamente suas alterações inacabadas e utilizou o comando git _______ master para mudar seu diretório de trabalho para a branch principal (master). Logo em seguida, para manter o isolamento da correção, ele criou e acessou simultaneamente uma nova branch chamada correcao-bug-login por meio do comando git _______ -b correcao-bug-login. Após realizar as correções necessárias e registrar o commit localmente, ele finalizou sua tarefa atualizando o repositório remoto com a nova branch utilizando o comando git _______ origin correcao-bug-login.
Assinale a alternativa que preenche, correta e respectivamente, as lacunas do trecho acima.
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, é:
A modelagem de sistemas orientados a objetos permite visualizar a arquitetura do software sob diferentes perspectivas, facilitando a comunicação e a documentação técnica. Com base nas categorias clássicas de modelos de sistemas (interação, estrutural e comportamental) e no uso dos diagramas da UML, analise as assertivas abaixo:
I. Modelos de interação representam a comunicação entre o sistema e seu ambiente operacional ou entre os componentes internos do próprio sistema. O Diagrama de Sequência pertence a essa categoria, tendo como objetivo modelar a ordem cronológica das trocas de mensagens entre os objetos instanciados para a execução de um cenário específico.
II. Modelos estruturais descrevem a organização estática do software e a estrutura dos dados que serão processados pela aplicação. O Diagrama de Classes pertence a essa categoria, sendo o seu objetivo primordial representar graficamente as relações entre os dados, os desvios condicionais e o paralelismo das operações lógicas executadas pelos módulos do sistema.
III. Modelos comportamentais ilustram o comportamento dinâmico do sistema durante a sua execução. O Diagrama de Atividades enquadra-se nessa classificação, possuindo como objetivo detalhar o fluxo de controle de um processo de negócio ou computacional, evidenciando a sequência de ações, os desvios condicionais e o paralelismo das operações.
Quais estão corretas?
A modelagem orientada a objetos utilizando a Unified Modeling Language (UML) é uma ferramenta essencial na fase de análise e projeto de Software. O Diagrama de Classes, em particular, estabelece a estrutura estática do sistema por meio de classes, seus atributos, operações e os relacionamentos entre os objetos. Sobre as características, o nível de detalhamento e a semântica dos relacionamentos nesse diagrama, analise as assertivas abaixo e assinale V, se verdadeiras, ou F, se falsas.
( ) Para evitar os conflitos de interpretação entre os requisitos do cliente e o código que será efetivamente implementado pelos desenvolvedores, o nível de detalhamento do diagrama de classes (incluindo visibilidade de atributos, tipos de dados rigorosos e assinaturas completas de métodos) deve ser mantido invariavelmente alto desde as fases iniciais da modelagem conceitual.
( ) Na UML, o relacionamento de agregação estabelece um vínculo semântico restrito no qual ocorre uma coincidência de tempo de vida entre os objetos modelados. Nesse tipo de associação, se o objeto contêiner (o “todo”) for destruído da memória, as instâncias exclusivas que formam as suas “partes” também deverão obrigatoriamente ser destruídas, visto que não podem existir de forma independente no sistema.
( ) A relação de generalização permite a modelagem de herança estrutural e comportamental. Na construção do diagrama de classes UML, é totalmente válido modelar uma classe filha com herança múltipla (recebendo características de múltiplas superclasses), ainda que a equipe de desenvolvimento vá implementar o sistema em uma linguagem que não suporta herança múltipla de classes nativamente, como a linguagem Java.
A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
A elaboração do Documento de Requisitos exige uma separação clara entre os níveis de abstração e a natureza técnica das necessidades de um projeto. Descrições em linguagem natural e diagramas gerais são essenciais para validar a ideia com stakeholders, mas frequentemente são ambíguas e inadequadas para guiar diretamente o desenvolvimento. Essas descrições compõem os requisitos _____________. Para solucionar essa ambiguidade, elabora-se uma especificação técnica detalhada, que serve como contrato e guia exato para a equipe técnica, denominada requisitos _____________. Independentemente do nível de detalhamento documental, as necessidades também se dividem quanto à sua natureza: as descrições dos serviços exatos que o software deve fornecer e como deve reagir a entradas específicas formam os requisitos _____________. Em contrapartida, as restrições que afetam as propriedades emergentes do sistema como um todo são os requisitos ______________.
Assinale a alternativa que preenche, correta e respectivamente, as lacunas do trecho acima.
Um modelo de processo de software é uma representação abstrata que descreve uma abordagem para o desenvolvimento. Na prática, compreender as diferenças estruturais desses modelos é essencial para a escolha da metodologia adequada a cada projeto. Considerando os modelos genéricos de processo de software, analise as assertivas abaixo:
I. No modelo em cascata, o fluxo de trabalho é estruturado de forma linear e sequencial, exigindo que cada etapa fundamental seja concluída e validada individualmente antes que a fase subsequente possa ser iniciada.
II. O modelo espiral caracteriza-se pela execução de iterações de desenvolvimento focadas na rápida entrega de código e na prototipação informal, dispensando a realização de análises de riscos formais para formar uma espiral de entregas e validações rápidas.
III. O modelo de desenvolvimento incremental baseia-se na divisão do sistema em incrementos funcionais (partes autônomas), permitindo que os requisitos mais críticos ou de maior prioridade para o negócio sejam desenvolvidos e entregues nas primeiras iterações do ciclo de vida.
Quais estão corretas?
Na Educação Profissional e Tecnológica (EPT), diferentes estratégias pedagógicas são utilizadas para promover a aprendizagem prática, a integração entre teoria e prática e a interação com a sociedade. Relacione a Coluna 1 à Coluna 2, associando os conceitos às suas respectivas descrições.
Coluna 1
1. Planejamento de aulas práticas em laboratório de informática.
2. Desenvolvimento de projetos integradores de sistemas.
3. Avaliação prática de programação.
4. Pesquisa aplicada.
5. Extensão na EPT.
Coluna 2
( ) Atividades voltadas à interação entre a instituição de ensino e a comunidade, promovendo a aplicação do conhecimento para atender demandas sociais.
( ) Organização de atividades práticas em ambiente computacional estruturado, permitindo que estudantes desenvolvam habilidades técnicas por meio de experimentação e implementação de soluções.
( ) Processo de verificação das competências dos estudantes por meio da implementação, análise ou depuração de algoritmos e programas.
( ) Produção de conhecimentos ou tecnologias orientadas à solução de problemas concretos do setor produtivo ou da sociedade.
( ) Estratégia pedagógica que integra diferentes disciplinas ou conteúdos na construção de uma solução computacional ou sistema completo.
A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
Observe que a tabela MATRICULAS representa um relacionamento N–M entre estudantes e disciplinas. Considere a seguinte consulta SQL:
SELECT e.nome, d.nome FROM estudantes e JOIN matriculas m ON e.id_estudante = m.id_estudante JOIN disciplinas d ON d.id_disciplina = m.id_disciplina WHERE m.nota >= 8;
Assinale a alternativa que apresenta o resultado da consulta.
Considere o seguinte esquema de banco de dados relacional, supondo que as consultas são executadas utilizando SQL padrão (ANSI SQL):

Considere a seguinte consulta SQL:
SELECT c.nome, COUNT(p.id_pedido) AS total_pedidos, SUM(p.valor) AS total_valor
FROM clientes c
INNER JOIN pedidos p
ON c.id_cliente = p.id_cliente
GROUP BY c.id_cliente, c.nome
HAVING SUM(p.valor) > 150;
Assinale a alternativa que apresenta o resultado da consulta.
Analise a seguinte implementação em linguagem C de uma árvore binária:

Assinale a alternativa que apresenta a saída produzida pelo programa.
A criptografia é amplamente utilizada para garantir segurança em sistemas computacionais, protegendo informações contra o acesso não autorizado. Sobre criptografia simétrica e criptografia assimétrica, analise as assertivas a seguir:
I. Na criptografia simétrica, a mesma chave é utilizada tanto para criptografar quanto para descriptografar os dados.
II. Na criptografia assimétrica, utiliza-se um par de chaves matematicamente relacionadas, geralmente denominado chave pública e chave privada.
III. Em sistemas que utilizam criptografia assimétrica, a chave pública deve permanecer secreta para garantir a segurança da comunicação.
IV. Protocolos de segurança, como TLS, frequentemente utilizam criptografia assimétrica para troca segura de chaves e criptografia simétrica para a transmissão eficiente dos dados.
Quais estão corretas?