Questões de Concurso Sobre engenharia de software

Foram encontradas 14.487 questões

Q3336173 Engenharia de Software

Uma das fases de um compilador é a geração de código. A respeito dessa fase considere as afirmativas abaixo:



I - Um gerador de código é composto por três tarefas principais, a saber: seleção de instrução, alocação e atribuição de registrador e escalonamento de instruções.


II - A seleção de instruções compreende a escolha de instruções apropriadas da arquitetura alvo para implementar os comandos da representação intermediária. Uma solução para esse problema é realizar a seleção de instruções por reescrita de árvore.


III - O escalonamento de instruções envolve a decisão a respeito da ordem em que a execução das instruções deve ser escalonada. Uma abordagem para resolver esse problema é o uso do algoritmo Sethi–Ullman.


IV - A alocação e atribuição de registrador decidem quais valores devem ser mantidos em registradores e quais registradores usar. Para resolver esse problema pode-se adotar estratégias de alocação de registradores por coloração de grafos.



Assinale a alternativa que apresenta apenas afirmações corretas:

Alternativas
Q3336172 Engenharia de Software

Em relação à etapa de geração e otimização de código intermediário de um compilador, analise as alternativas a seguir, assinalando V, se verdadeiras, ou F, se falsas.



( ) Uma representação intermediária normalmente é alguma combinação de uma notação gráfica e código de três endereços.


( ) Uma representação intermediária pode ser uma linguagem de alto nível ou pode consistir em estruturas de dados internas que são compartilhadas pelas fases do compilador.


( ) Árvores de sintaxe é uma das possíveis representações intermediárias utilizadas por um compilador. As árvores de sintaxe normalmente durante as análises léxica e semântica.


( ) A fase de otimização de código independente das arquiteturas de máquina alvo faz algumas transformações no código intermediário com o objetivo de produzir um código melhor. Em geral, melhor significa mais rápido. Pode-se, também, otimizar outros objetivos, tais como: menor consumo de memória ou de energia.


( ) Uma das desvantagens da aplicação da fase de geração de código intermediário é a possibilidade de realização de otimização e a tradução do código para diversas máquinas.



A ordem correta de preenchimento dos parênteses, de cima para baixo, é:

Alternativas
Q3336171 Engenharia de Software

Em relação às análises léxica e sintática, assinale a alternativa incorreta: 

Alternativas
Q3336170 Engenharia de Software

A estrutura de um compilador pode ser dividida em duas partes, a saber: análise e síntese. Em relação a parte de análise assinale a alternativa incorreta: 

Alternativas
Q3334800 Engenharia de Software
Projetar sistemas interativos é pensar nos excluídos ou, ainda, nos que poderão ser excluídos a partir do momento em que você projetar um sistema com baixa ou nenhuma acessibilidade. Disponibilizar uma gama de opções para o usuário, deixando-o escolher a que melhor corresponde às suas habilidades, reflete o seguinte princípio do Design Universal:
Alternativas
Q3334792 Engenharia de Software
Extreme Programming é uma metodologia de desenvolvimento de software que combina rapidez, produtividade, qualidade de forma simples e que atende as necessidades do cliente. Extreme Programming traz em sua base valores e práticas que sempre procuram garantir ao cliente versatilidade e satisfação com o produto final, como por exemplo: 
Alternativas
Q3331519 Engenharia de Software
Acerca dos frameworks LangChain e Llamaindex, amplamente utilizados atualmente para construir aplicação integradas a Large Language Models (LLMs), a opção que apresenta uma observação correta é:
Alternativas
Q3331328 Engenharia de Software
Sobre as redes neurais convolucionais, é correto afirmar que:
Alternativas
Q3331327 Engenharia de Software
Sobre os autoencoders, podemos dizer que:
Alternativas
Q3331325 Engenharia de Software
São desafios do processo de agrupamento de dados, EXCETO:
Alternativas
Q3331321 Engenharia de Software
Recentemente muito tem sido discutido em relação à interpretabilidade dos modelos de aprendizado de máquina. Eles têm sido comparados a caixas-pretas,pois, embora venham apresentando resultados impressionantes com sua acurácia, não se tem muitas vezes ideia do que acontece dentro deles. Em outras palavras, as previsões são úteis e precisas, mas não se sabe como elas foram feitas e quais atributos ou fatores podem ter maior influência nos resultados.
Trata-se de modelos complexos que absorvem relações não lineares e não triviais nos dados. É preciso que o analista de dados tenha uma visão crítica e entendimento dos algoritmos. Suponha que você tenha sido contratado para criar um sistema que utilize modelos de aprendizado de máquina para classificar pacientes segundo a propensão a apresentar uma determinada doença, mas um requisito essencial do sistema é que seja possível explicar claramente como se chegou a essa previsão. Dentre os seguintes algoritmos, é correto afirmar o que se utilizaria é:
Alternativas
Q3331319 Engenharia de Software
Todos podem cometer erros, inclusive os algoritmos de aprendizado de máquina. Existem técnicas que podem ser usadas para aumentar nossa confiança de que eles farão previsões confiáveis. A ideia é usar uma coleção de classificadores treinados em dados levemente diferentes e usar todos para avaliar cada instância de entrada. Cada um deles realiza a classificação e escolhemos a classe mais votada como resultado. É correto afirmar que contém apenas técnicas que podem ser usadas para aumentar a confiabilidade nas previsões segundo essa ideia: 
Alternativas
Q3331318 Engenharia de Software
“Sua estrutura básica é organizada em camadas. Neurônios em cada camada podem se comunicar com os neurônios da camada anterior e da próxima. É o formato desta estrutura que resulta no nome aprendizado profundo.” (Andrew Glassner)

