Questões de Desenvolvimento de Software (Engenharia de Software)

Limpar Busca

Containers são uma tecnologia que permite empacotar e isolar aplicações e seus ambientes em unidades consistentes e portáteis. Eles são usados para desenvolver, implantar e executar aplicações de maneira eficiente e previsível, independentemente do ambiente em que estejam sendo executados.
Uma boa prática para o desenvolvimento e gerenciamento de containers em um ambiente de produção é

  • A incluir todas as ferramentas e utilitários necessários para o desenvolvimento e a produção dentro do mesmo container para garantir que tudo esteja disponível em um único local.
  • B manter containers grandes e genéricos que possam ser usados para vários aplicativos para simplificar a gestão e a configuração.
  • C utilizar imagens base pequenas e específicas para cada container, garantindo que cada container tenha apenas as dependências necessárias para sua funcionalidade.
  • D desenvolver containers que executem múltiplos serviços para otimizar o uso dos recursos do sistema e reduzir o número total de containers.
  • E armazenar dados persistentes dentro do próprio container para garantir que os dados estejam sempre disponíveis junto com o container.

Análise por pontos de função (APF) é uma técnica usada para medir o tamanho e a complexidade de um software com base nas funções que ele fornece ao usuário. Ela é especialmente útil para estimar o esforço necessário para o desenvolvimento e a manutenção de um sistema. No desenvolvimento de software a análise por pontos de função

  • A é usada para estimar o tempo de execução do software em diferentes ambientes de hardware.
  • B mede a complexidade do software com base no número de linhas de código escritas durante o desenvolvimento.
  • C avalia a funcionalidade do software a partir do ponto de vista do usuário e é usada para estimar o esforço e os custos de desenvolvimento.
  • D é aplicada para medir a eficiência do algoritmo de busca usado no software.
  • E foca exclusivamente na validação e verificação de testes unitários durante o desenvolvimento do software.

Prototipação é uma técnica usada no desenvolvimento de software que envolve a criação de um modelo ou versão preliminar de um sistema para ajudar na compreensão dos requisitos e validar conceitos antes da construção do produto final. No contexto da prototipação em desenvolvimento de software, assinale a afirmativa que descreve corretamente o principal objetivo da criação de protótipos.

  • A Prototipação visa exclusivamente testar o desempenho do sistema sob condições extremas.
  • B Prototipação é usada para substituir a fase de design do software, eliminando a necessidade de criar diagramas de arquitetura.
  • C Prototipação permite aos stakeholders visualizar e interagir com uma versão preliminar do software, ajudando a refinar os requisitos e identificar problemas cedo no processo.
  • D Prototipação é uma técnica usada para garantir que o software final seja implementado sem defeitos.
  • E Prototipação destina-se a produzir a versão final do software que será entregue ao usuário.

Considerando o conceito de objeto no contexto do desenvolvimento de software orientado a objetos, analise as alternativas e escolha a descreve adequadamente as vantagens e características principais de um objeto dentro desse paradigma de programação.

  • A Os objetos são módulos de código que podem ser usados apenas uma vez em um programa, garantindo que cada aplicação tenha uma lógica de programação única e específica.
  • B O uso de objetos limita a reutilização de código, pois cada objeto é projetado para resolver problemas específicos de um único aplicativo, tornando difícil sua adaptação para outros usos.
  • C A principal vantagem dos objetos é que eles são fixos e imutáveis, garantindo que o código dentro de um objeto nunca seja alterado ou reutilizado em diferentes contextos.
  • D Os objetos contêm código reutilizável, o que permite que o mesmo módulo seja utilizado em diferentes programas e aplicativos, facilitando o desenvolvimento rápido e eficiente de novos sistemas.
  • E Os objetos em programação orientada a objetos são sempre autossuficientes e independentes, de modo que a interação entre diferentes objetos é evitada para reduzir a complexidade do código.

Análise de Software ou Análise de Código é o processo de examinar o código fonte de um software para identificar e corrigir problemas, melhorar a qualidade e garantir que o código esteja alinhado com os requisitos e padrões estabelecidos. Duas das principais formas de se realizar Análise de Software é por meio da análise estática e da análise dinâmica. Assinale a opção que melhor descreve a diferença fundamental entre análise estática e análise dinâmica de software.

  • A A análise estática é realizada durante a execução do software, enquanto a análise dinâmica é feita antes do software ser executado.
  • B A análise estática examina o código fonte e a estrutura do software sem executá-lo, enquanto a análise dinâmica envolve a execução do software e a observação do comportamento em tempo real.
  • C A análise estática é usada para medir o desempenho do software, enquanto a análise dinâmica é usada para revisar a arquitetura do sistema.
  • D A análise estática é aplicada somente a softwares desenvolvidos em linguagens de programação de baixo nível, enquanto a análise dinâmica é usada para todos os tipos de linguagens.
  • E A análise estática foca na identificação de erros de tempo de execução, enquanto a análise dinâmica detecta erros de compilação.