Questões de Concurso Comentadas sobre engenharia de software

Foram encontradas 12.717 questões

Q3368512 Engenharia de Software
No processo de evolução de software, a manutenção desempenha um papel fundamental no ciclo de vida mais avançado. A manutenção corretiva é responsável por
Alternativas
Q3368511 Engenharia de Software
Segundo o Test Driven Development, os testes unitários são 
Alternativas
Q3368510 Engenharia de Software
Para garantir a integração adequada de sistemas complexos, é essencial realizar testes de integração. Esses testes são responsáveis por verificar se
Alternativas
Q3368509 Engenharia de Software
Segundo a UML, um dos diagramas mais comuns na modelagem estrutural é o diagrama de 
Alternativas
Q3368505 Engenharia de Software
No Extreme Programming (XP), a prática de “cliente presente” é valorizada, o que significa que os clientes participam ativamente do processo de desenvolvimento. Isso proporciona benefícios, tais como:
Alternativas
Q3368504 Engenharia de Software
O Rational Unified Process (RUP) é um processo de desenvolvimento de software que fornece uma abordagem disciplinada para atribuir tarefas e responsabilidades dentro de uma organização de desenvolvimento de software. Uma das características distintivas do RUP é sua estrutura modular, que organiza o processo em diferentes disciplinas. Essas disciplinas incluem:
Alternativas
Q3368503 Engenharia de Software
Analise as afirmativas sobre modelos de processo de software.

I. O modelo cascata é um modelo de desenvolvimento de software linear e sequencial, no qual as fases do processo (como análise, projeto, implementação, teste e manutenção) são executadas em uma ordem fixa.
II. No modelo distribuído, o desenvolvimento do software é dividido em incrementos, com cada bloco entregando uma parte estrutural do sistema.
III. O modelo orientado a reuso promove a reutilização extensiva de componentes de software existentes, visando reduzir o tempo e o esforço de desenvolvimento.
IV. O modelo de cascata é flexível e adaptável a mudanças nos requisitos do cliente, permitindo ajustes em qualquer fase do processo sem impactar as fases subsequentes.

É correto apenas o que se afirma em 
Alternativas
Q3368502 Engenharia de Software
Assinale a alternativa INCORRETA sobre requisitos funcionais. 
Alternativas
Q3342319 Engenharia de Software
As boas práticas de desenvolvimento de software são essenciais para criar sistemas eficientes e sustentáveis. Sobre essas práticas, assinale a alternativa INCORRETA. 
Alternativas
Q3341350 Engenharia de Software
O Capability Maturity Model Integration (CMMI) é uma abordagem de melhoria de processos que fornece às organizações elementos essenciais de processos eficazes. Os modelos que constituem sua suíte de produtos são referenciados como constelações. O CMMI para desenvolvimento de produtos é o: 
Alternativas
Q3341343 Engenharia de Software
No contexto de DevOps, podemos obter dashboards para visualização de métricas nos nós do cluster através da ferramenta: 
Alternativas
Q3336174 Engenharia de Software

Em relação a fase de geração de código de um compilador, considere as afirmativas abaixo:



I - O problema de gerar código objeto ótimo para determinado programa fonte é indecidível. 


II - A geração de um programa em linguagem de máquina realocável, frequentemente denominado módulo objeto, permite que os subprogramas sejam compiladores separadamente. Um conjunto de módulos objeto realocáveis podem ser carregados para execução por um editor de ligação.


III - A arquitetura do conjunto de instruções da máquina alvo tem um impacto significativo sobre a dificuldade de construir um bom gerador de código que produza código de alta qualidade. As arquiteturas de máquina alvo mais comuns são: a RISC (reduced instruction set computer), a CISC (complex instruction set computer) e as baseadas em pilha.


IV - Uma arquitetura RISC (reduced instruction set computer) normalmente possui muitos registradores, instruções de três endereços, modos de endereçamentos simples e uma arquitetura do conjunto de instruções relativamente simples.



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

Alternativas
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
Respostas
1541: D
1542: A
1543: C
1544: C
1545: A
1546: B
1547: D
1548: B
1549: D
1550: C
1551: B
1552: E
1553: A
1554: C
1555: B
1556: D
1557: E
1558: B
1559: E
1560: B