Text Material Preview
Engenharia de Software Qual e o principal objetivo da Engenharia de Software? A) Criar codigos o mais rapido possivel. B) Reduzir a quantidade de testes necessarios. C) Desenvolver software de forma sistematica, controlada e eficiente. D) Substituir a analise de sistemas. Resposta correta: C A Engenharia de Software busca aplicar principios de engenharia no desenvolvimento de sistemas, garantindo qualidade, eficiencia, organizacao e manutencao ao longo do tempo. O que diferencia um software de qualidade de um software comum? A) Ter sido desenvolvido apenas com codigo limpo. B) Atender aos requisitos dos usuarios e apresentar confiabilidade, usabilidade e manutenibilidade. C) Ser desenvolvido por grandes empresas. D) Usar linguagens de programacao populares. Resposta correta: B Um software de qualidade e aquele que cumpre o que se espera dele, e facil de usar, seguro, estavel e pode ser mantido e evoluido com o tempo. Qual das opcoes abaixo representa uma das atividades fundamentais da Engenharia de Software? A) Analise de negocios internacionais. B) Criacao de campanhas de marketing. C) Elicitacao de requisitos. D) Otimizacao de redes. Resposta correta: C A elicitacao de requisitos e essencial para entender o que os usuarios realmente precisam, servindo como base para todo o desenvolvimento. O modelo cascata (ou "waterfall") e caracterizado por: A) Iteracoes rapidas e entregas constantes. B) Entregas continuas e adaptacao constante. C) Um processo sequencial, com etapas bem definidas e pouco espaco para mudancas. D) Uso exclusivo em projetos ageis. Resposta correta: C O modelo cascata e linear, seguindo uma sequencia rigida de etapas como requisitos, analise, design, implementacao, testes e manutencao. Em metodos ageis como o Scrum, o que e uma sprint? A) Um teste de performance do sistema. B) Um tipo de backlog. C) Um periodo de tempo fixo durante o qual uma equipe trabalha para entregar um incremento do produto. D) Uma reuniao de alinhamento com o cliente. Resposta correta: C A sprint e um ciclo curto, geralmente de duas a quatro semanas, no qual funcionalidades do produto sao desenvolvidas e entregues de forma incremental. Qual das alternativas a seguir e um beneficio claro do uso de metodologias ageis em projetos de software? A) Menos envolvimento do cliente durante o projeto. B) Desenvolvimento focado apenas em codigo. C) Adaptacao rapida a mudancas de requisitos. D) Evita o uso de documentacao. Resposta correta: C Metodos ageis favorecem mudancas mesmo em estagios avancados do projeto, o que garante flexibilidade e maior alinhamento com as necessidades reais do usuario. O que e refatoracao em engenharia de software? A) Trocar toda a estrutura de dados do sistema. B) Melhorar o codigo existente sem alterar seu comportamento externo. C) Criar uma nova interface grafica para o sistema. D) Implementar novas funcionalidades. Resposta correta: B A refatoracao visa melhorar a legibilidade, desempenho ou organizacao do codigo, mantendo exatamente o mesmo comportamento funcional. Qual e a finalidade dos testes de software? A) Evitar o uso de documentacao tecnica. B) Melhorar a estetica do sistema. C) Verificar se o sistema atende aos requisitos especificados e se comporta conforme o esperado. D) Medir a produtividade da equipe. Resposta correta: C Os testes validam se o software funciona corretamente, detectam falhas e asseguram a qualidade do produto antes de sua entrega final. O que e o backlog do produto no contexto do Scrum? A) Lista de atividades realizadas pela equipe de infraestrutura. B) Relatorio tecnico de erros. C) Lista priorizada de tudo o que pode ser necessario no produto, incluindo funcionalidades, correcoes e melhorias. D) Arquivo de historico de versoes. Resposta correta: C O backlog do produto e a principal fonte de trabalho da equipe Scrum, sendo constantemente atualizado conforme o projeto evolui. Qual o papel do Product Owner em um time Scrum? A) Gerenciar a equipe de testes. B) Codificar o backend da aplicacao. C) Maximizar o valor do produto por meio da priorizacao do backlog e definicao clara dos requisitos. D) Gerar os relatorios financeiros do projeto. Resposta correta: C O Product Owner representa os interesses do cliente, sendo responsavel por priorizar o trabalho a ser realizado pela equipe de desenvolvimento. O que caracteriza um bom requisito de software? A) Ser vago o suficiente para permitir liberdade de interpretacao. B) Ser testavel, claro, conciso e sem ambiguidade. C) Ser escrito apenas em linguagem tecnica. D) Ser baseado exclusivamente em tendencias de mercado. Resposta correta: B Um requisito bem definido e aquele que pode ser entendido por todas as partes envolvidas, validado com testes e executado com clareza. Para que serve o diagrama de casos de uso na modelagem de software? A) Criar a base de dados do sistema. B) Mostrar como os usuarios interagem com o sistema e quais funcionalidades estao disponiveis para cada um. C) Especificar as cores da interface. D) Descrever a infraestrutura do sistema. Resposta correta: B Casos de uso facilitam a compreensao dos comportamentos esperados do sistema a partir da perspectiva do usuario. A manutenibilidade de um software esta relacionada a: A) Sua capacidade de suportar grandes quantidades de acessos simultaneos. B) A quantidade de linhas de codigo. C) A facilidade com que o software pode ser modificado para corrigir erros ou adaptar-se a mudancas. D) A aparencia visual do sistema. Resposta correta: C Um sistema facil de manter permite alteracoes rapidas e seguras, o que e crucial para a sua longevidade. Em que momento o planejamento da qualidade deve ser realizado no ciclo de desenvolvimento de software? A) Somente apos os testes finais. B) Durante o deploy. C) Desde as primeiras fases do projeto. D) Quando surgirem reclamacoes dos usuarios. Resposta correta: C A qualidade precisa ser planejada desde o inicio para garantir que todos os processos e entregas estejam alinhados com os padroes estabelecidos. O que e integracao continua? A) O ato de atualizar o banco de dados manualmente. B) Um tipo de teste de carga. C) A pratica de integrar o codigo desenvolvido frequentemente no repositorio central com automacao de builds e testes. D) Substituir o sistema antigo pelo novo sem avisar os usuarios. Resposta correta: C A integracao continua reduz erros, melhora a colaboracao e permite detectar problemas mais cedo no ciclo de desenvolvimento. O modelo incremental de desenvolvimento de software consiste em: A) Desenvolver o sistema todo de uma vez. B) Prototipar apenas a interface. C) Entregar o sistema em partes funcionais, agregando funcionalidades a cada nova entrega. D) Criar codigo diretamente sem planejamento. Resposta correta: C O modelo incremental permite que o software seja construido em pedacos, cada um adicionando novas capacidades ao sistema. O que e engenharia reversa em software? A) Processo de voltar para a etapa anterior no modelo cascata. B) Modificar o software para ficar mais rapido. C) Analisar um sistema existente para descobrir seus componentes e funcionamento interno. D) Reverter a aplicacao para uma versao anterior. Resposta correta: C Engenharia reversa e util quando nao se tem acesso ao codigo-fonte ou documentacao, sendo comum em casos de manutencao ou analise de sistemas legados. Qual dos seguintes atributos de qualidade de software esta relacionado a protecao contra acesso nao autorizado? A) Usabilidade. B) Portabilidade. C) Seguranca. D) Escalabilidade. Resposta correta: C A seguranca e fundamental para proteger dados e garantir que apenas usuarios autorizados tenham acesso as funcionalidades e informacoes do sistema. O que e um artefato em engenharia de software? A) Um tipo de bug de dificil resolucao. B) Um erro grave durante o deploy. C) Qualquer produto gerado durante o processo de desenvolvimento, como documentos, diagramas,codigo ou relatorios. D) O resultado final do sistema em producao. Resposta correta: C Artefatos sao evidencias do processo de desenvolvimento e ajudam na rastreabilidade, compreensao e manutencao do projeto. O que define a escalabilidade de um sistema de software? A) Sua capacidade de lidar com quantidades crescentes de usuarios ou dados sem perda significativa de desempenho. B) O numero de programadores no projeto. C) A complexidade do codigo. D) A qualidade dos diagramas UML utilizados. Resposta correta: A Sistemas escalaveis sao projetados para crescer sem comprometer sua funcionalidade ou tempo de resposta, essencial para aplicacoes com alta demanda. Em relacao ao versionamento de software, qual das ferramentas abaixo e mais comum atualmente? A) Notepad. B) Git. C) Excel. D) JavaScript. Resposta correta: B Git e amplamente utilizado para controle de versoes, permitindo que equipes colaborem e mantenham o historico de alteracoes no codigo. Por que e importante documentar um projeto de software? A) Para evitar que o codigo funcione. B) Para dificultar a manutencao do sistema. C) Para garantir que outras pessoas possam entender, dar suporte e evoluir o sistema no futuro. D) Para manter o projeto secreto. Resposta correta: C A documentacao bem feita facilita a continuidade do projeto, o treinamento de novos membros da equipe e o entendimento do sistema por terceiros. Qual e o principal desafio na estimativa de tempo em projetos de software? A) A linguagem de programacao utilizada. B) A imprevisibilidade de mudancas nos requisitos e escopo do projeto. C) O numero de membros na equipe. D) O tamanho dos arquivos do projeto. Resposta correta: B Estimativas sao desafiadoras porque muitas vezes os requisitos mudam, surgem imprevistos tecnicos ou ha dependencia de fatores externos. O que sao metricas de software? A) Ferramentas de design grafico. B) Medidas quantitativas usadas para avaliar aspectos do software ou do processo de desenvolvimento. C) Analises de redes sociais. D) Valores financeiros do projeto. Resposta correta: B Metricas ajudam a mensurar produtividade, qualidade, desempenho e outros fatores importantes para a gestao do projeto. A pratica de deploy continuo visa: A) Lancar o sistema apenas no fim do projeto. B) Evitar o uso de testes. C) Automatizar e acelerar a liberacao de novas versoes do software para producao. D) Criar backups constantes da base de dados. Resposta correta: C O deploy continuo integra o desenvolvimento ao ambiente de producao de forma agil e segura, com foco em entrega rapida de valor. Total aproximado do conteudo: 1.100 palavras.