Baixe o app para aproveitar ainda mais
Prévia do material em texto
Disciplina: Análise Orientada a Objetos I (ADS10) Avaliação: Avaliação II - Individual FLEX ( Cod.:425177) ( peso.:1,50) Prova: 7966143 Nota da Prova: 5,00 Legenda: Resposta Certa Sua Resposta Errada 1. A única certeza que se pode ter no desenvolvimento de software é que as alterações serão necessárias. É ilusório pensarmos que a vida de um software é encerrada logo após sua implantação. Sem sombra de dúvida, ele será utilizado por anos, e durante este período de uso serão necessárias inúmeras manutenções, seja por defeito, seja por atualizações, impostos, alterações de alíquotas, indiferente do motivo, a manutenção é certa. Sobre a manutenção de software, assinale a alternativa CORRETA: a) A manutenção de um software não influencia o custo total do projeto. b) A manutenção de um software ocorre apenas pelas solicitações realizadas pelos clientes que não sabem ao certo as suas reais necessidades. c) A manutenção ocorre antes do término do software. Desta forma, a vida de um software tem seu término, ou seja, se encerra após a sua implantação. d) A manutenção tem como característica a modificação do software após ele ter sido entregue ao cliente. 2. Segundo Sommerville (2007), "Nas décadas de 1980 e 1990, os métodos orientados a funções foram suplementados por métodos orientados a objetos". Diferentes abordagens foram propostas e elas foram integradas em uma única abordagem, criada de acordo com a Unified Modeling Language (UML). Referente à UML, assinale a alternativa CORRETA: FONTE: SOMMERVILLE, Ian. Engenharia de Software, 8. ed. São Paulo: Pearson Addison- Wesley, 2007. a) Retrata critérios de codificação de segurança de objetos independentes. b) Retrata a estrutura de código orientado a objeto em nível exatamente abaixo do próprio código. c) Retrata a estrutura de código orientado à linguagem no nível definido pelo usuário. d) Retrata a estrutura de código orientado a objeto em nível exatamente acima do próprio código. 3. Uma classe é a descrição de um tipo de objeto e todos os objetos são instâncias de classes. Objetos só podem ser instanciados de classes. Desta forma, a classe descreve os comportamentos assim como as propriedades daquele objeto. Sobre a classe de um objeto, classifique V para as sentenças verdadeiras e F para as falsas: ( ) As classes são utilizadas para classificar os objetos identificados no mundo real. ( ) As classes podem ser retiradas do domínio do problema ou de hipóteses. ( ) Uma classe define os atributos e os métodos de um conjunto de objetos. ( ) As classes são facilmente identificadas num sistema. ( ) As classes devem ser identificadas por especialistas no domínio do problema. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) V - V - F - F - V. b) V - F - V - V - F. c) V - F - V - F - V. d) F - F - F - V - V. 4. O termo classe é muito utilizado na programação e análise orientada a objetos, pois os objetos somente existem através da instanciação de uma classe, que fornece estado e comportamento padrão para estes durante seu ciclo de vida. Com relação à programação e análise orientada a objetos, classifique V para as sentenças verdadeiras e F para as falsas: ( ) As classes, em geral, representam elementos do domínio do problema no mundo real. ( ) Somente o estado de instâncias pode ser moldado através de uma classe. ( ) Uma instância é formada por estado e comportamento, sendo ambos definidos por um pedaço de software conhecido como classe. ( ) O comportamento de uma instância somente é definido através da herança. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) F - V - V - F. b) V - F - V - F. c) F - F - V - V. d) V - F - F - V. 5. Na fase de prototipação de projetos, é possível entender com mais clareza o propósito do software que está sendo desenvolvido, entender o negócio do cliente, propor melhorias, minimizar riscos e maximizar os tempos de desenvolvimento. Referente à prototipação, analise as sentenças a seguir: I- O uso de protótipos evita que os clientes após o desenvolvimento do software identifiquem que este não atende às suas reais necessidades decorrente aos problemas de comunicação entre usuário e engenheiro nas fases de levantamentos. II- É necessário utilizar algum tipo de ferramenta para trabalhar com protótipos. III- O protótipo tem como objetivo simplificar o entendimento dos requisitos, assim como as funcionalidades e os conceitos do software. IV- Ao se fazer uso de protótipos, fica claro que o apresentado é o desenvolvimento finalizado e não simplesmente um rascunho. V- O uso do protótipo faz com que o usuário esteja ciente no estágio que se encontra o software. Agora, assinale a alternativa CORRETA: a) As sentenças I e III estão corretas. b) As sentenças I, III e IV estão corretas. c) As sentenças I, II e V estão corretas. d) As sentenças II, III e V estão corretas. 6. A utilização da prototipação como prática em projetos de desenvolvimento de software busca a mitigação de alguns riscos comuns a este tipo de projeto. Além de mitigar certos tipos de riscos, tal abordagem apresenta vantagens tanto do ponto de vista do cliente quanto do desenvolvedor de software. Considerando as características da prototipação, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Em projetos que adotem este tipo de prática, o ciclo de desenvolvimento não ocorre de forma iterativa. ( ) Uma das dificuldades da prototipação é conscientizar o cliente de que o que está sendo testado é um rascunho que está distante do produto final. ( ) No ciclo de desenvolvimento prototipação, a participação direta do cliente auxilia a evitar surpresas no momento da entrega do produto. ( ) Existem diversas ferramentas que auxiliam o desenvolvimento de protótipos de software. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) F - F - V - F. b) F - V - V - V. c) F - F - V - V. d) V - F - F - V. 7. Em projetos de desenvolvimento de software existem etapas pré-definidas para compor o ciclo de vida do software, sendo que cada uma é responsável por um conjunto de atividades. Estas atividades resultam em documentos, também conhecidos como artefatos, cujo conteúdo é subsídio para que a etapa posterior possa ser executada. Considerando as características destas etapas, classifique V para as sentenças verdadeiras e F para as falsas: ( ) As etapas de levantamento de requisitos e análise servem para fazer a delimitação do problema a ser resolvido. ( ) As etapas de projeto e desenvolvimento utilizam os artefatos desenvolvidos na análise para propor uma solução técnica. ( ) A etapa de levantamento de requisitos utiliza basicamente o diagrama de classes como subsídio técnico. ( ) Um dos subsídios da etapa de desenvolvimento do código-fonte é o diagrama de classes. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) V - F - F - V. b) V - V - F - V. c) F - F - V - V. d) F - F - V - F. 8. A UML não é somente uma padronização de uma notação, é também o desenvolvimento de novos conceitos que não são normalmente utilizados. O entendimento da UML vai além de aprender a simbologia e o seu significado, significa aprender a modelar objetos orientados no estado da arte. A linguagem UML possui uma série de objetivos particulares. Sobre as características desta linguagem, analise as sentenças a seguir: I- Provém aos usuários uma linguagem de modelagem visual expressiva e pronta para uso, de forma que os usuários dessa linguagem possam desenvolver e intercambiar modelos significativos. II- A UML é independente de linguagens de programação e processos de desenvolvimento de softwares particulares. III- Estimular o crescimento de modelagens independentes. IV- Suportarconceitos de desenvolvimento de nível mais alto, tais como colaboração, estruturas, modelos e componentes. V- Fornecer uma dependência para as linguagens de programação. Assinale a alternativa CORRETA: a) As sentenças I, II e V estão corretas. b) As sentenças II, III e V estão corretas. c) As sentenças I, III e IV estão corretas. d) As sentenças I, II e IV estão corretas. 9. Os relacionamentos ligam as classes/objetos entre si, criando, desta forma, as relações lógicas entre as entidades. Os tipos de relacionamentos que ligam essas classes/objetos entre si podem ser de alguns tipos. Desta forma, sobre os tipos de relacionamentos, analise as sentenças a seguir: I- Relacionamento do tipo associação representa uma ligação entre os elementos, ou seja, é uma relação que descreve um conjunto de vínculos entre os elementos do modelo. II- Relacionamento do tipo associação pode ser do tipo unário, quando o relacionamento ocorre de uma classe para consigo mesmo; do tipo binário, neste caso, existem duas classes envolvidas na associação e do tipo n-ário quando existem três ou mais classes envolvidas na associação, mas somente uma classe pode aparecer mais de uma vez. III- Relacionamento do tipo agregação é a representação da estrutura todo-parte. Sua representação é realizada por uma linha ligando as duas classes da relação e possui um símbolo diamante (losango). IV- Relacionamento do tipo dependência ocorre quando duas classes possuem um relacionamento de dependência, ou seja, uma alteração em alguma dessas classes poder afetar a outra classe; mas o inverso não é verdadeiro. V- Relacionamento do tipo herança é quando uma das classes detalha a outra classe, a classe que herda não pode conter nenhum elemento que não esteja na classe origem. Agora, assinale a alternativa CORRETA: a) As sentenças I, II, III e V estão corretas. b) As sentenças I, II, III e IV estão corretas. c) Somente a sentença II está correta. d) As sentenças II, III, IV e V estão corretas. 10.A manutenção de um software consiste na alteração de seu código-fonte de maneira a fazer sua adaptação a uma nova situação do domínio de conhecimento onde este software atua. Tais alterações são constantes e representam, em geral, a maioria do trabalho no ciclo de vida de um software. Considerando as características das manutenções de software, analise as seguintes sentenças: I- A manutenção corretiva é aquela em que são corrigidos problemas e feitas pequenas adaptações no software. II- A manutenção evolutiva é aquela em que se evolui o software através da correção dos erros existentes. III- A manutenção adaptativa é em geral a mais custosa, pois envolve a alteração de funcionalidades já existentes. IV- A manutenção evolutiva é aquela em que se criam novas funcionalidades e melhorias para o software. Agora, assinale a alternativa CORRETA: a) As sentenças I, II e III estão corretas. b) As sentenças II e IV estão corretas. c) As sentenças I e II estão corretas. d) As sentenças I, III e IV estão corretas. Prova finalizada com 5 acertos e 5 questões erradas.
Compartilhar