Questões de Concurso Sobre engenharia de software
Foram encontradas 14.490 questões
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.
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:
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
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
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
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,
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
Selecione a alternativa que indica ferramentas usadas exclusivamente no gerenciamento de configurações.
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,
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
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.
Os testes unitários representam
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.
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
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:
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
O comando que copia os commits mais recentes do repositório local para um repositório remoto é o
São eventos Scrum:
Os três principais valores do XP são