Questões de Concurso Sobre engenharia de software

Foram encontradas 14.490 questões

Q3402435 Engenharia de Software
A codificação de software é o processo de escrever código fonte para criar programas de computador.
Relacione os elementos de codificação de software com suas respectivas definições. 

1. Codificação de software transacional 2. Codificação de software analítico 3. Codificação de software mobile 4. Codificação de API (Application Programming Interfaces)

( ) Envolve a criação de sistemas que garantem a integridade e a consistência dos dados durante operações que podem envolver múltiplas etapas ou interações com diferentes componentes, tendo como exemplos de ferramentas e tecnologias aplicadas: JDBC, SQLAlchemy e Spring Transaction Management.
( ) Envolve o uso de linguagens de programação e ferramentas específicas para cada plataforma, tendo como exemplos de ferramentas de teste: Appium, Firebase Test Lab e XCTest
( ) Envolve a criação de interfaces que permitem que diferentes sistemas de software se comuniquem entre si, tendo como Ferramentas e Tecnologias: Postman, Swagger/OpenAPI, Jest e PyTest.
( ) Envolve a criação de sistemas que processam e analisam grandes volumes de dados para extrair informações úteis e apoiar a tomada de decisões, tendo como principais conceitos: Data Warehousing, ETL (Extract, Transform, Load), Data Mining e OLAP (Online Analytical Processing).

Assinale a opção que indica a relação correta na ordem apresentada.
Alternativas
Q3402434 Engenharia de Software
Os padrões de desenvolvimento e reuso de software são práticas e técnicas que ajudam a criar softwares de maneira eficiente, facilitando a manutenção e a evolução do código. Com relação ao reuso, analise os itens a seguir.

I. Reuso de software é o processo de incorporar produtos existentes em um novo produto. Exemplos: Código; e, Especificações de Requisitos e Projeto.
II. Um dos desdobramentos do reuso de software é o conceito de ecossistema de software, que se caracteriza por conter os seguintes elementos: atores internos e externos à organização; produto de software principal; plataforma de apoio ao software; e os ativos de ecossistemas.
III. Algumas técnicas para reuso são: Bibliotecas; Frameworks; Componentes; Padrões de Software; e, Linhas de Produto de Software

Está correto o que se afirma em:
Alternativas
Q3402433 Engenharia de Software
Os testes de software são essenciais para garantir a qualidade dos códigos gerados.
Inicialmente o programador desenvolveu o seguinte código de produção a ser testado: 

CODIGO-01.py

 def celsius_to_fahrenheit(celsius):  return (celsius * 9/5) + 32

Posteriormente, o programador desenvolveu o código de teste empregando a linguagem Python

     import unittest

         class TestTemperatureConversion(unittest.TestCase):  def test_celsius_to_fahrenheit(self):

self.assertEqual(celsius_to_fahrenheit(0), 32)

self.assertEqual(celsius_to_fahrenheit(25), 77)

     if __name__ == '__main__':      unittest.main()

A abordagem do teste utilizado pelo programador se refere a um
Alternativas
Q3402430 Engenharia de Software
Em Inteligência Artificial existem diversos tipos de aprendizado sendo que cada um possui características e aplicações.
Com relação aos tipos de aprendizado, analise os itens a seguir.

I. No aprendizado não supervisionado, o agente aprende a partir de padrões na entrada, mesmo que nenhum feedback explícito tenha sido fornecido anteriormente, sendo empregadas como as técnicas mais comuns a regressão e a classificação.
II. No aprendizado acelerado, o agente usa grandes modelos de linguagens pré-existentes e aprende a partir de série de contribuições de uma rede semântica composta por conceitos, recompensas ou punições. Por exemplo, a falta de gorjeta no final da viagem dá ao agente uma indicação de que fez algo errado, cabe ao agente decidir quais das ações anteriores a contribuição foram mais responsáveis por ele.
III. No aprendizado supervisionado, o agente observa e analisa alguns pares de dados rotulados de entrada-saída como exemplo e aprende uma função que faz o mapeamento da entrada para a saída.


Está correto, o que se afirma em 
Alternativas
Q3402426 Engenharia de Software
Método Kanban é uma metodologia de desenvolvimento ágil. Com relação ao Kanban, analise os itens a seguir.

I. O método foi projetado para maximizar o impacto inicial das mudanças e reduzir a resistência à adoção das mudanças organizações. Adotar o método deve mudar a cultura da organização e ajudar a torná-la mais madura.
II. Quando os analistas implementam o Kanban pela primeira vez eles estão procurando otimizar a criação dos novos processos, alterar a cultura organizacional e substituir os processos existentes por outros que podem fornecer melhorias econômicas dramáticas.
III. O Kanban acelera a obtenção dos altos níveis de maturidade organizacional e capacidade em áreas de processo de alta maturidade fundamentais tais como Análise Causal e Resolução e Inovação Organizacional e Implantação.

