Questões de Concurso Sobre desenvolvimento de software em engenharia de software

Foram encontradas 1.013 questões

Q2167091 Engenharia de Software
Um Time de Desenvolvimento de Software (TDS) segue um protocolo automatizado para gerar, testar e combinar pacotes de software gerados separadamente. Todo software combinado precisa passar por um processo que inclui uma requisição formal ao Time de Operações (TO) de um Centro de Dados para executar um conjunto de testes, com o intuito de verificar vulnerabilidades no software antes de entrar em produção. Considerando os conceitos de DevOps e DevSecOps, o TDS e o TO estão falhando no princípio:
Alternativas
Q2167016 Engenharia de Software
Analise as afirmativas abaixo sobre a ferramenta de versionamento Git e assinale a alternativa correta.
I. O Git trabalha com uma estrutura de árvores em três níveis: work directory, stage (ou index) e head. II. O comando git commit serve para enviar as alterações locais a um repositório remoto. III. O comando git pull é equivalente ao comando git fetch seguido do comando git merge. IV. O comando git reset serve para desfazer alterações, sem alterar a referência head. V. O comando git checkout pode ser utilizado para trocar de uma branch para outra.
Alternativas
Q2166330 Engenharia de Software

Analise o diagrama de sequência a seguir.

Imagem associada para resolução da questão


VALENTE, M. T. Engenharia de Software Moderna: princípios e práticas para desenvolvimento de software com produtividade. 2020.

De acordo com o diagrama, assinale a alternativa correta.

Alternativas
Q2119589 Engenharia de Software

O desenvolvimento de software envolve um conjunto de atividades de produção que estão sujeitas a falhas humanas. Para se reduzir o risco de entrega de um produto de software com falhas ou defeitos, é necessário que o processo de desenvolvimento de software seja acompanhado por uma atividade de garantia de qualidade. Na garantia de qualidade, um elemento crítico é a atividade de teste de software, destinada a descobrir os erros, falhas ou defeitos do software antes do seu uso, bem como mostrar que os requisitos do produto de software foram cumpridos e que ele faz o que é proposto a fazer. Considerando as abordagens e técnicas empregadas no teste de software analise as asserções a seguir.


I. Uma das abordagens do teste de software concentra-se nos requisitos funcionais do software, que procuram derivar conjuntos de condições de entrada, que permitam avaliar todos os requisitos funcionais do software. Os métodos empregados nessa abordagem procuram identificar funções incorretas ou ausentes, erros de interfaces, erros nas estruturas de dados ou no acesso a bancos de dados externos, erros de desempenho e erros de inicialização e término.


II. Uma técnica empregada para avaliação dos requisitos funcionais é o Teste de Caminho Básico, o qual possibilita o exame de detalhes procedimentais do projeto por meio da definição de um conjunto básico de caminhos de execução. A partir deste conjunto básico, são derivados casos de testes, garantindo executar cada instrução do programa pelo menos uma vez durante a atividade de teste.


III. O particionamento de equivalência é uma técnica que se concentra em testes de estruturas de controle. Essa técnica divide o domínio de entrada de um programa em classes de dados, a partir das quais os casos de testes são derivados. Ela baseia-se numa avaliação de classes de equivalência para uma condição de entrada, sendo que uma classe representa um conjunto de estados válidos e inválidos para as condições de entrada.


IV. A complexidade ciclomática é uma métrica de software que proporciona uma medida quantitativa da complexidade lógica de um programa. Essa métrica pode ser utilizada em algumas abordagens de testes de software, como no método de teste de caminho básico, onde o valor computado pode definir um limite máximo para o número de testes que deve ser realizado para garantir que todas as instruções sejam executadas ao menos uma vez.


São corretas apenas as asserções 

