Baixe o app para aproveitar ainda mais
Prévia do material em texto
Disciplina: Projeto Orientado a Objetos (ADS20) Avaliação: Avaliação Final (Objetiva) - Individual Semipresencial ( Cod.:655525) ( peso.:3,00) Prova: 27580758 Nota da Prova: 8,00 Legenda: Resposta Certa Sua Resposta Errada 1. O desenvolvimento de um projeto de software orientado a objetos, dentro das boas práticas, implica desenvolver a documentação, através de modelos da UML (Unified Modeling Language), antes da codificação. Neste sentido, os modelos de objetos servem para a definição de objetos e suas classes. Além disso, o nível de detalhamento dos diagramas deve se aprofundar até haver a facilidade de compreendimento do sistema. Sobre o exposto, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Se uma empresa desenvolvedora de software possui um processo definido de desenvolvimento, ela sempre utilizará os mesmos tipos de modelos para todos os projetos. ( ) A modelagem serve para especificar a arquitetura e o comportamento de todas as funcionalidades do sistema. ( ) A modelagem serve como documentação das decisões tomadas para um determinado projeto. ( ) A utilização de modelagem orientada a objetos em um projeto garante que não haja estouro de memória. Assinale a alternativa que apresenta a sequência CORRETA: a) F - V - V - F. b) F - V - V - V. c) V - F - F - V. d) V - V - F - F. 2. As métricas de software são métodos da Engenharia de Sofware que servem para tornar um projeto de software mensurável, isto é, em número, permitindo a definição de custos e prazos. Partindo desse pressuposto, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Medida direta é uma das categorias de métricas de software que se foca no custo e esforço do desenvolvimento das atividades. ( ) Medida indireta é uma das duas categorias de métricas de software que se foca exclusivamente com a qualidade e eficiência do software. ( ) Contagem de métodos é uma das métricas que pode ser utilizada no desenvolvimento de software orientado a objetos. ( ) Quantidade de atributos de uma classe é uma das métricas que pode ser utilizada no desenvolvimento de software orientado a objetos. Agora, assinale a alternativa que apresenta a sequência CORRETA: https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTI1&action4=MjAyMC8y&prova=Mjc1ODA3NTg=#questao_1%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTI1&action4=MjAyMC8y&prova=Mjc1ODA3NTg=#questao_2%20aria-label= a) V - F - V - V. b) V - V - F - F. c) F - V - V - F. d) V - V - F - V. 3. No desenvolvimento de software, o padrão de arquitetura MVC pode ser descrito como a divisão da arquitetura de um software em três camadas, sendo que cada uma destas camadas possui suas próprias responsabilidades. Neste sentido, um sistema desenvolvido seguindo este padrão, possui a vantagem de tornar o trabalho de manutenção reduzido significativamente. Na figura anexa, apresenta-se as três camadas do MVC, as quais são fundamentais para a arquitetura de um sistema que utiliza este padrão de arquitetura. A partir das três camadas apresentadas, assinale a alternativa CORRETA: FONTE: Disponível em: <https://pt.wikipedia.org/wiki/MVC>. Acesso em: 9 jul. 2018. a) Na camada Controller estão as classes que realizam a intermediação entre as camadas View e Model. b) Telas de cadastro e classes controladoras pertencem a camada View. c) Telas de cadastro de um determinado sistema pertencem a camada Model. d) A camada View pode ser exemplificada com classes controladoras de um sistema. 4. Ao ser desenvolvido um software utilizando a orientação a objetos, em qualquer contexto, ocorre a modelagem de algo do mundo real, isto é, objetos que estão dentro do contexto do sistema. Neste sentido, uma classe descreve as características de um modelo particular de um objeto. Está sendo apresentada uma parte de um sistema de cadastro de veículos automotores no diagrama de classes a seguir. Considerando as informações apresentadas no diagrama de classes, assinale a alternativa CORRETA: a) A classe "Veiculo" está herdando métodos e atributos da classe "Marca". b) Existe uma composição ocorrendo entre as classes "Carro" e "Navio". c) A classe "Veiculo" delega a classe "Marca", pois está ocorrendo uma composição. d) A classe "Veiculo" está herdando métodos e atributos das classes "Carro" e "Navio". Anexos: Questao 216845 Projeto OO https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTI1&action4=MjAyMC8y&prova=Mjc1ODA3NTg=#questao_3%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTI1&action4=MjAyMC8y&prova=Mjc1ODA3NTg=#questao_4%20aria-label= https://portaldoalunoead.uniasselvi.com.br/extranet/layout/request/imag_prova_ead_anexo_n2.php?action1=Mjc1ODA3NTg=&action2=Njg5MTc2 5. Muitos padrões de projetos surgiram como solução para problemas que frequentemente ocorriam durante projetos de softwares orientados a objetos. Estes problemas eram solucionados, e a partir destas soluções, desenvolvia-se um padrão abstrato que pudesse ser reutilizado em novos e diferentes projetos. Sobre padrões de projeto e suas aplicações, avalie as asserções a seguir e a relação proposta entre elas: I- Através da análise do histórico de projetos antigos orientados a objetos, é possível afirmar que muitos dos problemas encontrados atualmente em projetos orientados a objetos já aconteceram, os quais não foram devidamente documentados. PORQUE II- As equipes mais experientes de desenvolvimento de software não buscam uma solução nova para um problema que ocorreu no projeto em desenvolvimento. Ao invés disso, analisam soluções de problemas parecidos, testadas em produtos de softwares antigos, documentados, e os reutilizam repetidamente quando ocorrerem. No entanto, soluções desenvolvidas e testadas que não foram documentadas, quando necessitadas em um novo projeto, requisitarão de recursos financeiros e tempo para resolver o problema. Assinale a alternativa CORRETA: a) A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. b) As asserções I e II são proposições falsas. c) As asserções I e II são proposições verdadeiras, e a I é uma justificativa correta da II. d) As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I. 6. Durante o desenvolvimento de software orientado a objetos, muitos podem ser os problemas encontrados durante o projeto. No entanto, muitos deles já foram solucionados, pois ocorriam com mais frequência, sendo então documentados para reutilização de sua solução. Neste sentido, ao se desenvolver a solução para um problema recorrente, é necessário torná-lo padrão, isto é, documentar e garantir que possa ser reutilizado em outros projetos. Sobre o exposto, classifique V para as sentenças verdadeiras e F para as falsas: ( ) A utilização da orientação a objetos possui a vantagem de extensibilidade e reusabilidade, garantindo assim o sucesso do projeto. ( ) É possível analisar o histórico de projetos anteriores para afirmar que muitos problemas recorrentes não foram documentados e, desta forma, encontrar, em alguns casos, a solução já tomada para um destes problemas. ( ) Equipes de desenvolvimento de software experientes normalmente criam novas soluções para problemas recorrentes, facilitando o entendimento e o raciocínio pela busca de soluções, ao invés de buscar padrões prontos. ( ) É necessário conhecer os limites e as estruturas da solução, além dos frameworks, que dão suporte ao domínio para acorreta utilização dos padrões de projetos. Assinale a alternativa que apresenta a sequência CORRETA: https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTI1&action4=MjAyMC8y&prova=Mjc1ODA3NTg=#questao_5%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTI1&action4=MjAyMC8y&prova=Mjc1ODA3NTg=#questao_6%20aria-label= a) V - F - V - V. b) F - V - V - F. c) F - V - F - V. d) V - V - F - F. 7. Os padrões de projeto são soluções a problemas que normalmente ocorrem em projetos, os quais foram definidos como soluções bem projetadas para a reutilização. Neste sentido, os padrões de projeto tornam a reutilização de arquiteturas e soluções mais fácil e flexível, além de uma maior facilidade de manutenção, reduzindo a complexidade de projeto. Esta ideia de documentar soluções para problemas rotineiros surgiu através da arquitetura civil, o que foi adaptado para o desenvolvimento de software. Sobre a definição e o uso de padrões de projeto, analise as sentenças a seguir: I- A utilização da orientação a objetos para o desenvolvimento de um software garante sucesso do projeto, pois neste paradigma existe reusabilidade de código- fonte. II- A orientação a objetos sustenta muitos dos padrões de projeto, permitindo a reusabilidade e a extensibilidade. III- No desenvolvimento de software orientado a objetos, muitos problemas que ocorrem podem já ter sido solucionados em projetos anteriores e que não foram documentados. IV- A documentação de uma solução resolvida em um projeto anterior pode reduzir tempo e recursos financeiros de um novo projeto. Está correto o que se afirma em: a) II e III, apenas. b) I, II, III e IV. c) II, III e IV, apenas. d) II, apenas. 8. O desenvolvimento de software é complexo e trabalhoso e, devido a isso, a Engenharia de Software surgiu para resolver alguns dos problemas deste processo. O gerenciamento da qualidade e da produtividade é um deles. Para isso, surgem as métricas de software, que podem auxiliar o desenvolvimento de software, discriminando o tempo necessário para que uma atividade seja desenvolvida, por exemplo. Existem vários tipos de métricas diferentes, cada uma mais apropriada para um determinado projeto. Neste contexto, assinale a alternativa CORRETA: a) Medidas diretas abordam o custo e o esforço aplicados nas atividades, e métricas indiretas relacionam-se com funcionalidade, qualidade, complexidade e eficiência. b) Medidas indiretas contemplam somente as métricas que são orientadas ao tamanho de uma atividade. c) Medidas indiretas são as mais fáceis de serem desenvolvidas, pois causa um esforço menor no processo de medição, pois relaciona-se com a eficiência de uma atividade. d) Medidas indiretas abordam o custo e o esforço aplicado nas atividades, e métricas diretas relacionam-se com funcionalidade, qualidade, complexidade e eficiência. https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTI1&action4=MjAyMC8y&prova=Mjc1ODA3NTg=#questao_7%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTI1&action4=MjAyMC8y&prova=Mjc1ODA3NTg=#questao_8%20aria-label= 9. Métricas de software auxiliam a equipe de gestão de projetos a mensurar custos e prazos, porém existem vários tipos de métricas que surgiram para este fim, cada uma com seu método de mensuração. Assinale a alternativa CORRETA que descreve a métrica de software chamada COCOMO: a) É uma das técnicas de mensuração de custos e prazos mais utilizadas na gestão de projetos e sua unidade de medida são os dados e as transações que o sistema realiza. b) É uma métrica de mensuração de custos e prazos que se baseia nos operadores lógicos e operandos (variáveis e constantes) utilizados no código-fonte. c) É uma métrica de mensuração de custos e prazos que se baseia na representação de programas por grafos dirigidos, sendo o fluxo de controle. d) É uma técnica de mensuração de custos e prazos que utiliza como unidade de medida o cálculo do número de linhas de código-fonte do programa que será entregue ao cliente. 10. Através da utilização do paradigma da orientação a objetos para o desenvolvimento de software, é possível realizar a modelagem. A modelagem de um software trata da criação de modelos, isto é, uma visão física do sistema, permitindo descrever aspectos estruturais ou comportamentos do software. Sobre a modelagem de software, analise as sentenças a seguir: I- Modelo de caso de uso apresenta uma visão geral dos requisitos, identificando funcionalidades e atores. II- Diagrama de classes apresenta os objetos que fazem parte do contexto da aplicação, assim como seus atributos e associações. III- Diagrama de atividades apresenta o fluxo de atividades entre objetos que estão dentro do contexto da aplicação. IV- Alguns modelos servem para validar situações antes das mesmas tornarem forma física. Está correto o que se afirma em: a) I, II e III. b) I, III e IV. c) II, apenas. d) I, apenas. 11. (ENADE, 2008) Com relação a conceitos de orientação a objetos, julgue os seguintes itens. I- As variáveis ou métodos declarados com modificador de acesso private só são acessíveis a métodos da classe em que são declarados. II- Uma classe deve possuir uma única declaração de método construtor. III- Uma instância de uma classe abstrata herda atributos e métodos de sua superclasse direta. IV- O polimorfismo permite substituir a lógica condicional múltipla (lógica switch ou faça caso). https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTI1&action4=MjAyMC8y&prova=Mjc1ODA3NTg=#questao_9%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTI1&action4=MjAyMC8y&prova=Mjc1ODA3NTg=#questao_10%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTI1&action4=MjAyMC8y&prova=Mjc1ODA3NTg=#questao_11%20aria-label= Estão certos apenas os itens a) II e III. b) I e II. c) I e IV. d) I e III. 12. (ENADE, 2014) Nos anos 70, os sistemas executavam em mainframes com aplicativos escritos em linguagens estruturadas e com todas as funcionalidades em um único módulo, com grande quantidade de linhas de código. Acessos a banco de dados não relacionais, regras de negócios e tratamento de telas para terminais "burros" ficava no mesmo programa. Posteriormente, uma importante mudança ocorreu: a substituição de terminais "burros" por microcomputadores, permitindo que todo o tratamento da interface, e de algumas regras de negócios, passassem a ser feitas nas estações clientes. Surgiram as aplicações cliente-servidor. A partir dos anos 90, até os dias atuais, as mudanças foram mais radicais, os bancos de dados passaram a ser relacionais e o sistemas distribuídos. As linguagens passaram a ser orientadas a objetos, cuja modelagem encapsula métodos e oferece funcionalidades através de métodos. A interface passou a ser web. Vive-se a era das aplicações em três camadas. Considerando a evolução da arquitetura de software de sistemas de informação, conforme citado no texto acima, avalie as seguintes afirmações. I- A separação dos sistemas em três camadas lógicas torna os sistemas mais complexos, requerendo pessoal mais especializado. II- A separação dos sistemas em três camadas lógicas torna os sistemas mais flexíveis, permitindo que as partes possam ser alteradas de forma independente. III- A separação dos sistemas emtrês camadas lógicas aumentou o acoplamento, dificultando a manutenção. É correto o que se afirma em: a) II, apenas. b) I e III, apenas. c) III, apenas. d) I e II, apenas. Prova finalizada com 8 acertos e 4 questões erradas. https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTI1&action4=MjAyMC8y&prova=Mjc1ODA3NTg=#questao_12%20aria-label=
Compartilhar