Prévia do material em texto
Disciplina: Análise Orientada a Objetos I Avaliação: Avaliação II - Individual Semipresencial Legenda: Resposta Certa Sua Resposta Errada Parte superior do formulário 1. A maioria dos métodos utilizados em ambientes de desenvolvimento de software se baseia em uma decomposição funcional e/ou controlada por dados dos sistemas. Estas abordagens se diferem em diversos aspectos das abordagens que adotam metodologias orientadas a objetos, onde dados e funções são altamente integrados. O desenvolvimento de software com a abordagem orientada a objetos consiste na construção de módulos independentes ou objetos que podem ser facilmente substituídos, modificados e reutilizados. Ela retrata a visão do mundo real como um sistema de objetos cooperativos e colaborativos. Com relação aos modelos de elementos com uso de UML, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Objeto é a representação abstrata de coisas do mundo imaginário que, sob o ponto de vista do nosso problema, possuem atributos e métodos sofisticados. ( ) Um elemento pode existir em diversos tipos de diagramas, mas existem regras que definem que elementos podem ser mostrados em que tipo de diagrama. ( ) Objeto é um elemento que podemos manipular, acompanhar seu comportamento, criar, destruir etc. ( ) Interfaces são usadas para implementar ou não seus métodos em classes filhas. Assinale a alternativa CORRETA: a) V - V - V - F. b) F - F - F - F. c) F - V - V - V. d) F - V - V - F. 2. Unified Modelling Language (UML) é uma notação baseada em diagramas, cuja função principal é especificar, visualizar e documentar modelos de software orientados por objetos. Não pode ser considerada um método de desenvolvimento, pois não determina o modo de fazer as coisas. Apenas auxilia no entendimento dos cenários e na comunicação do entendimento para todos os envolvidos no desenvolvimento. Acerca da unificação da UML, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Ela foi criada a partir da unificação, inicialmente, dos métodos Booch e OMT. ( ) A UML anteriormente era chamada de Método unificado. ( ) O método OOSE foi incorporado posteriomente a UML. ( ) O método de Booch resultou no Método Unificado. Assinale a alternativa que apresenta a sequência CORRETA: a) V - V - V - F. b) V - V - F - F. c) F - V - V - F. d) V - F - V - V. 3. O levantamento dos requisitos é uma das etapas mais importantes em todo o projeto de software, pois é nela que o analista captura as necessidades dos usuários para posteriormente transformá-las em um produto concreto. Considerando a atividade de levantamento de requisitos e suas características, assinale a alternativa CORRETA: a) Os requisitos levantados erroneamente podem ser facilmente corrigidos durante a etapa de implementação. b) Um requisito levantado erroneamente ocasiona problemas em cascata nas demais etapas do projeto. c) O levantamento de requisitos é a última etapa antes do desenvolvimento do código-fonte propriamente dito. d) Uma das dificuldades do levantamento de requisitos é a ausência de ferramental adequado para o registro. 4. A maior parte do trabalho realizado durante o ciclo de vida de um software ocorre na manutenção deste. Além da descoberta de erros existentes, a manutenção ainda engloba a adaptação do software a mudanças de requisitos e à implementação de novas funcionalidades. Considerando os tipos de manutenção de software existentes e suas características, assinale a alternativa CORRETA: a) A manutenção adaptativa é em geral a menos custosa, pois normalmente envolve a alteração de funcionalidades já existentes. b) A manutenção corretiva é aquela em que são implementadas novas funcionalidades no software. c) A manutenção evolutiva é aquela em que se criam novas funcionalidades e melhorias para o software. d) A manutenção evolutiva é aquela em que se evolui o software através da correção dos erros existentes. 5. A vida de um software não finaliza após a sua implantação, ele continua existindo durante muito tempo. Será utilizado por anos, e várias atualizações ocorrerão, isto é, a manutenção é qualquer alteração no software após entrar em produção. Sobre a manutenção de software, classifique V para as sentenças verdadeiras e F para as falsas: ( ) É possível dizer que a modelagem utilizada pela UML diminui os custos da manutenção. ( ) O custo de manutenção de um software é insignificante comparado com o custo total do projeto. ( ) Ao fazer uso da modelagem utilizada pela UML, é facilitado o entendimento do do sistema por quem tiver que realizar a manutenção. ( ) A manutenção de software é reconhecida pelos profissionais de desenvolvimento. ( ) Ao se utilizar uma modelagem correta com uma documentação adequada o processo de manutenção é mais rápido. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) V - F - V - F - V. b) V - V - F - F - F. c) V - V - F - F - V. d) F - F - F - V - V. 6. Na engenharia de software, as fases de prototipação de um projeto compreendem a elaboração de modelos iniciais do software que será desenvolvido, objetivando uma visão mais ampla do produto final. Considerando as características da prototipação, assinale a alternativa CORRETA: a) No ciclo de desenvolvimento prototipação, não há a participação direta do cliente. b) Uma das dificuldades na prototipação é a ausência de ferramental adequado para a criação de protótipos. c) A prototipação não necessariamente envolve a criação de um software que possa ser executado pelo cliente. d) Uma das dificuldades da prototipação é conscientizar o cliente de que o que está sendo testado é somente um rascunho que está distante do produto final. 7. A Unified Modelling Language (UML) é uma linguagem ou notação de diagramas para especificar, visualizar e documentar modelos de software no contexto específico do paradigma orientado a objetos. Não é considerada uma metodologia de desenvolvimento e, portanto, não especifica como as coisas devem ser construídas ou conduzidas nos projetos. Esta linguagem é composta por vários elementos de modelo que representam as diferentes partes de um sistema. Seus objetivos primordiais são: especificação, documentação, estruturação para subvisualização e maior visualização lógica do desenvolvimento completo de um sistema de informação. Acerca os elemetos da UML, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Uma classe é um agrupamento de objetos. As classes de um sistema possuem relacionamentos entre elas para comunicação e para compartilhar informações. ( ) Um pacote é um conjunto de elementos agrupados. Esses elementos podem ser classes, diagramas ou até mesmo outros pacotes. O diagrama de pacotes é uma das opções da linguagem de modelagem unificada. ( ) Um componente representa um módulo físico do código e é modelado durante o ciclo de desenvolvimento e refinado sucessivamente durante a instalação e a execução do sistema. ( ) Um objeto é quem fará a execução classe especificada, sendo algo abstrato, ou seja, não oriundo do mundo real. Assinale a alternativa que apresenta a sequência CORRETA: a) V - V - F - F. b) V - V - V - F. c) V - V - V - V. d) F - F - V - F. 8. A dificuldade na realização de um projeto de software que entregue um produto de qualidade, dentro do prazo e custos esperados impulsiona o interesse por metodologias de estimativa e controle de projeto. Considerando as características das atividades de levantamento de custos e prazos em um projeto de software, assinale a alternativa CORRETA: a) A criação de uma margem de segurança em termos de prazo e custo não é recomendada em projetos de desenvolvimento de software. b) O levantamento de requisitos fornece uma estimativa precisa da complexidade envolvida em todo o projeto do software. c) Um problema comum em projetos de desenvolvimentode software é a necessidade de contratação de profissionais que não haviam sido previstos no início do projeto, o que acarreta um aumento de custos. d) Quando o levantamento de requisitos é feito na etapa inicial do projeto de software, o cálculo do valor exato do custo do software torna-se simples. 9. De acordo com Sommerville (2007), "a questão de se o sistema contribui ou não para os objetivos da empresa é crítica. Se o sistema não apoia estes objetivos, ele não tem valor real para a empresa". Apesar de parecer óbvio esse fato, muitas empresas nem sempre contribuem para os seus objetivos devido a alguns fatores. Referente ao levantamento e à análise de requisitos, assinale a alternativa CORRETA: FONTE: SOMMERVILLE, Ian. Engenharia de Software, 8. ed. São Paulo: Pearson Addison-Wesley, 2007. a) Um dos fatores críticos de sucesso desta fase é por não existirem incertezas com relação às potencialidades do sistema de informação. b) A comunicação é sem dúvida a maior vantagem da fase de levantamento de requisitos e da engenharia de software pela facilidade que ela ocorre. c) O usuário não tem contato direto em nenhum momento com o engenheiro de software ou analista nesta fase, as necessidades do usuário são compreendidas através de documentos apenas. d) O engenheiro de software ou analista busca compreender as necessidades do usuário. 10. A fase de design consiste basicamente no aprimoramento do diagrama de classes definido na fase de análise. É através da utilização dos documentos elaborados nesta fase que os desenvolvedores partirão para a programação propriamente dita, o que por si só justifica a importância desta. Com relação à fase de design e suas características, analise as seguintes sentenças: I- Nesta fase, são definidos novos atributos, métodos e funcionalidades para as classes. II- O diagrama de componentes é o artefato em que são registradas as classes e colaborações entre elas. III- As classes de infraestrutura são mescladas às classes de domínio na etapa de design. IV- Na fase de projeto serão modeladas as classes de infraestrutura que darão suporte às classes de domínio. Agora, assinale a alternativa CORRETA: a) As sentenças I, II e III estão corretas. b) As sentenças I, III e IV estão corretas. c) As sentenças II e IV estão corretas. d) As sentenças I e II estão corretas. Parte inferior do formulário