Prévia do material em texto
Processo de software Qual e o objetivo principal do processo de software? a) Desenvolver software rapidamente b) Gerenciar a producao de software c) Melhorar a qualidade do software d) Controlar os custos de desenvolvimento Resposta correta: b) Gerenciar a producao de software. O processo de software tem como objetivo organizar e gerenciar as etapas necessarias para o desenvolvimento de software, desde o planejamento ate a entrega, garantindo qualidade e eficiencia. Qual das alternativas abaixo descreve corretamente a fase de "Planejamento" no ciclo de vida do software? a) O software e projetado e codificado b) Sao definidas as metas e o escopo do projeto c) O software e testado e corrigido d) O software e colocado em producao Resposta correta: b) Sao definidas as metas e o escopo do projeto. Na fase de planejamento, sao estabelecidos os objetivos do projeto, o cronograma, as necessidades do cliente, o orcamento e o escopo do software a ser desenvolvido. Em qual fase do ciclo de vida de um software ocorre a coleta de requisitos? a) Implementacao b) Planejamento c) Analise d) Testes Resposta correta: c) Analise. A coleta de requisitos ocorre na fase de analise, onde sao levantadas as necessidades do cliente e as especificacoes que o sistema deve atender. O que e um "Modelo de Processo de Software"? a) Um programa que gerencia o desenvolvimento de software b) Uma abordagem para representar visualmente o software c) Um conjunto de atividades e tarefas para guiar o desenvolvimento de software d) Uma ferramenta de programacao Resposta correta: c) Um conjunto de atividades e tarefas para guiar o desenvolvimento de software. Os modelos de processo de software sao conjuntos estruturados de atividades que ajudam a guiar a construcao e manutencao de sistemas de software. O que caracteriza o modelo de processo "Cascata"? a) Atividades de desenvolvimento sao realizadas em etapas sequenciais b) O processo e iterativo, com revisoes constantes c) O software e desenvolvido sem planejamento previo d) Nao ha fase de testes no modelo Resposta correta: a) Atividades de desenvolvimento sao realizadas em etapas sequenciais. No modelo Cascata, as fases do desenvolvimento (analise, design, implementacao, testes) sao realizadas de forma sequencial e nao se sobrepoem. Qual e a principal caracteristica do modelo de processo "Iterativo"? a) As fases nao sao definidas e ocorrem de maneira caotica b) O desenvolvimento ocorre em pequenas iteracoes, com revisoes e refinamentos constantes c) Nao ha separacao entre as fases de desenvolvimento d) O software e projetado de uma vez sem modificacoes posteriores Resposta correta: b) O desenvolvimento ocorre em pequenas iteracoes, com revisoes e refinamentos constantes. No modelo iterativo, o desenvolvimento e feito em ciclos repetidos, permitindo ajustes e melhorias continuas ao longo do processo. Qual e a principal vantagem de se utilizar um modelo incremental de desenvolvimento de software? a) O software e entregue de forma completa e finalizada no final do processo b) O desenvolvimento e dividido em partes menores e funcionais, com entregas parciais c) Nao ha necessidade de testes durante o processo de desenvolvimento d) O modelo garante que o software sera desenvolvido sem erros Resposta correta: b) O desenvolvimento e dividido em partes menores e funcionais, com entregas parciais. O modelo incremental permite que o software seja entregue em versoes parciais, possibilitando que os usuarios testem e fornecam feedback antes da conclusao total do projeto. O que e um "Caso de Uso" no contexto do processo de software? a) Um tipo de teste para verificar a funcionalidade do sistema b) Uma descricao de como o usuario interage com o sistema para atingir um objetivo c) Uma linguagem de programacao utilizada para modelar o sistema d) Um documento que especifica os requisitos nao funcionais do software Resposta correta: b) Uma descricao de como o usuario interage com o sistema para atingir um objetivo. Casos de uso sao representacoes do comportamento do sistema sob diferentes condicoes de interacao com o usuario, ajudando a definir os requisitos do sistema. Qual e a principal diferenca entre as abordagens "Agil" e "Tradicional" para o desenvolvimento de software? a) Na abordagem agil, o foco esta no planejamento inicial e no controle rigoroso de custos b) A abordagem tradicional prioriza a colaboracao com o cliente, enquanto a agil foca na documentacao c) A abordagem agil valoriza mudancas continuas e entrega incremental, enquanto a tradicional segue um caminho fixo d) A abordagem tradicional nao utiliza testes, enquanto a agil testa constantemente o sistema Resposta correta: c) A abordagem agil valoriza mudancas continuas e entrega incremental, enquanto a tradicional segue um caminho fixo. A metodologia agil permite maior flexibilidade e mudancas durante o desenvolvimento, enquanto o modelo tradicional (como o Cascata) segue uma sequencia rigida de etapas. O que significa "Testes de Integracao" no contexto do processo de software? a) Testar o desempenho do software sob carga b) Verificar se o sistema atende aos requisitos de seguranca c) Avaliar se diferentes modulos ou componentes do sistema funcionam corretamente juntos d) Testar se a interface grafica do usuario esta funcionando adequadamente Resposta correta: c) Avaliar se diferentes modulos ou componentes do sistema funcionam corretamente juntos. Testes de integracao garantem que os diferentes componentes do software interajam corretamente, sem erros, quando combinados. Qual das alternativas e uma vantagem da abordagem agil? a) Maior foco em documentacao detalhada b) Flexibilidade para mudancas durante o desenvolvimento c) Menor interacao com o cliente d) Processo de desenvolvimento mais lento e menos adaptavel Resposta correta: b) Flexibilidade para mudancas durante o desenvolvimento. A metodologia agil permite mudancas continuas, o que a torna ideal para projetos onde os requisitos podem evoluir ao longo do tempo. Qual e o principal objetivo da fase de "Manutencao" no processo de software? a) Corrigir defeitos e melhorar a performance do software b) Redesenhar o software para novos requisitos c) Entregar o software finalizado ao cliente d) Realizar testes iniciais no software Resposta correta: a) Corrigir defeitos e melhorar a performance do software. A manutencao envolve corrigir erros, realizar atualizacoes, melhorar a performance e adaptar o software a novos requisitos apos sua entrega inicial. O que e um "Diagrama de Fluxo de Dados" (DFD) no contexto de modelagem de software? a) Uma representacao visual de como os dados se movem entre os componentes do sistema b) Uma descricao de como o codigo fonte e estruturado c) Uma lista de todos os casos de uso do sistema d) Um tipo de teste automatizado para verificar a integridade dos dados Resposta correta: a) Uma representacao visual de como os dados se movem entre os componentes do sistema. O DFD e usado para modelar como os dados fluem entre processos, entidades externas e armazenamento dentro de um sistema. O que sao "Requisitos Funcionais" de um software? a) Requisitos que descrevem como o software deve se comportar em termos de seguranca b) Requisitos que especificam as funcionalidades e servicos que o software deve fornecer c) Requisitos relacionados ao desempenho do software d) Requisitos que indicam a aparencia da interface do usuario Resposta correta: b) Requisitos que especificam as funcionalidades e servicos que o software deve fornecer. Requisitos funcionais detalham o que o sistema deve fazer, como calcular dados ou realizar operacoes especificas. O que significa "Refatoracao" no contexto do processo de software? a) Substituir o software por uma nova versao b) Melhorar o codigo sem alterar seu comportamento externo c) Remover todas as funcionalidades desnecessarias do software d) Testar o software novamente apos mudancas de requisitosResposta correta: b) Melhorar o codigo sem alterar seu comportamento externo. Refatoracao e o processo de melhorar o codigo fonte para torna-lo mais eficiente e legivel, sem alterar sua funcionalidade. Qual a principal diferenca entre testes unitarios e testes de sistema? a) Testes unitarios verificam a integracao de componentes, enquanto testes de sistema verificam unidades isoladas b) Testes unitarios verificam componentes individuais, enquanto testes de sistema verificam o software como um todo c) Testes unitarios sao realizados apos a entrega do software, enquanto testes de sistema sao feitos durante o desenvolvimento d) Testes unitarios nao tem impacto no desempenho, enquanto testes de sistema testam a performance Resposta correta: b) Testes unitarios verificam componentes individuais, enquanto testes de sistema verificam o software como um todo. Testes unitarios focam em testar partes isoladas do codigo, enquanto os testes de sistema avaliam o software em sua totalidade, verificando a interacao entre os componentes. 17