Prévia do material em texto
Usuário Curso PRÁTICAS DE ENGENHARIA DE SOFTWARE PTA Teste CLIQUE AQUI PARA ACESSAR A PROVA N2 (A5) Iniciado Enviado Status Completada Resultado da tentativa 9 em 10 pontos Tempo decorrido Instruções Caso necessite a utilização do "EXCEL" clique no link ao lado -----------> Resultados exibidos Respostas enviadas, Respostas corretas, Comentários • Pergunta 1 1 em 1 pontos O versionamento de código via GIT é uma forma de gerenciar código-fonte ou arquivos de maneira a criar instâncias deles. Com esse sistema, é possível compartilhar arquivos entre vários autores e colaboradores sob a segurança de se estar criando cópias de cada versão de arquivo. Sobre os benefícios de se utilizar o versionamento via GIT, analise as afirmações a seguir. I. Acompanhamento do histórico de alterações do arquivo. II. Redundância e backup dos arquivos. III. Aumento na velocidade e na produtividade no desenvolvimento. IV. Menor acoplamento entre equipes de desenvolvimento e produção. Está correto o que se afirma em: Resposta Selecionada: I, II e III, apenas. Resposta Correta: I, II e III, apenas. Feedback da resposta: Resposta correta. Justificativa: Apenas as afirmações I, II e III são corretas. A afirmativa I está correta, pois uma das grandes vantagens do uso do versionamento de códigos é acompanhar o histórico de alterações dos arquivos de um projeto de software. A afirmativa II está correta, pois o versionamento facilita o backup de arquivos contínuos e a redundância. A afirmativa III está correta, pois o aumento na velocidade e na produtividade no processo de desenvolvimento é um dos grandes benefícios do uso do versionamento de código, assim como backups contínuos e o acompanhamento do histórico e da evolução do software. • Pergunta 2 1 em 1 pontos A UML é uma linguagem de modelagem unificada e não de programação. No entanto, existem ferramentas que geram o código-fonte em várias linguagens. A UML ( Unified Modeling Language ) define duas categorias de diagramas: estruturais e comportamentais. Ao trabalhar com a UML, é importante a compreensão dessas categorias. Assinale a alternativa que apresenta apenas diagramas comportamentais da UML. Resposta Selecionada: Transição de Estados; Atividades; Casos de Uso. Resposta Correta: Transição de Estados; Atividades; Casos de Uso. Feedback da resposta: Resposta correta. A alternativa está correta, pois existem cinco tipos de diagramas comportamentais na linguagem UML, sendo eles o diagrama de transição de Estados; o diagrama de Atividades; o diagrama de Casos de Uso, o diagrama de Sequência e o diagrama de Colaboração. • Pergunta 3 1 em 1 pontos Na UML, temos diversos diagramas e, dentre esta gama, temos o diagrama de atividades que tem a função de mostrar o fluxo de controle de uma determinada atividade para outra. Envolve a modelagem de processos computacionais e, por isso, necessita ser modelado de forma atenciosa. Considerando o exposto acima, analise o diagrama de atividades abaixo: Fonte: Elaborado pelo autor. Levando-se em considerando o diagrama apresentado, é correto afirmar que: Resposta Selecionada: é possível verificar dois Joins e um Fork. Resposta Correta: é possível verificar dois Joins e um Fork. Feedback da resposta: Resposta correta. A alternativa está correta, pois o diagrama de atividades apresenta como característica dois Joins e um Fork. Os Joins estão presentes entre as atividades 3 e 4 e outro entre as atividades 5 e 6; e o Fork está presente entre a atividade 2 e as atividades 3, 4 e 5. • Pergunta 4 1 em 1 pontos “No ciclo de desenvolvimento de softwares, a realização de testes tem espaço desde a fase de design até o lançamento do produto. Eles conferem confiabilidade ao software, reorientam o desenvolvimento do design e do código e poupam gastos desnecessários, quando detectam erros nas fases iniciais do desenvolvimento de um software” (ANDRADE; VIANA, 2020, on-line ). ANDRADE, A. P.; VIANA, P. Criação e Geração de Planos de Teste de Software . Disponível em: https://www.ibm.com/developerworks/br/local/rational/criacao_geracao_planos_testes_s oftware/index.html . Acesso em: 16 fev. 2020. Sobre os testes de software, qual alternativa apresenta corretamente as três categorias de classificação de testes? Resposta Selecionada: Teste Funcional, Teste Não Funcional e Teste de Manutenção. Resposta Correta: https://www.ibm.com/developerworks/br/local/rational/criacao_geracao_planos_testes_software/index.html https://www.ibm.com/developerworks/br/local/rational/criacao_geracao_planos_testes_software/index.html Teste Funcional, Teste Não Funcional e Teste de Manutenção. Feedback da resposta: Resposta correta. Justificativa: As três categorias de testes são essas três; o Teste funcional também é conhecido por teste “caixa-preta”, baseado em casos de testes de requisitos funcionais. O Teste não funcional é também conhecido como teste caixa-branca. O Teste de manutenção também é conhecido como teste de regressão. • Pergunta 5 0 em 1 pontos Você é o analista e participa do levantamento de requisitos de um sistema de controle de processos internos de uma instituição. No levantamento, percebe-se que o sistema irá realizar consultas de processos existentes e, consequentemente, os processos de cada período executado. O período possui informações correspondente a datas específicas, nome de determinado setor, situação e a quantidade de processos. Considerando o exposto acima, sobre o uso de requisitos, assinale a alternativa correta. Resposta Selecionada: Um caso de uso pode especificar o comportamento contendo atores secundários que dão suporte a outros atores e também a si mesmo. Além disso, permite o sistema realizar o seu trabalho. Resposta Correta: No exemplo, um requisito funcional está relacionado a somente uma regra de negócio, ao qual está relacionado ao período. Feedback da resposta: Sua resposta está incorreta. A alternativa está incorreta, pois o tempo de resposta é um requisito não funcional associado a desempenho, e a alternativa aborda erroneamente sobre requisito funcional. O fato de o sistema ser em Java e integrado a API descreve um requisito não funcional de plataforma e integração, e não funcional de usabilidade seria assim se fizesse referência a opções relacionadas à tela ou interface sem a necessidade de citar linguagens de programação. Em diagrama de caso de uso, um ator secundário interage com outros atores e não com o sistema em si. JAD tem por função agrupar diferentes especialistas em requisitos para validar ou identificar requisitos enquanto se desenvolve um novo sistema em uma empresa. • Pergunta 6 1 em 1 pontos A Programação Orientada a Objetos (POO) possui uma estrutura com pelo menos três elementos-base. Podemos citar os elementos como sendo a herança, o polimorfismo e o encapsulamento. São elementos essenciais e cujo conceito todo programador deve conhecer. Considerando o exposto acima, assinale a alternativa que define o conceito de herança. Resposta Selecionada: Princípio que permite que classes compartilhem atributos e métodos, através de uma hierarquia. Resposta Correta: Princípio que permite que classes compartilhem atributos e métodos, através de uma hierarquia. Feedback da resposta: Resposta correta: A alternativa está correta, pois herança é o princípio que permite o compartilhamento de atributos e métodos numa hierarquia entre superclasses e subclasses. Assim, uma classe B pode herdar atributos ou métodos de uma classe A, quando elas estiverem relacionadas/associadas. • Pergunta 7 1 em 1 pontos A UML é uma linguagem de modelagem unificada e que possui diversos diagramas, cada um com uma finalidade diferente para uma modelagemmais adequada de um software. É preciso entender o funcionamento de cada um para que os diagramas possam ser construídos de forma adequada. Entre os diagramas da UML, um deles destaca-se pelas seguintes características: Indica as comunicações dinâmicas dos objetos durante a execução de uma determinada tarefa. Além disso, mostra o momento em que as mensagens são trocadas para executar essa tarefa. Pode-se utilizar o diagrama para mostrar as interações em um caso de uso ou em um cenário de um sistema de Software. Considerando o exposto acima, assinale a alternativa que contenha o diagrama UML que apresenta as características apresentadas. Resposta Selecionada: Diagrama de Sequência. Resposta Correta: Diagrama de Sequência. Feedback da resposta: Resposta correta. A alternativa está correta, pois o Diagrama de Sequência é o diagrama responsável pela comunicação dinâmica dos objetos e na execução da tarefa mostra a ordem temporal das interações. É muito utilizado para representar as interações entre os objetos e é construído a partir do Diagrama de Casos de Uso. • Pergunta 8 1 em 1 pontos Software como serviço (SaaS) é muito utilizado em computação em nuvem e é um modelo de distribuição de software onde um determinado provedor presta serviços disponibilizando softwares para clientes que necessitam. Além do SaaS, temos também outros tipos de serviços oferecidos na computação em nuvem, sendo infraestrutura como serviço (IaaS) e plataforma como serviço (PaaS). Sobre Saas, analise as afirmações a seguir: 1. SaaS é a oferta de um software como prestação de um ou mais serviços específicos e não meramente como um produto. 2. Uma forma comum de software como serviço é com repositório de arquivos em nuvem, chamado de “drive”. 3. O fato de não ser necessário instalar aplicativos localmente torna menos confiável o uso de SaaS. 4. A escalabilidade não é uma vantagem do SaaS, pois requer bastante do servidor em que o serviço está sendo executado. Sobre as características do SaaS, é correto o que se afirma em: Resposta Selecionada: I e II, apenas. Resposta Correta: I e II, apenas. Feedback da resposta: Resposta correta. A alternativa está correta. As duas primeiras afirmações estão corretas. Mas o fato da instalação ser desnecessária não torna o software menos confiável. Quanto à escalabilidade, trata-se de uma boa vantagem, pois o serviço pode crescer de acordo com a demanda de usuários. • Pergunta 9 1 em 1 pontos A engenharia de requisitos é parte da engenharia de software que engloba um conjunto de atividades para a produção do documento de requisitos e sua manutenção ao longo do tempo. Há diversas atividades e técnicas para obter os requisitos e documentá-los e estas variam de um projeto para outro. Além, disso, há atividades comuns quanto a requisitos. Assinale a alternativa que apresente atividades relativas à engenharia de requisitos. Resposta Selecionada: Documentação de requisitos, Elicitação de requisitos, Gerenciamento de requisitos. Resposta Correta: Documentação de requisitos, Elicitação de requisitos, Gerenciamento de requisitos. Feedback da resposta: Resposta correta. A alternativa está correta, pois as atividades básicas da engenharia de requisitos são: Documentação de requisitos, Elicitação de requisitos, Gerenciamento de requisitos, Análise de requisitos e Validação de requisitos. Cada atividade representa um momento do projeto de software, representando parte dos requisitos levantados pela Engenharia de requisitos. • Pergunta 10 1 em 1 pontos Dentro da computação em nuvem existem diversos tipos de serviços aos clientes. Esses serviços são distribuídos em tipos de arquitetura. Dentre esses serviços, podemos mencionar as plataformas SaaS, que são ideais para quando se deseja que um aplicativo seja executado de maneira leve e confiável, com o mínimo de informações personalizadas. O uso do SaaS apresenta alguns pontos positivos. Sobre esses pontos, analise as asserções a seguir: 1. Sem Necessidade de Instalação. 2. Maior Custo de Implantação. 3. Manutenção e Suporte Qualificados. 4. Escalabilidade. Das afirmações acima, é correto o que se afirma em: Resposta Selecionada: I, III e IV, apenas. Resposta Correta: I, III e IV, apenas. Feedback da resposta: Resposta correta. A alternativa está correta pois SaaS traz consigo a não obrigatoriedade de instalação de novo software, o suporte e manutenção qualificados, pois é feito pelo próprio desenvolvedor do software sempre que necessário, além da escalabilidade. Com SaaS, há na verdade um menor curso de implantação, pois desobriga a ter uma versão local dos serviços.