Logo Passei Direto
Material
Study with thousands of resources!

Text Material Preview

Desenvolvimento de software 
O que e um ciclo de vida de desenvolvimento de software?
a) Uma sequencia de etapas que determina como o software sera atualizado apos ser lancado.
b) Uma sequencia de etapas que o desenvolvedor segue para criar e manter o software, desde a
concepcao ate a descontinuacao.
c) Um processo continuo de testes apos o lancamento do software.
d) Um cronograma fixo que define quando o software precisa ser lancado.
Resposta explicativa:
A resposta correta e a letra b. O ciclo de vida do desenvolvimento de software e o processo
completo que abrange desde a concepcao, desenvolvimento, testes, implantacao ate a
manutencao e descontinuacao do software.
Qual e o principal objetivo do modelo Agil de desenvolvimento de software?
a) Maximizar a documentacao do projeto.
b) Reduzir o tempo de desenvolvimento sem priorizar qualidade.
c) Adaptar-se rapidamente a mudancas e entregar funcionalidades de forma iterativa.
d) Focar exclusivamente em testes apos o desenvolvimento.
Resposta explicativa:
A resposta correta e a letra c. O modelo Agil e focado na entrega incremental e iterativa de
software, permitindo ajustes rapidos conforme o projeto avanca e as necessidades do cliente
mudam.
Qual e a principal caracteristica do modelo em Cascata no desenvolvimento de software?
a) As etapas do desenvolvimento ocorrem simultaneamente.
b) O processo e linear, onde cada fase depende da conclusao da anterior.
c) A entrega do software e realizada em pequenas partes.
d) O desenvolvimento e baseado em prototipos.
Resposta explicativa:
A resposta correta e a letra b. No modelo em Cascata, o desenvolvimento segue uma sequencia
linear, onde uma fase deve ser completamente finalizada antes da proxima comecar.
O que e um framework no desenvolvimento de software?
a) Um conjunto de regras fixas para o codigo.
b) Um ambiente de desenvolvimento onde o codigo pode ser executado.
c) Uma estrutura reutilizavel de componentes de software para ajudar a desenvolver aplicativos.
d) Um tipo de banco de dados para armazenar dados de software.
Resposta explicativa:
A resposta correta e a letra c. Frameworks sao estruturas que fornecem funcionalidades e
ferramentas reutilizaveis, facilitando e agilizando o desenvolvimento de software.
O que significa refatoracao de codigo?
a) Escrever codigo completamente novo para substituir o antigo.
b) Melhorar o codigo sem alterar seu comportamento, com o objetivo de torna-lo mais eficiente e
legivel.
c) Criar novos testes para o codigo existente.
d) Adicionar funcionalidades extras ao codigo para melhorar sua performance.
Resposta explicativa:
A resposta correta e a letra b. Refatoracao consiste em melhorar o codigo sem mudar sua
funcionalidade, visando otimizar sua estrutura, legibilidade e manutencao.
Qual e o principal objetivo dos testes unitarios?
a) Validar a integracao entre diferentes sistemas.
b) Testar o comportamento do software em diferentes condicoes de uso.
c) Verificar se unidades individuais de codigo (como funcoes ou metodos) estao funcionando
corretamente.
d) Garantir que o sistema como um todo funcione conforme o esperado.
Resposta explicativa:
A resposta correta e a letra c. Os testes unitarios tem como foco a verificacao de unidades
pequenas e isoladas de codigo, como funcoes ou metodos, garantindo que cada parte do sistema
se comporte como esperado.
O que significa a sigla TDD no contexto de desenvolvimento de software?
a) Test-Driven Development (Desenvolvimento Orientado a Testes).
b) Time-Driven Development (Desenvolvimento Orientado ao Tempo).
c) Task-Driven Development (Desenvolvimento Orientado a Tarefas).
d) Template-Driven Development (Desenvolvimento Orientado a Templates).
Resposta explicativa:
A resposta correta e a letra a. TDD significa "Test-Driven Development", um processo onde os
testes sao escritos antes do codigo, garantindo que o software seja desenvolvido com base nas
necessidades de testes especificos.
O que e um controle de versao em desenvolvimento de software?
a) Um sistema que gerencia a quantidade de memoria que um programa usa.
b) Um mecanismo para registrar, armazenar e controlar as mudancas no codigo-fonte ao longo do
tempo.
c) Uma tecnica de gerenciamento de tempo para cumprir prazos no desenvolvimento.
d) Uma metodologia para desenvolver software em equipes grandes.
Resposta explicativa:
A resposta correta e a letra b. O controle de versao permite gerenciar diferentes versoes do codigo,
facilitando a colaboracao entre desenvolvedores e a manutencao de historico de alteracoes.
O que e a metodologia Scrum?
a) Um modelo de desenvolvimento que foca na documentacao antes da codificacao.
b) Uma abordagem Agil que organiza o trabalho em ciclos curtos e entregas incrementais.
c) Uma tecnica de testes para validar a integridade do codigo.
d) Um framework para gerenciar o tempo durante o desenvolvimento.
Resposta explicativa:
A resposta correta e a letra b. Scrum e uma metodologia Agil que divide o desenvolvimento em
sprints (ciclos curtos), com entregas frequentes de funcionalidades e revisoes constantes com o
cliente.
O que significa o termo "deploy" no desenvolvimento de software?
a) A criacao de um prototipo inicial do sistema.
b) O processo de configurar o ambiente de desenvolvimento.
c) O processo de disponibilizar o software para o usuario final.
d) A escrita de documentacao tecnica sobre o sistema.
Resposta explicativa:
A resposta correta e a letra c. "Deploy" se refere a etapa de colocar o software em producao,
tornando-o acessivel aos usuarios finais.
O que e a tecnica de programacao chamada "pair programming"?
a) Programacao de duas equipes separadas trabalhando no mesmo projeto.
b) Programacao onde dois desenvolvedores trabalham juntos em um unico computador, um
escrevendo o codigo e o outro revisando.
c) Programacao realizada apenas por desenvolvedores seniores.
d) Programacao onde os desenvolvedores trabalham de forma independente.
Resposta explicativa:
A resposta correta e a letra b. O "pair programming" e uma pratica em que dois desenvolvedores
colaboram no mesmo codigo, trocando papeis entre quem escreve o codigo e quem o revisa.
O que e o conceito de "design pattern" no desenvolvimento de software?
a) Uma linguagem de programacao utilizada para o desenvolvimento rapido de software.
b) Uma solucao reutilizavel para problemas comuns de design de software.
c) Um tipo de framework para facilitar a escrita de codigo.
d) Uma tecnica para acelerar a execucao do codigo em producao.
Resposta explicativa:
A resposta correta e a letra b. Design patterns sao solucoes comprovadas e reutilizaveis para
problemas recorrentes no design de software, como a criacao de objetos ou a comunicacao entre
componentes.
O que e a tecnica de "continuous integration" (CI)?
a) A pratica de escrever o codigo sem testes, para acelerar o desenvolvimento.
b) A pratica de integrar pequenas mudancas no codigo de forma frequente e automatizada, para
evitar conflitos.
c) A tecnica de realizar testes manuais durante o desenvolvimento.
d) A pratica de realizar o deploy diretamente no ambiente de producao.
Resposta explicativa:
A resposta correta e a letra b. Continuous Integration (Integracao Continua) e a pratica de integrar
pequenas mudancas de codigo frequentemente, garantindo que o software seja constantemente
validado atraves de testes automatizados.
O que e a tecnica de "continuous delivery" (CD)?
a) A entrega de codigo diretamente ao cliente sem testes.
b) A automacao do processo de entrega, garantindo que o software possa ser disponibilizado em
producao a qualquer momento.
c) A entrega manual do codigo ao cliente apos a validacao do software.
d) O processo de versionamento do codigo fonte.
Resposta explicativa:
A resposta correta e a letra b. Continuous Delivery (Entrega Continua) e a pratica de manter o
software em um estado onde ele pode ser liberado para producao a qualquer momento, com
minimo esforco adicional.
No contextode desenvolvimento de software, o que significa "backlog"?
a) Uma lista de recursos necessarios para rodar o sistema.
b) Uma lista priorizada de funcionalidades e tarefas que precisam ser desenvolvidas no projeto.
c) Um banco de dados utilizado para armazenar dados temporarios.
d) O conjunto de testes que precisam ser feitos em uma aplicacao.
Resposta explicativa:
A resposta correta e a letra b. O backlog e uma lista priorizada de funcionalidades, correcoes ou
melhorias que precisam ser feitas no software, com base nas necessidades do cliente e no
planejamento do time.
O que e a tecnica de "mocking" em testes de software?
a) A pratica de testar a velocidade do sistema.
b) Criar versoes simuladas de componentes ou servicos para testar o comportamento de uma
aplicacao de forma isolada.
c) A pratica de testar o software em situacoes reais com usuarios finais.
d) A tecnica de simular falhas para testar a resiliencia do sistema.
Resposta explicativa:
A resposta correta e a letra b. "Mocking" e uma tecnica usada em testes unitarios, onde se criam
versoes falsas (mocks) de objetos ou servicos para testar o codigo sem depender de sistemas
externos.
**Qual e o objetivo do