Está correto o que se afirma em
Alternativas
Q3402425 Engenharia de Software
Swagger é composto por um conjunto de ferramentas de código aberto criadas em torno da especificação OpenAPI que podem ajudar os desenvolvedores a construírem, documentarem e consumirem APIs REST.
Com relação às ferramentas do Swagger, avalie as afirmativas a seguir e assinale (V) para a afirmativa e (F) para a falsa.

( ) Swagger Parser - É uma biblioteca autônoma para analisar definições OpenAPI no formato JSON ou YAML.
( ) Swagger APIDom - Fornece uma estrutura única e unificadora para descrever APIs em várias linguagens, por exemplo, RAML, API Blueprint, e formatos de serialização, como por exemplo XML, YAML ou JSON.
( ) Swagger SourceGen - Faz a geração automática de bibliotecas de cliente de APIs e stubs de servidor a partir de uma definição OpenAPI.

As afirmativas são, respectivamente,
Alternativas
Q3402421 Engenharia de Software
Um workflow no github é um processo automatizado e configurável capaz de executar jobs.
Com relação aos componentes básicos presentes nos workflows, analise os itens a seguir.

I. Event é uma atividade específica em um repositório que aciona a execução do workflow. Por exemplo, uma atividade pode se originar do GitHub quando um usuário cria uma solicitação de pull ou envia um commit para um repositório.
II. Job é um conjunto de tarefas que são executadas em um workflow por um ou mais hosts. Cada tarefa é uma ação ou shell script a ser executado na ordem em que foram definidos, sendo dependentes umas das outras.
III. Host é um servidor que executa os workflows quando são acionados pelos usuários. Cada host pode executar vários jobs de modo concorrente. O GitHub fornece hosts no Ubuntu Linux, Windows e MacOS.

