·

Análise e Desenvolvimento de Sistemas ·

Engenharia de Software

Envie sua pergunta para a IA e receba a resposta na hora

Fazer Pergunta
Equipe Meu Guru

Prefere sua atividade resolvida por um tutor especialista?

  • Receba resolvida até o seu prazo
  • Converse com o tutor pelo chat
  • Garantia de 7 dias contra erros

Texto de pré-visualização

Pergunta 1 0,25 em 0,25 pontos As classes representam o bloco de construção mais importante de qualquer sistema orientado a objetos, pois são utilizadas para capturar o domínio do problema no qual o sistema está sendo desenvolvido. Comparando classes com objetos, podemos afirmar que uma classe: Resposta Selecionada: a. Define as características e comportamentos dos objetos. Respostas: a. Define as características e comportamentos dos objetos. b. Atende a alguns instâncias de objetos. c. É um elemento de nível baixo. d. Não está contida nos níveis de um objeto. e. Contém os atributos genéricos de um objeto. Feedback da resposta: Resposta correta: A. Comentário: Classes devem possuir responsabilidades bem definidas; cada responsabilidade representa um contrato ou obrigações legais; sendo assim, podemos entender que uma classe é um "especificação" de um objeto, por meio da definição dos seus atributos e métodos. Pergunta 2 0,25 em 0,25 pontos No modelo cascata, as atividades são executadas de forma sequencial, ou seja de forma que uma atividade não é iniciada até que sua predecessora seja completamente finalizada. Por exemplo, a fase de concepção não tem início se não forem feitas todas as atividades na fase de requisitos. Nesse processo de desenvolvimento, qual a principal fragilidade no que tange a mudança de requisitos de software? Resposta Selecionada: c. Toda mudança deve retornar à fase inicial e refazer todo o processo. Respostas: a. Entrega do produto somente ao final do desenvolvimento. b. Toda mudança deve retornar à fase inicial e refazer todo o processo. c. Ciclos curtos de desenvolvimento. d. Entrega inicial sem a fase de concepção. e. Maior esforço para validar códigos. Feedback da resposta: Resposta correta: C. Comentário: A principal fragilidade de mudanças em requisitos está no fato de ter que retornar a fase inicial para análise de impacto e retrocesso; o que torna o processo de mudança de requisitos mais custoso. Pergunta 3 0,25 em 0,25 pontos No processo incremental, o ciclo de desenvolvimento é iniciado a partir de incrementos, ou seja, partes do software. Para cada incremento a metodologia se aproxima do processo cascata, ou seja, cada atividade somente é iniciada após a predecessora finalizada e validada. Nesse contexto, qual a principal diferença entre o processo cascata e o incremental? Resposta Selecionada: c. No incremental não é necessário que todos os requisitos estejam definidos. Respostas: a. No processo cascata o tempo do desenvolvimento é menor. b. Há muito retrabalho no processo incremental. c. No incremental não é necessário que todos os requisitos estejam definidos. d. No processo incremental há redução de custos do projeto. e. Há interferência dos clientes no processo. Feedback da resposta: Resposta correta: C. Comentário: No processo incremental os requisitos são detalhados a cada incremento e não na sua totalidade; como no processo cascata. Pergunta 4 0,25 em 0,25 pontos O mecanismo de herança, também chamado de generalização-especialização, é um dos fundamentos de orientação a objetos mais importantes, principalmente por proporcionar a reutilização. É uma característica do paradigma de herança: Resposta Selecionada: d. Apresentar atributos e métodos comuns a mais de uma classe. Respostas: a. Controlar a visibilidade de atributos e métodos. b. Permitir comportamentos diferenciados entre classes. c. Dar ênfase ao que é essencial. d. Apresentar atributos e métodos comuns a mais de uma classe. e. Definir o comportamento dos objetos. Feedback da resposta: Resposta correta: D. Comentário: Herança é um paradigma que permite definir atributos e métodos em uma classe-mãe para que suas classes filhas tenham os mesmos elementos ou mais de suas especialidades. Pergunta 5 0,25 em 0,25 pontos O modelo espiral de desenvolvimento é diferente dos outros modelos por causa de cada ciclo completo, ou cada iteração, não se produz ou implementa um sistema, e sim uma parte do sistema de software. Num ciclo, pode ter uma especificação de requisitos, por exemplo. Nesse modelo foi incluída uma preocupação, até então, não utilizada pelos outros modelos: qual é essa preocupação? Resposta Selecionada: a. Mitigação de riscos. Respostas: a. Mitigação de riscos. b. Testes de aceitação. c. Validação de requisitos pelo usuário. d. Prototipação. e. Desenvolvimento do produto. Feedback da resposta: Resposta correta: A. Comentário: O modelo espiral, ou também citado na literatura como modelo de Boehm (1988) tem como raiz o modelo incremental e com preocupação central está a mitigação de riscos. Pergunta 6 0,25 em 0,25 pontos O paradigma da orientação a objetos é uma forma de se desenvolver um sistema de software que envolve com um conjunto de componentes que interagem entre si para resolver um determinado problema. O paradigma que se preocupa em deixar visível apenas o que é necessário para a comunicação entre dois objetos, ou respeitar os limites da implementação do algoritmo interno de um elemento, é o: Resposta Selecionada: b. Encapsulamento. Respostas: a. Herança. b. Encapsulamento. c. Polimorfismo. d. Abstração. e. Agregação. Feedback da resposta: Resposta correta: B. Comentário: O encapsulamento é uma abordagem grama responsável pela visibilidade de atributos e métodos de uma classe. Pergunta 7 0,25 em 0,25 pontos O paradigma orientação a objetos produz modelos com componentes autônomos chamados objetos, que possuem suas próprias características e informações, assim como próprios componentes responsáveis pela manutenção dessa informação. A divisão de responsabilidade proposta pela orientação a objetos proporciona algumas vantagens. Assinale a alternativa que apresenta uma dessas vantagens: Resposta Selecionada: c. Facilidade de manutenção. Respostas: a. Redução de tempo de desenvolvimento. b. Menor custos de construção. c. Linguagens mais fáceis. d. Redução de complexidade. e. Facilidade de manutenção. Feedback da resposta: Resposta correta: E. Comentário: Os sistemas mais fáceis de alterar, pois mudanças nos requisitos não implicam necessariamente na alteração do sistema todo. Pergunta 8 0,25 em 0,25 pontos O processo de desenvolvimento de software resume-se a um conjunto de atividades executadas em uma determinada sequência, esse conjunto de atividades, também pode ser chamado de etapas, representando um traço que caracteriza a regularidade em um trabalho de engenharia de software. A etapa na qual o software é validado, refere-se neste requisitos especificados é denominado: Resposta Selecionada: d. Validação. Respostas: a. Aceitação. b. Especificação. c. Evolução. d. Validação. e. Implementação. Feedback da resposta: Resposta correta: D. Comentário: Etapa de validação confronto o que foi construído com as especificações definidas na fase de análise do sistema. Pergunta 9 0,25 em 0,25 pontos Segundo os criadores da UML, um sistema de software pode ser dividido em cinco vistas, tendo que dependendo da complexidade, nem todas vistas precisam ser desenvolvidas. A visão que representa o sistema de um ponto de vista externo, como interage com agentes externos como usuários ou outros sistemas, é chamada de: Resposta Selecionada: c. Casos de uso. Respostas: a. Projeto. b. Implantação. c. Casos de uso. d. Diagrama de classes. e. Processos. Feedback da resposta: Resposta correta: C. Comentário: A visão de casos de uso representa o que o sistema deve fazer e qual sua interação com os usuários que necessitam ou obtém informações desse sistema. Pergunta 10 0,25 em 0,25 pontos Uma técnica muito utilizada com o objetivo de antecipar mudanças que possam vir a ser mais custosas no desenvolvimento de um sistema de software, muitas usada na validação de requisitos, e que dever ser aplicada independente do processo de desenvolvimento utilizado é: Resposta Selecionada: e. Prototipação. Respostas: a. Testes de aceitação. b. Validação. c. Definição de requisitos. d. Planejamento. e. Prototipação. Feedback da resposta: Resposta correta: E. Comentário: A prototipação é uma técnica essencial para o levantamento e validação dos requisitos de um software e deve ser utilizada sempre, em qualquer processo de desenvolvimento.