Alternativas
Q2107652 Engenharia de Software
Sobre a contagem de pontos de função, é correto afirmar que: 
Alternativas
Q2105198 Engenharia de Software
A transição de DevOps para DevSecOps requer a compreensão e utilização de técnicas e práticas específicas que podem garantir a segurança do software. Uma especialista em Engenharia de Software recomendou, dentre outras, as seguintes ferramentas e tecnologias para essa transição em uma empresa:
I. É usado para verificar o código sem realmente executá-lo. Este tipo de ferramenta ajuda a encontrar vulnerabilidades em potencial no código-fonte, evitando que ocorram várias vulnerabilidades do tipo zero-day. Common Weakness Enumeration (CWE) é uma das classificações de avisos mais comuns produzidos por estas ferramentas. CWE é uma lista oficial ou dicionário de pontos fracos de segurança comuns exploráveis por invasores para obter acesso não autorizado ao sistema.
II. Da mesma forma que as ferramentas que executam testes de caixa preta, estes analisadores dinâmicos podem identificar vulnerabilidades do programa, como injeções de SQL, estouros de buffer e similares.
III. Este tipo de ferramenta analisa o comportamento do aplicativo, implementando uma análise de segurança contínua, sendo uma das tecnologias de segurança usadas em tempo de execução.
Os itens I, II e III correspondem, correta e respectivamente, a
Alternativas
Q2105197 Engenharia de Software
Tradicionalmente, as organizações têm duas alternativas quando precisam de um novo sistema de informação: construí-lo usando seu time de desenvolvedores ou comprá-lo de um fornecedor externo. O desenvolvimento Low Code (LC) e No Code (NC) tem se despontado como uma alternativa, pois 
Alternativas
Q2098668 Engenharia de Software
O desenvolvimento de software envolve passos e procedimentos que devem ser seguidos para se obter o adequado atendimento aos requisitos estabelecidos e, por conseguinte, a satisfação de seus usuários.

Julgue os itens a seguir, relativos a técnicas, processos e ferramentas voltados para o desenvolvimento de software.


São desvantagens do ciclo de desenvolvimento em cascata que o modelo iterativo e incremental procura atenuar: pouco controle dos riscos, dificuldade de incorporação de mudanças aos projetos e descoberta tardia de erros de análise e de projeto.

