·

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. São apenas uma instância de objetos. c. É um elemento do mundo real. d. Define o ciclo de vida de um objeto. e. Possuem 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ção real, sendo assim, podemos entender que uma classe é uma "especificação" de um objeto, por meio de definição de seus atributos e métodos. Pergunta 2 0,25 em 0,25 pontos No modelo cascata, as atividades são executadas de forma sequencial, de tal forma que uma atividade não é iniciada até que sua predecessora seja completamente finalizada. Por exemplo, a modelagem não tem início enquanto a fase de análise não termine. Nesse processo de desenvolvimento, qual a principal fragilidade: no que tange à mudança de requisito de software? Resposta Selecionada: c. Todo mudança de deve recomeçar na fase inicial e refazer todo o processo. Respostas: a. Entrega do produto somente ao final do desenvolvimento. b. Toda mudança deve recomeçar na fase inicial. c. Todo mudança de deve recomeçar na fase inicial e refazer todo o processo. d. Ciclo curto durante o desenvolvimento. e. Maior esforço para validar. Feedback da resposta: Resposta correta: C. Comentário: A principal fragilidade de mudança de requisitos em cascata se refere ao fato de que retornar a fase inicial para análise de impacto implica ainda que todas as fases que se sucedem ao item que se modifica. 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 é a mesma 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 incremento? Resposta Selecionada: b. No incremental não é necessário que todos os requisitos estejam definidos. Respostas: a. No processo cascata o tempo de desenvolvimento é menor. b. No incremental não é necessário que todos os requisitos estejam definidos. c. Há muito retrabalho no processo incremental. d. No incremental é necessário testes mínimos para cada liberação de sistema. e. No processo incremental não há redução de custos do projeto. Feedback da resposta: Resposta correta: C. Comentário: No processo incremental os requisitos não 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 de exceção. 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 e mais as suas especialidades. Pergunta 5 0,25 em 0,25 pontos O modelo espiral de desenvolvimento é diferente dos outros modelos por que a cada ciclo completo, ou cada iteração, não se produz ou implementa um sistema, ou uma parte de um sistema de software. Num ciclo, pode ter uma interpretação de requisitos, por exemplo. Nesse modelo foi incluída uma preocupação, de entrada, 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 como preocupação central 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 é enxergado como um conjunto de componentes que interagem entre si para resolver uma determinada problema. A organização que se preocupa em deixar visível apenas o dado é necessário para a comunicação entre dois objetos, por exemplo, é uma das implementações de algo mais amplo e é denominado de: Resposta Selecionada: b. Encapsulamento. Respostas: a. Herança. b. Encapsulamento. c. Persistência. d. Abstração. e. Especialização. Feedback da resposta: Resposta correta: B. Comentário: O encapsulamento é a grande forma responsável pela visibilidade de atributos e métodos em uma classe. Pergunta 7 0,25 em 0,25 pontos O paradigma orientado a objetos produz modelos com componentes autônomos chamados objetos, que possuem suas próprias características e informações, assim como próprios conhecimentos responsáveis pela manutenção destas informações. A divisão de responsabilidades proposta pelo orientação a objetos proporciona algumas vantagens. Assinale a alternativa que apresenta uma dessas vantagens: Resposta Selecionada: a. Facilidade de manutenção. Respostas: a. Redução do tempo de desenvolvimento. b. Menor custos de construção. c. Linguagens mais fáceis. d. Redução da 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 adaptação de engenharia de software ou paradigma de engenharia de software, e que após cada uma pode ser validado, refere-se a especificidade e é denominado: Resposta Selecionada: d. Validação. Respostas: a. Aceitação. b. Especificação. c. Execução. d. Validação. e. Implementação. Feedback da resposta: Resposta correta: D. Comentário: Etapa de validação confronta o que foi construído com as especificidades 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 visões, sendo que dependem da complexidade, nem todas visões 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. Implementaçã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 na documentação de um sistema de software, muito usada na validação de requisitos, e que deve ser aplicada independente do processo de desenvolvimento utilizado é: Resposta Selecionada: d. 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.