Baixe o app para aproveitar ainda mais
Prévia do material em texto
22/04/2022 20:53 Unicesumar - Ensino a Distância 1/7 ATIVIDADE 3 - TÓPICOS ESPECIAIS - 51/2022 Período:04/04/2022 08:00 a 22/04/2022 23:59 (Horário de Brasília) Status:ABERTO Nota máxima:1,50 Gabarito:Gabarito será liberado no dia 30/04/2022 00:00 (Horário de Brasília) Nota obtida: 1ª QUESTÃO Um serviço é um componente de software com baixo acoplamento, reusável e que encapsula funcionalidade discreta, que pode ser distribuída e acessada por meio de programas. SOMMERVILLE, I. Engenharia de Software. 9.ed. - São Paulo: Pearson Prentice Hall, 2011. Com base no conceito apresentado acima, analise as afirmativas a seguir sobre a diferença entre um serviço e um componente. I. Componentes devem ser independentes e fracamente acoplados. II. Um serviço define o que precisa de outro serviço, definindo seus requisitos em uma mensagem e enviando-a a esse serviço. III. Os serviços se comunicam por meio de troca de mensagens, expressas em XML. IV. Os Componentes não fazem uso de chamadas de procedimentos ou de métodos remotos para acessar a funcionalidade associada a outros serviços É correto o que se afirma em: ALTERNATIVAS I, apenas. II e III, apenas. II e V, apenas. I, III e IV, apenas. I, II, III, IV e V. 2ª QUESTÃO 22/04/2022 20:53 Unicesumar - Ensino a Distância 2/7 Refatoração de código toma experiência e tempo do desenvolvedor, como: tempo para entender o código; tempo para entender quais refatorações devem ser utilizadas e em qual contexto; tempo para aprender a usar as ferramentas de refatoração corretamente; e tempo para aprender o quanto a refatoração é suficiente. Disponível em: https://imasters.com.br/desenvolvimento/trabalhando-com-refatoracao. Acessado em: mar.2022. A refatoração pode surgir em dois momentos: para melhorar o código existente ou quando temos que jogar fora e começar do zero. Com base nessas informações, assinale a alternativa correta sobre as vezes que você pode refatorar o código. ALTERNATIVAS Quando acrescentar novas funcionalidades, quando se precisa consertar uma falha e enquanto revisa o código. Quando acrescentar recursos, quando se precisa consertar defeito de uma nova funcionalidade e enquanto revisa os requisitos. Quando acrescentar funções, quando se precisa consertar uma falha e enquanto revisa o código. Quando se altera funcionalidades no sistema, quando se precisa consertar um defeito na rede e enquanto revisa os requisitos. Quando acrescentar novas funcionalidades, quando se precisa consertar uma falha e enquanto revisa o código. 3ª QUESTÃO A evolução tecnológica irá acelerar a um passo cada vez mais rápido, chegando finalmente a era de inteligência não biológica que se combinará com a inteligência humana e a ampliará de maneira fascinante. E tudo isso, não importa como evolua, necessitará de software e sistemas que na comparação fazem nossos esforços atuais parecerem infantis. PRESSMAN, R.; MAXIM, B. R. Engenharia de Software – Uma abordagem profissional. 8. Ed. Porto Alegre: AMGH, 2016. Considerando o texto acima, analise as asserções abaixo: I. A grande maioria das tecnologias “promissoras” no domínio da engenharia de software suscita um grande interesse por alguns anos e depois passa a ser usada por um grupo dedicado de usuários. PORÉM II. Isso não significa que algumas não tenham valor, mas que o caminho para o sucesso por meio da inovação é longo e difícil. A respeito dessas asserções, assinale a opção correta: ALTERNATIVAS 22/04/2022 20:53 Unicesumar - Ensino a Distância 3/7 As asserções I e II são proposições falsas. A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I. 4ª QUESTÃO Um sistema distribuído é aquele no qual os componentes localizados em computadores interligados em rede se comunicam e coordenam suas ações apenas passando mensagens. Essa definição leva às seguintes características especialmente importantes dos sistemas distribuídos: concorrência de componentes, falta de um relógio global e falhas de componentes independentes. COULOURIS, G. et al.; Sistemas Distribuídos - Conceitos e Projeto. 5. ed. Porto Alegre: Bookman, 2013. O desejo de compartilhar recursos é uma das principais motivações para se construir e usar sistemas distribuídos. Com base nisso e no texto descrito acima, analise as afirmações a seguir sobre o termo “recurso”. I. Do ponto de vista do hardware, compartilhamos equipamentos como impressoras e discos para reduzir os custos. II. Caracteriza o conjunto de coisas que podem ser compartilhadas de maneira útil em um sistema de computadores interligados em rede. III. Abrange componentes de hardware, entidades definidas pelo software e objetos de dados de todos os tipos. IV. O compartilhamento de recursos reduz custos. É correto o que se afirma em: ALTERNATIVAS I, apenas. II e III, apenas. II e IV, apenas. II, III e IV, apenas. I, II, III e IV. 5ª QUESTÃO 22/04/2022 20:53 Unicesumar - Ensino a Distância 4/7 A integração contínua ajuda sua equipe a ser mais produtiva ao liberar os desenvolvedores de tarefas manuais e encorajar comportamentos que ajudam a reduzir o número de erros e bugs implantados para os clientes. Disponível em: https://aws.amazon.com/pt/devops/continuous-integration/. Acessado em: mar.2022. Com base no texto acima, assinale a alternativa correta sobre como funciona o Pipeline de Implantação. ALTERNATIVAS O restante do pipeline executa uma série de etapas de desenvolvimento para provar que é possível gerar uma entrega de versão. Cada teste de aceitação feito na versão candidata passa a aumentar a confiança no software final. Se a versão candidata passa em todos os testes de aceitação e automatizados, pode ser realizada a entrega da versão final ao cliente. Cria-se uma nova instância do pipeline a cada mudança feita na configuração, no código fonte e no ambiente ou em dados. Após o teste de aceitação feito manualmente pode ser feita a entrega da versão candidata ao cliente. 6ª QUESTÃO As falhas nos softwares são cada vez mais constantes. Na maioria das vezes, os sistemas críticos causam transtornos ocasionando perdas econômicas, danos físicos ou ameaças aos seres humanos. Os sistemas críticos são sistemas sociotécnicos ou técnicos, dos quais as pessoas dependem. Define-se sistema crítico, como um software em que suas características causam riscos inerentes a danos físicos, pessoal e financeiro Disponível em: https://www.devmedia.com.br/sistemas-criticos/18952. Acesso em: fev. 2021. Com base no fragmento de texto acima e sobre a análise de segurança, leia as alternativas a seguir e assinale a correta: ALTERNATIVAS Os requisitos de segurança devem ser levantados somente depois que o cliente utilizar o sistema. Os requisitos de segurança são os requisitos funcionais e eles influenciam o projeto de arquitetura do sistema. A tarefa de levantamento de requisitos de segurança utiliza as técnicas gerais de levantamento de testes de software. A tarefa projeto de medidas é onde as métricas e medidas de segurança precisam se encontrar na avaliação das propriedades. Na tarefa de modelagem de segurança é onde é feita uma descrição formal da política de segurança do sistema baseado nas informações modeladas no projeto de software. 7ª QUESTÃO 22/04/2022 20:53 Unicesumar - Ensino a Distância 5/7 Do ponto de vista etimológico, middle em inglês significa meio e o sufixo ware é usado para denotar conjunto ou para transformar a palavra na forma coletiva. O temo Middleware é usado para agrupar todas as tecnologias em software que estão entre a aplicação final e os fornecedores de dados para esta aplicação final. Disponível em: https://www.4linux.com.br/o-que-e-middleware. Acessado em: 17.jul.2021. Dentro do contextoapresentado acima, temos que o middleware costuma fornecer dois tipos distintos de suporte em um sistema distribuído. Considerando estes tipos distintos de suporte, analise as afirmações a seguir: I. No suporte a interações, o middleware coordena as interações entre diferentes componentes do sistema. II. No suporte a prestação de serviços comuns o middleware fornece transparência da localização, assim não é necessário que os componentes saibam os locais físicos dos outros componentes. III. No suporte a interações, o middleware pode suportar a conversão de parâmetros se diferentes linguagens de programação forem usadas para implementar componentes. IV. No suporte a prestação de serviços comuns, o middleware fornece implementações reusáveis de serviços que podem ser exigidas por vários componentes do sistema distribuído. É correto o que se afirma em: ALTERNATIVAS I, apenas. II e III, apenas. II e IV, apenas. I, III e IV, apenas. I, II, III e IV. 8ª QUESTÃO 22/04/2022 20:53 Unicesumar - Ensino a Distância 6/7 Ecossistema de software é uma tendência para tratar a crescente colaboração entre fornecedores de soluções de sistemas de informação (SI), clientes, entidades governamentais e outras partes interessadas dentro deste contexto. Disponível em: https://www.creativante.com.br/lettericia/blog/2009/44_2009.html. Acessado em: mar.2022. Analisando sobre o que foi exposto acima, avalie as afirmativas a seguir: I. O ambiente do IPhone é um exemplo de ECOS, onde os atores são apenas os usuários e os desenvolvedores da Apple. II. O iOS é a tecnologia de software central do ambiente do IPhone como exemplo de ECOS. III. Os ativos de software são os artefatos produzidos ou adquiridos e armazenados por uma empresa, como componentes, serviços, aplicações. IV. Os ativos de ECOS englobam os ativos reutilizáveis que podem ser criados dentro da empresa ou serem trazidos de fora da empresa. É correto o que se afirma em: ALTERNATIVAS I, apenas. I e II, apenas. I e IV, apenas. II, III e IV, apenas. I, II, III e IV. 9ª QUESTÃO Novas tecnologias são introduzidas regularmente, apresentadas como sendo a “solução” para muitos dos problemas que os engenheiros de software enfrentam e incorporam nos projetos grandes e pequenos. PRESSMAN, R.; MAXIM, B. R. Engenharia de Software – Uma abordagem profissional. 8. Ed. Porto Alegre: AMGH, 2016. Temos alguns desafios que enfrentamos ao tentarmos isolar tendências significativas em novas tecnologias. Com base nisso, assinale a alternativa que apresenta um desses desafios. ALTERNATIVAS Como o governo pode controlar o uso de sistemas no mercado e impor o uso como tendências. O motivo de ser necessário o uso de normas e padrões na definição das tendências se elas são novas. Prazo de antecedência que uma tendência bem-sucedida pode ser identificada. Possibilidade de uma tendência nova alterar a economia dos mercados de software existentes. Possibilidade de uma tendência nova poder controlar uma revolução na empresa e no mundo. 22/04/2022 20:53 Unicesumar - Ensino a Distância 7/7 10ª QUESTÃO A Refatoração é o processo de alterar um software de uma maneira que não mude o seu comportamento externo e ainda melhore a sua estrutura interna. Ela é utilizada para manter um software bem projetado mesmo com o decorrer do tempo e as mudanças que ele virá a sofrer. Disponível em: https://www.devmedia.com.br/introducao-a-refatoracao/21377. Acessado em fev.2021. Com base no conceito apresentado acima sobre refatoração e sobre os sintomas do catálogo de “maus cheiros”, assinale a alternativa correta: ALTERNATIVAS Código duplicado mostrando desperdício não é considerado um sintoma de mau cheiro. Inveja dos dados, quando um método está mais focado em outra classe do que a classe a que ela se encontra. A cirurgia com revólver é usada quando você executa uma mudança, tem que fazer alterações pequenas em muitas classes diferentes. Lista de parâmetros longa são mais fáceis de entender, porque se tornam fáceis de usar e porque você irá sempre alterá-las à medida que precisar de mais dados. Intimidade apropriada com classes vizinhas, na qual uma classe refere-se a partes privadas de outras classes e uma classe ociosa é quando ela não esteja fazendo o suficiente para se pagar.
Compartilhar