Alternativas
Q2093397 Engenharia de Software
O ciclo de vida de desenvolvimento de software, que contém seis etapas principais, também é conhecido como modelo cascata. A etapa do ciclo de vida de desenvolvimento de software que abrange todos os elementos do sistema e não apenas no software, principalmente no estudo de viabilidade técnica e econômica do desenvolvimento e nas atribuições de funções aos componentes do sistema, dentre outros, é:
Alternativas
Q2085394 Engenharia de Software
Analise as afirmativas abaixo sobre integração contínua e implantação contínua com Jenkins. 1. Um agente é tipicamente uma máquina ou container que se conecta a um controlador Jenkins e direciona o controlador para executar tarefas específicas. 2. Um Node pode ter zero ou mais executores configurados que correspondem a quantos Jobs ou pipelines concorrentes são passíveis de execução naquele Node. 3. Um item é uma entidade na interface de usuário web correspondendo a uma pasta, pipeline ou job. Assinale a alternativa que indica todas as afirmativas corretas.
Alternativas
Q2084886 Engenharia de Software
Assinale a alternativa que apresenta em que fase do ciclo de vida de desenvolvimento do software deve ser realizado o processo de Certificação de Segurança do Software.
Alternativas
Q2084831 Engenharia de Software
O desenvolvimento de software deve visar ao atendimento de algum problema, ou seja, deve prover a solução para alguma necessidade que possa ser resolvida por meio do processamento de informações digitais. Selecione a alternativa que descreve um processo de software que não implementa todas as funções de um software, e sim apenas um conjunto pequeno dessas funções, formado por funções que estejam intimamente ligadas e agrupadas de modo lógico em um mesmo processo.
Alternativas
Q2084830 Engenharia de Software
A engenharia de software baseada em componentes é um dos ramos da engenharia de software que estuda o desenvolvimento de sistemas mediante a utilização de componentes de software. Selecione a alternativa que mostra a característica de componente que diz respeito à sua capacidade de ser autossuficiente, ou seja, de operar de forma autônoma sobre a plataforma que implementa o modelo de componentes. 
Alternativas
Q2084764 Engenharia de Software
As etapas comuns em todos os modelos de processo de software têm como função nortear as demais fases que vão sendo inseridas conforme os modelos de processo foram sendo criados. Selecione a alternativa que mostra a fase que tem a intenção de mostrar que um software se adequa a suas especificações ao mesmo tempo em que satisfaz as especificações do cliente do sistema.
Alternativas
Q2084678 Engenharia de Software
. Acerca de Jenkins, assinale a alternativa que define corretamente:
Alternativas
Q2081600 Engenharia de Software
O design thinking usado como uma abordagem sistemática e colaborativa para identificar e resolver problemas de forma criativa inclui duas fases principais: identificar problemas e resolver problemas. Ambas as fases são críticas, mas na prática a maioria das pessoas e equipes de projeto dentro das empresas estão mais inclinadas a focar na última. (Luchs, M. G.; Swa, K. S.; Griffin, A. Design Thinking: new product development Essentials from the PDMA. Ed. Wiley, 2015. P. 23.)
Diante do exposto, marque V para as afirmativas verdadeiras e F para as falsas.
( ) No princípio interdisciplinar e colaborativo são usadas equipes com uma ampla variedade de formações e treinamentos, e com membros abertos às diferentes perspectivas e habilidades de uma equipe diversificada. Embora a participação na equipe deva ser relativamente consistente ao longo do projeto, pode ser sensato incluir, ocasionalmente, participantes externos à organização – como clientes, fornecedores e outros especialistas no assunto – para determinados modos ou atividades.
( ) As personas permitem que os designers se relacionem e criem empatia com os usuários, além de incentivá-los a ver os problemas do produto da perspectiva do usuário. Personas são criadas no início do processo de design. Como representações de usuários, as personas definem tanto o usuário-alvo quanto o problema para uma equipe de design. Pequenas iterações podem ser feitas para personas, mas grandes revisões redefinem o design para o início.
( ) Em um processo de desenvolvimento de produtos de design thinking, as histórias permitem que os conceitos sejam visualizados e experimentados antes de serem projetados e desenvolvidos. Inicialmente, a equipe de desenvolvimento constrói as histórias e depois as compartilha com as outras partes interessadas no processo de desenvolvimento do produto. As partes interessadas podem incluir usuários finais e parceiros em potencial.
A sequência está correta em
Alternativas
Q2079159 Engenharia de Software
Manifesto para o desenvolvimento ágil de software defende “indivíduos e interações acima de processos e ferramentas, software operacional acima de documentação completa, colaboração dos clientes acima de negociação contratual e respostas a mudanças acima de seguir um plano”. (Pressman e Maxim, 2021. P. 37.)
Considerando o exposto, analise as afirmativas a seguir.
I. Os princípios do Scrum são empregados para orientar as atividades de desenvolvimento dentro de um processo que incorpora as seguintes atividades metodológicas: planejar; codificar; construir; testar; e, distribuir.
II. A Extreme Programming (programação extrema) envolve um conjunto de regras e práticas constantes no contexto de quatro atividades metodológicas: planejamento; projeto; codificação; e, testes.
III. O projeto XP segue rigorosamente o princípio KISS (keep it simple, stupid!).
IV. As reuniões de equipe para o Kanban são semelhantes àquelas realizadas na metodologia XP.
V. O DevOps combina desenvolvimento (development) e operações (operations) e seu fluxo de trabalho envolve diversas etapas que formam ciclos contínuos até que o produto desejado exista de fato.
Está correto o que se afirma apenas em  
Alternativas
Q2074638 Engenharia de Software

Em relação ao processo de integração contínua de software, analise as seguintes afirmativas.


I. Um dos benefícios de se trabalhar com integração contínua é permitir que os problemas causados pelas interações entre diferentes desenvolvedores sejam detectados e reparados tão logo seja possível.

II. A integração contínua é uma boa estratégia para sistemas muito grandes, quando se leva muito tempo para que o sistema seja construído (build) e testado.

III. Na integração contínua, assim que o trabalho em uma tarefa é concluído, ele é integrado ao sistema como um todo e, após essa integração, todos os testes de unidade do sistema devem passar.


Estão CORRETAS as afirmativas:

Alternativas
Q2073457 Engenharia de Software
Em software, o teste de desenvolvimento inclui todas as atividades que são efetuadas pela equipe responsável pelo sistema. O testador do software, normalmente, é o programador que o desenvolveu. Sabendo disso, assinale a alternativa que apresenta os três estágios do teste de desenvolvimento. 
Alternativas
Q2052793 Engenharia de Software
No desenvolvimento de um sistema de software, a propriedade de usabilidade representa
Alternativas
Respostas
441: A
442: B
443: D
444: D
445: A
446: E
447: C
448: C
449: B
450: D
451: E
452: E
453: D
454: A
455: E
456: D
457: C
458: B
459: D
460: A