Segundo Glassner, o que caracteriza uma rede de aprendizado profundo são: 
Alternativas
Q3331316 Engenharia de Software
Sobre a função de ativação de redes neurais, é CORRETO afirmar que:
Alternativas
Q3331314 Engenharia de Software
Observe as afirmativas a seguir, em relação a seleção de atributos para algoritmos de aprendizado de máquina:

I. Se temos atributos na base de dados que sejam redundantes, irrelevantes ou inúteis, devemos eliminá-los.
II. Podemos eliminar atributos que contribuem muito pouco na construção de um modelo como os que tem um mesmo valor na grande maioria das instâncias.
III. Os atributos removidos do conjunto de treinamento devem ser também removidos do conjunto de testes.

Sobre as afirmativas acima, pode-se dizer que:
Alternativas
Q3331214 Engenharia de Software
Para avaliar o erro de generalização de um classificador, são empregadas várias técnicas de validação. Uma delas divide o conjunto de teste em k segmentos, utilizando, em cada iteração, um segmento diferente para validação e os demais para treinamento. Outra técnica consiste em treinar o modelo com o conjunto completo, excluindo apenas um elemento, que é então usado para teste, e repetindo este processo para cada um dos elementos. Essas metodologias são reconhecidas na comunidade científica por nomes específicos. Neste contexto, são métodos de validação os abaixo relacionados, EXCETO: 
Alternativas
Q3331088 Engenharia de Software
Em relação aos testes de operações de hardware/software que devem ser realizados na validação, avalie se são verdadeiros (V) ou falsos (F) os testes a seguir:
I. Teste de queda de energia.
II. Trilhas de auditoria e registro de ações críticas, incluídas interações manuais.
III. Procedimentos de segurança.
IV. Interfaces e transferência de dados.
Os testes I, II, III e IV são respectivamente: 
Alternativas
Q3331087 Engenharia de Software
O ciclo de vida de um sistema computadorizado abrange todas as fases descritas abaixo, EXCETO:
Alternativas
Q3331066 Engenharia de Software
Observe as afirmativas a seguir, em relação à construção de um sistema de trilha de auditoria de todas as deleções ou alterações relevantes às Boas Práticas de Fabricação:
I. Para alteração ou exclusão de dados relevantes para as Boas Práticas de Fabricação, a razão deve ser documentada.
II. As trilhas de auditoria devem estar disponíveis e devem ser passíveis de serem apresentadas em um formato compreensível quando disponibilizadas.
III. As trilhas de auditoria devem ser revisadas regularmente.
Das afirmativas acima:
Alternativas
Q3331049 Engenharia de Software
Em relação ao modelo de contratação de serviços de desenvolvimento, manutenção e sustentação de software, definido na Portaria SGD/MGI nº 750/2023, é admitido em uma mesma contratação a adoção de uma ou mais modalidades padronizadas de remuneração. Nesse contexto, avalie as alternativas de modalidades a seguir:

I - para serviços de desenvolvimento e/ou manutenção, o Pagamento aferido por Pontos de Função e complementado por Horas de Serviço Técnico, vinculado ao alcance de resultados e ao atendimento de níveis mínimos de serviço.

II - para serviços de desenvolvimento e/ou manutenção, o Pagamento de valor fixo por sprint executada, vinculado a níveis mínimos de serviço.

III - para serviços de desenvolvimento e/ou manutenção e/ou sustentação, o Pagamento por alocação de profissionais de TI, vinculado ao alcance de resultados e ao atendimento de níveis mínimos de serviço.

IV - para serviços de sustentação, o Pagamento de valor fixo mensal por portfólio de softwares, vinculado ao atendimento de níveis mínimos de serviço.


Das alternativas acima, é correto afirmar que::
Alternativas
Respostas
2001: A
2002: C
2003: B
2004: D
2005: E
2006: B
2007: E
2008: B
2009: C
2010: A
2011: D
2012: E
2013: B
2014: D
2015: E
2016: E
2017: A
2018: D
2019: E
2020: E