Prévia do material em texto
ENGENHARIA DE SOFTWARE – PROVA QUESTÃO 1 Considerando as técnicas de reúso de software e os fatores determinantes para sua aplicabilidade, julgue as asserções a seguir e a relação proposta entre elas. I. O reúso de sistemas completos é preferível em situações em que o cronograma de desenvolvimento é apertado, pois minimiza a quantidade de desenvolvimento necessário, mesmo que a adequação aos requisitos não seja perfeita. II. Em casos em que a manutenção a longo prazo é uma prioridade, o reúso de sistemas e componentes de código aberto é mais vantajoso devido à acessibilidade do código-fonte. III. A experiência e as habilidades da equipe de desenvolvimento são cruciais na escolha de tecnologias de reúso, visto que a complexidade e o tempo necessário para compreensão e uso efetivo variam significativamente. Está correto o que se afirma em: () I, apenas. () II, apenas. () III, apenas. () I e II, apenas. (X) I, II e III. Questão 2 O processo do Desenvolvimento Orientado a Testes é efetivado pelos seguintes passos: 1. Escrever um teste automatizado para a funcionalidade e implementá-lo. 2. Passar para a implementação da próxima funcionalidade somente após todos os testes passarem. 3. Definir o incremento de funcionalidade desejado. 4. Executar o teste, que sabidamente falhará. 5. Implementar a funcionalidade e executar novamente o teste, com o código refatorado. Assinale a opção que apresenta a ordem correta dos passos realizados. (X) 3 - 1 - 4 - 5 - 2. () 3 - 2 - 4 - 1 - 5. () 3 - 4 - 1 - 5 - 2. () 1 - 2 - 3 - 4 - 5. () 4 - 1 - 3 - 5 - 2. QUESTAO 3 Uma falha de compreensão de um requisito, de projeto, codificação, de documentação ou de qualquer outro tipo deve ser corrigida. Tal ação configura uma manutenção corretiva. Quando o código ou outro artefato é modificado para que a eficiência do produto aumente, temos uma manutenção de aperfeiçoamento, ou perfectiva. Se o programa deve se adaptar a uma mudança no ambiente em que ele opera (uma mudança na quantidade de dígitos das linhas telefônicas, por exemplo), então ocorre uma manutenção adaptativa. "O descontentamento é o primeiro passo na evolução de um homem ou de uma nação". A expressão "manutenção de software" vem sendo substituída ou usada em conjunto com "evolução de software". Assinale a alternativa que contém a afirmação verdadeira sobre evolução do software neste contexto. () A evolução do software está relacionada ao progresso que as novas linguagens de programação têm proporcionado aos programas. (X) A evolução do software está relacionada à aplicação de melhorias, ajustes constantes e incorporação de novas tecnologias aos programas. () Neste caso, evolução de software refere-se ao crescimento experimentado pelo programa da sua concepção até o momento em que ele pode ser executado. () A evolução do software é entendida neste caso como a troca do modelo clássico de desenvolvimento para o modelo ágil. () Neste caso, evolução de software significa o crescimento do conhecimento do usuário em relação à sua operação, o que provoca aumento da produtividade com seu uso. QUESTÃO 4 A fase de requisitos de software preocupa-se com a descoberta, análise, especificação e validação das propriedades que devem ser apresentadas para resolver tarefas relacionadas ao software que será desenvolvido. Sobre o levantamento de requisitos, assinale a alternativa correta: () É uma fase opcional no projeto de software, visto que a função do software pode ser usada para determinação destas informações. () Determina qual será a linguagem de programação para o projeto em questão. () É a fase em que são definidos os recursos humanos, financeiros e tecnológicos necessários para o projeto. (X) Etapa em que as condições e restrições do software, exigidas pelo cliente, são repassadas à empresa de desenvolvimento. () Etapa que pode ser realizada no início, meio ou final do desenvolvimento de software, por ser flexível e intangível. QUESTÃO 5 Considerando as métricas de processo e projeto de software, analise as seguintes asserções: I. As métricas de processo de software têm finalidade estratégica e são coletadas ao longo de vários projetos para contribuir com o aprimoramento do processo de software em longo prazo. II. As métricas de projeto de software são utilizadas pelo gerente de projeto e pela equipe de software para ajustar o fluxo de trabalho do projeto e as atividades técnicas, tendo caráter tático. III. O desenvolvimento de métricas significativas com base em atributos específicos e o uso dessas métricas para orientar estratégias de aprimoramento são passos essenciais para melhorar qualquer processo, incluindo o processo de software. IV. O processo de software é influenciado por três fatores-chave interconectados: as habilidades e motivação das pessoas, a complexidade do produto e a tecnologia utilizada, representando elementos cruciais que influenciam a qualidade do software e o desempenho organizacional. Considerando essas asserções, assinale a alternativa correta: () I e II, apenas. () II e III, apenas. () III e IV, apenas. () I, II e IV, apenas. (X) I, II, III e IV. QUESTÃO 6 A gestão de configuração é um componente essencial da engenharia de software, responsável por acompanhar e controlar as mudanças no processo de desenvolvimento. Ela engloba a identificação, controle e auditoria das modificações nos artefatos de software, como código-fonte, documentos e recursos. Um sistema de controle de versão, por exemplo, permite rastrear as alterações em arquivos ao longo do tempo, facilitando a colaboração entre membros da equipe e a recuperação de versões anteriores em caso de necessidade. Além disso, a gestão de configuração contribui para a integridade e a consistência do software. Ao registrar e documentar as modificações, reduz-se o risco de conflitos e incompatibilidades entre diferentes partes do projeto. Isso é particularmente crucial em projetos complexos que envolvem múltiplos desenvolvedores e equipes. Por fim, a gestão de configuração desempenha um papel fundamental na garantia da qualidade do software. Ao manter um registro preciso das alterações, é possível realizar testes de regressão para verificar se as modificações introduziram novos problemas ou afetaram funcionalidades existentes. O que abrange a gestão de configuração na engenharia de software, conforme o texto apresentado? Assinale a alternativa correta. (X) Identificação, controle e auditoria de mudanças nos artefatos de software. () Exclusivamente o registro de alterações no código-fonte. () Gerenciamento de projetos complexos com múltiplos desenvolvedores. () Garantia de funcionalidades sem a necessidade de testes de regressão. () Controle de versões apenas para facilitar a colaboração entre membros da equipe. QUESTÃO 7 O Scrum é uma metodologia ágil para gestão e planejamento de projetos de software. Essa metodologia possui alguns elementos, são eles: Product Backlog, Sprint Backlog e Sprint. Sobre esses elementos, analise as afirmativas a seguir: I. Sprint Backlog: trata-se da lista que contém todas as funcionalidades desejadas para o produto. O Scrum defende que tal lista não precisa ser completa logo na primeira vez em que é feita. II. Product Backlog: lista de tarefas que a equipe deverá executar naquele Sprint. Tais tarefas são selecionadas do Sprint Backlog, com base nas prioridades definidas pelo Product Owner. III. Sprint: Uma Sprint é o momento de esforço concentrado - ou um ciclo de desenvolvimento em que determinadas funcionalidades viram programa (normalmente de uma a quatro semanas). Quem determina quais são essas funcionalidades serão realizadas nas Sprints é o Product Owner. Agora, assinale a alternativa que apresenta a resposta CORRETA: () I, apenas. (X) III, apenas. () I e II, apenas. () I, II e III. () II e III, apenas. Questão 8 Considerando o Plano de Gerenciamento de Riscos, Monitoramento e Mitigação (RMMM), analise as seguintes asserções: I. O Plano RMMM define as atividades e responsabilidades relacionadas à identificação, avaliação, monitoramentoe mitigação de riscos ao longo do ciclo de vida do projeto de software. II. Uma das principais atividades incluídas no Plano RMMM é a análise de riscos, que envolve a identificação dos riscos potenciais, sua probabilidade de ocorrência e o impacto que podem ter no projeto. III. O monitoramento contínuo dos riscos é uma parte essencial do Plano RMMM, permitindo que a equipe de projeto esteja ciente de qualquer mudança nas condições do projeto que possam afetar os riscos identificados. IV. A mitigação de riscos é outra atividade chave no Plano RMMM, que envolve a implementação de estratégias para reduzir a probabilidade de ocorrência ou minimizar o impacto dos riscos identificados. Considerando essas asserções, assinale a alternativa correta: () I e II, apenas. () II e III, apenas. () III e IV, apenas. () I, II e IV, apenas. (X) I, II, III e IV. QUESTÃO 9 Fases são um conjunto de atividades afins e com objetivos bem definidos são realizados em uma fase do processo. O modelo cascata de desenvolvimento, por exemplo, apresenta fases bem definidas, quais sejam a fase dos requisitos, a fase do projeto, da programação e assim por diante (WAZLAWICK, 2013). Assinale a alternativa que contempla as fases do modelo Cascata: () Entrevistas, divisão de atividades, implementação e verificação de conformidade. () Requisitos, projeto, codificação, validação e feedback. () Requisitos, codificação, implementação, validação e manutenção. () Entrevistas, projeto, codificação e verificação de conformidade. (X) Requisitos, projeto, implementação, teste e manutenção. QUESTÃO 10 Um supermercado de grande movimento se prepara para receber muitos clientes devido as compras de Natal. Ocorre que, quando todos os caixas ligaram o seu terminal, a seguinte mensagem foi exibida: “O programa não pode ser iniciado corretamente”. Assinale a alternativa com o tipo de degradação de software correta: () Falha de software () Erro de software (X) Defeito de software () Bug () Falta de atualização