Está correto, o que se afirma em
Alternativas
Q3402420 Engenharia de Software
Com o avanço da abordagem DevOps nas organizações e com o aumento da colaboração entre administradores de sistema e desenvolvedores, diversas ferramentas têm evoluído para tentar padronizar o gerenciamento automatizado de infraestrutura e suas configurações.
Selecione a alternativa que indica ferramentas usadas exclusivamente no gerenciamento de configurações.
Alternativas
Q3401879 Engenharia de Software
No desenvolvimento de aplicações web, a escolha do framework adequado é essencial para garantir eficiência, escalabilidade e manutenção do projeto.
Com relação aos frameworks, assinale (V) para afirmativa verdadeira e (F) para a falsa.
( ) Django: um framework para desenvolvimento rápido para web, escrito em PHP.
( ) Laravel: um framework Python gratuito e de código aberto para desenvolvimento de aplicações web que segue o padrão MVC.
( ) React: uma biblioteca JavaScript de código aberto com foco em criar interfaces de usuário em páginas web.
As afirmativas são, respectivamente, 
Alternativas
Q3401875 Engenharia de Software
Na modelagem orientada a objetos, os diagramas de classes da UML são ferramentas essenciais para representar a estrutura estática de um sistema, detalhando classes, atributos, operações e os relacionamentos entre elas.
Com relação aos relacionamentos de classes da UML, analise os itens a seguir.
I. Composição. II. Agregação. III. Generalização.
Sobre os relacionamentos fundamentais nesses diagramas de classes da UML, está correto o que se afirma em
Alternativas
Q3401872 Engenharia de Software
Um framework é uma estrutura predefinida que reúne ferramentas, diretrizes e práticas para facilitar a execução de tarefas ou a gestão de processos
Relacione os frameworks de testes de software com suas respectivas características.
1. JUnit 2. Mockito 3. Selenium 4. Jest
( ) Se concentra principalmente em testar interações entre objetos e dependências externas, em vez de testar unidades individuais de código.
( ) É uma estrutura de teste JavaScript projetada para garantir a exatidão de qualquer base de código JavaScript.
( ) Se concentra principalmente em testar unidades individuais de código, como métodos ou classes, isoladamente.
( ) Automatiza teste de aplicativos da web em navegadores.
Assinale a opção que indica a relação correta na ordem apresentada.
Alternativas
Q3401871 Engenharia de Software
Testes unitários (ou, testes de unidades) são scripts que verificam o funcionamento de unidades individuais de código.
Os testes unitários representam
Alternativas
Q3401870 Engenharia de Software
No universo do desenvolvimento de software são muito empregados o Desenvolvimento Orientado a Testes (TDD, TestDriven Development) e o Desenvolvimento Guiado por Comportamento (BDD, Behavior-Driven Development).
Com relação ao desenvolvimento de software empregando TDD ou BDD, analise os itens a seguir.
I. No TDD busca-se basicamente escrever um teste automatizado antes de começar a desenvolver o código de fato.
II. No TDD existe a garantia de que cobertura de testes para 100% do código, já que nada é desenvolvido sem que um teste exista antes.
III. No BDD temos a definição do que deve ser feito tecnicamente ao invés da descrição de como a funcionalidade deve se comportar.
IV. O BDD trabalha para definir como uma demanda chega ao desenvolvedor, integrar diferentes áreas da empresa e pensar a partir do ponto de vista do comportamento esperado de uma funcionalidade pelo usuário.
Está correto o que se afirma em.
Alternativas
Q3401867 Engenharia de Software
Design Orientado por Domínio (ou DDD, Domain Driven Design) é uma metodologia de desenvolvimento de software que visa criar um modelo de software que corresponda ao domínio de negócios. Com relação a Design Orientado por Domínio, analise os itens a seguir
I. O DDD se opõe à ideia de ter um único modelo para todo o sistema; em vez disso, incentiva a divisão do sistema em contextos limitados, cada um dos quais tem seu próprio modelo.
II. Durante a fase estratégica de DDD, você está mapeando fora do domínio empresarial e definindo contextos limitados para seus modelos de domínio.
III. DDD tático é quando você define os modelos de domínio com mais precisão, sendo estes padrões aplicados dentro de um único contexto limitado.
Está correto o que se afirma em
Alternativas
Q3401865 Engenharia de Software
A Programação Orientada a Objetos (POO, ou Object-oriented programming, OOP) é um paradigma de programação que usa objetos para organizar e reutilizar código.
Com relação a Programação Orientada a Objetos, analise os itens a seguir.
I. A abstração define a interface de uma classe e de seus elementos, determinando o processo de identificação de um objeto, e permite concentrar-se no que o objeto é, no que o objeto faz, sem se preocupar em como ele faz.
II. O encapsulamento contém a definição de como implementar atributos e métodos de uma classe, que serão instanciados a certo objeto
III. O acoplamento estabelece medida para avaliar o quanto duas ou mais classes estão conectadas, possibilitando executarem operações comuns, ou seja, generalização.
IV. A coesão se refere a capacidade de medir o quanto uma determinada classe ou método faz sentido.
Está correto o que se afirma em:
Alternativas
Q3401861 Engenharia de Software
Uma das ferramentas amplamente utilizadas para controlar e testar a segurança de Web Services é o SoapUI. Com relação aos tipos de testes oferecidos pela ferramenta, analise os itens a seguir.
I. Os testes do tipo to-be oferecem como vantagem a possibilidade de criação de código e testes antes da criação dos serviços web reais. os desenvolvedores podem criar testes para operações que ainda não foram implementadas enquanto desenvolvem o aplicativo.
II. Os testes do tipo load permitem que os desenvolvedores avaliem os serviços web de forma rápida e fácil usando diferentes estratégias para verificar se as funcionalidades não quebram sob cargas de trabalho distintas.
III. Os testes do tipo as-is permitem que os desenvolvedores melhorem a eficiência, segurança contra ciberataques e a usabilidade dos serviços web.
Está correto, o que se afirma em
Alternativas
Q3401858 Engenharia de Software
A ferramenta do framework Selenium que permite a execução de testes paralelos em múltiplas máquinas em diferentes plataformas é o
Alternativas
Q3401857 Engenharia de Software
Git é um sistema de controle de versões distribuído que possui vários comandos.
O comando que copia os commits mais recentes do repositório local para um repositório remoto é o
Alternativas
Q3401852 Engenharia de Software
Scrum é um método ágil, iterativo e incremental para gerenciamento de projetos que foi proposto por Sutherland e Schwaber. A definição do Scrum inclui um conjunto bem definido de papéis, artefatos e eventos.
São eventos Scrum:
Alternativas
Q3401851 Engenharia de Software
XP é um método leve, recomendado para desenvolver software com requisitos vagos ou sujeitos a mudanças, sendo definido por meio de um conjunto de valores, princípios e práticas de desenvolvimento.
Os três principais valores do XP são
Alternativas
Respostas
1281: D
1282: E
1283: E
1284: C
1285: D
1286: B
1287: A
1288: D
1289: D
1290: E
1291: C
1292: D
1293: D
1294: E
1295: E
1296: D
1297: D
1298: B
1299: B
1300: A