Prévia do material em texto
1. MVC (Model View Controller) é um dos padrões de desenvolvimento de software que é baseado em três camadas: Modelo (Model), Visão (View) e Controladora (Controller). A camada Modelo concentra classes entidades, regras de negócio e de acesso ao banco de dados. A camada Visão baseia-se em como os dados serão apresentados aos clientes, como telas, por exemplo. E a camada Controladora concentra as classes que traduzem interações do fluxo de dados com as camadas de visão e modelo. Referente ao padrão MVC de desenvolvimento de software, analise as seguintes afirmativas: I- Uma desvantagem do padrão MVC está na alteração dos componentes visuais do sistema que, como consequência, sempre afetará as camadas modelo e controladora. II- Uma vantagem do padrão MVC é a alta coesão (classes com responsabilidades distintas) e pouca dependência entre as classes. III- Uma desvantagem do padrão MVC é o trabalho gerado ao desenvolver uma nova funcionalidade, devido à necessidade do desenvolvimento das três camadas. IV- Uma possível vantagem do MVC é a possibilidade de sua combinação com outros padrões, como o DAO, DTO e o BO. V- Uma definição para o MVC pode ser descrita por separar o código que manipula a lógica de negócios do código que manipula a apresentação ao usuário e da manipulação de dados. Agora, assinale a alternativa CORRETA: a) As afirmativas I, III, IV e V estão corretas. b) As afirmativas II, III, IV e V estão corretas. c) Somente a afirmativa I está correta. d) As afirmativas I e II estão corretas. 2. Existem vários padrões que são normalmente utilizados no desenvolvimento de software orientado a objetos, cada um apresentando sua própria vantagem ou facilidade de desenvolvimento. Dentre os padrões de desenvolvimento orientado a objetos, cita-se o Core J2EE Patterns com o DAO (Data Access Object), BO (Business Object) e o DTO (Data Transfer Object). Referente aos padrões DAO, BO e DTO de desenvolvimento de software orientado a objetos, analise as seguintes afirmativas: I- Uma classe do padrão DAO oculta dos clientes os detalhes de implementação das fontes de dados, separando estas classes de persistência em uma camada separada da aplicação. II- Uma classe do padrão DAO aumenta a dificuldade de alteração de uma consulta a uma tabela do banco de dados, por exemplo, embora mantenha as classes separadas. III- Uma classe BO do padrão serve para separar as classes de acesso ao banco de dados das classes de negócio. IV- Uma classe do padrão BO promove a abordagem de orientação a objeto do modelo de negócio, isto é, centraliza as regras de negócio neste tipo de classe. V- Uma classe do padrão DTO serve para encapsular os dados de negócio, ou BO, e enviá-los ou recuperá-los pelas camadas da aplicação. Agora, assinale a alternativa CORRETA: a) As afirmativas I e II estão corretas. https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTIz&action4=MjAyMC8y&prova=MjY4NzEzMzE=#questao_1%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTIz&action4=MjAyMC8y&prova=MjY4NzEzMzE=#questao_2%20aria-label= b) Somente a afirmativa I está correta. c) As afirmativas II, III e V estão corretas. d) As afirmativas I, IV e V estão corretas. 3. Padronizar o desenvolvimento de um projeto orientado a objetos auxilia na delimitação de suas características e compará-las com outros projetos, facilitando assim a atividade de escolher pelo padrão de um novo projeto. O Archetype é um padrão que define a base de negócio da aplicação, em que são desenvolvidas abstrações em um nível mais generalizado que o da Análise. Sobre o Archetype, assinale a alternativa CORRETA: a) O Archetype define uma base de negócio para um modelo do projeto e não é influenciado por alterações no projeto, pois a ideia inicial é preservada. b) O Archetype pattern define um nível de abstração inferior dos conceitos de negócios. c) O Archetype possui semelhança com a atividade de análise, pois ambas atividades definem o mesmo nível de abstração de um negócio. d) O Archetype permite o desenvolvimento da modelagem de conceitos de negócios, porém, não garante que alterações da ideia conceitual possa acontecer. 4. O processo de medição das atividades de desenvolvimento de software é muito importante para o projeto, controlando tempo, custo e recursos. Para realizar a medição de projetos de softwares orientado a objetos, existem métricas específicas, pois a análise do código-fonte é diferenciada, sendo utilizados objetos para a elaboração do projeto e do sistema. No entanto, tanto em projetos de software estruturados quanto nos orientados a objetos, o objetivo das métricas de medir o tempo, custo e prazo para realização das atividades permanece. Sobre as métricas para medir desenvolvimento de software, analise as sentenças a seguir: I- A métrica de porcentagem de classes-chave examina diagramas de classes avaliando se o resultado está entre 30% e 50%. II- Número de filhos (NOC) mede o número de subclasses subordinadas a uma classe, indicando a influência da classe no projeto. III- Média de tamanho dos métodos é o tamanho médio dos métodos obtido pela média de linhas de código por método. IV- Complexidade do método é obtida através do cálculo da quantidade de linhas que ele possui, sendo uma complexidade maior quando ultrapassadas vinte linhas. Assinale a alternativa CORRETA: a) Somente a sentença I está correta. b) As sentenças I, II e III estão corretas. c) As sentenças II e IV estão corretas. d) As sentenças III e IV estão corretas. 5. O paradigma Goal Question Metrics (GQM) pode ser descrito como uma abordagem de cima para baixo que define um sistema de medição baseado em metas para o desenvolvimento de software. Neste sentido, é utilizado para definir um conjunto de métricas a ser coletado, e especifica que cada métrica deve medir algo bem https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTIz&action4=MjAyMC8y&prova=MjY4NzEzMzE=#questao_3%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTIz&action4=MjAyMC8y&prova=MjY4NzEzMzE=#questao_4%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTIz&action4=MjAyMC8y&prova=MjY4NzEzMzE=#questao_5%20aria-label= específico. Sobre o GQM e métricas, analise as sentenças a seguir: I- O processo do GQM inicia-se com definição dos interessados, seguido pela definição das questões. II- Para a utilização adequada, é necessário primeiro definir as questões do GQM para posteriormente selecionar as métricas a serem utilizadas. III- O processo de medição não é cíclico, pois as fases são sequenciais, e caso no início ocorrer algo errado, a conclusão da métrica será afetada. IV- O processo de medição deve permitir melhoria contínua do processo, avaliando métodos e ferramentas utilizadas na construção do projeto. Está correto o que se afirma em: FONTE: Disponível em: <https://www.devmedia.com.br>. Acesso em: 3 jul. 2018. a) I, apenas. b) IV, apenas. c) II e IV, apenas. d) I e II, apenas. 6. Existem várias métricas de software que surgiram com a necessidade de mensuração de custos e prazos de um projeto de software. Cada métrica possui sua própria unidade de medida, isto é, sua prória metodologia de desenvolvimento do cálculo para atingir o tamanho do projeto. Associe os itens, utilizando o código a seguir: I- Análise por Pontos de Função. II- COCOMO. III- Linhas de Código. IV- Métrica de Ciência do Software. ( ) Métrica que possui a desvantagemde um código-fonte possuir recursividade, devido ao código ser menos extenso neste caso. ( ) Métrica que possui como unidade de medida o número de linhas do código- fonte do programa que será entregue ao usuário. ( ) Métrica que considera o cálculo nos verbos executáveis, operadores lógicos e variáveis e constantes. ( ) Métrica que possui como unidade de medida os dados gerados e as transações realizadas pelo sistema. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) III - I - II - IV. b) III - II - IV - I. c) II - III - I - IV. d) II - III - IV - I. 7. Para melhorar a qualidade de um projeto, é necessário que o prazo e custo sejam cumpridos. Além disso, a estrutura de um software deve ser medida para que se tenha um bom equilíbrio na montagem das classes com o número de métodos, atributos, nós de uma herança, mensagens trocadas, entre outros, que são aferidas https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTIz&action4=MjAyMC8y&prova=MjY4NzEzMzE=#questao_6%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTIz&action4=MjAyMC8y&prova=MjY4NzEzMzE=#questao_7%20aria-label= pelas métricas de construção. Partindo desse pressuposto, classifique V para as sentenças verdadeiras e F para falsas: ( ) A técnica de medição baseada na contagem total de mensagens enviadas por um método é influenciada pela linguagem de programação utilizada. ( ) A métrica linhas de código (LOC) conta a quantidade de linhas ativas de um código-fonte, sendo que quando o método possui um tamanho grande, considera-se que ele é orientado a objetos. ( ) A técnica que analisa o percentual de comentários em um código especifica que o percentual de linhas comentadas deve ser entre 20% e 30% do código-fonte. ( ) A técnica que contabiliza a quantidade de classes abstratas, que facilitam a reutilização de código por suas subclasses, menciona que um projeto bem definido possui média de 10% de classes abstratas. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) V - F - V - V. b) V - F - V - F. c) F - V - V - F. d) V - V - F - V. 8. Atualmente, existem várias métricas de software que possuem o objetivo de auxiliar na mensuração de um projeto de software. Ressalta-se que existem medições por linhas de código, pontos por função, defeitos por linhas de código, entre outros. Referente a métricas de software, analise as seguintes afirmativas: I- O GQM é utilizado para definição do conjunto de métricas a ser coletado, em que são definidos objetivos e tarefas da mensuração, elaboradas as questões, cujas respostas serão numéricas. II- O processo de medição de software exige maturidade e apenas análise de dados para um resultado mais exato. III- O processo de medição de um projeto de software deve medir processos e pessoas, o que facilita o tamanho do software. IV- O processo de medição de software deve ser selecionado por várias pessoas da equipe e com conhecimento técnico. V- O plano de métricas deve contemplar o porquê as métricas satisfazem o objetivo e quais métricas serão coletadas. Assinale a alternativa CORRETA: a) Somente a afirmativa I está correta. b) As afirmativas II, III, IV e V estão corretas. c) As afirmativas I e II estão corretas. d) As afirmativas I, IV e V estão corretas. 9. A maturidade do gerenciamento de projetos é atingida quando existe eficácia na medição das atividades dos projetos, permitindo determinar o tamanho do projeto em números, isto é, definir seu prazo e custo. As métricas surgiram com este objetivo, as quais são divididas em duas categorias: diretas e indiretas. Sobre as métricas de software, analise as afirmativas a seguir: https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTIz&action4=MjAyMC8y&prova=MjY4NzEzMzE=#questao_8%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTIz&action4=MjAyMC8y&prova=MjY4NzEzMzE=#questao_9%20aria-label= I- A funcionalidade e a qualidade do software são exemplos de medições que são categorizadas como métricas diretas. II- A complexidade e a eficiência do software são exemplos de medições que são categorizadas como métricas diretas. III- Linhas de código e esforço podem ser medidas através de métricas orientadas ao tamanho. IV- Obter indicador da qualidade do produto de software é um dos motivos para que um software seja medido. Assinale a alternativa CORRETA: a) As afirmativas I, II e III estão corretas. b) As afirmativas I, II e IV estão corretas. c) As afirmativas III e IV estão corretas. d) Somente a afirmativa I está correta. 10. Modelos são utilizados para facilitar a compreensão dos problemas de um projeto, podendo ser utilizado mais de um modelo para especificar o mesmo problema. Dependendo do problema, um determinado modelo pode ser mais adequado. O Archetype pattern pode ser descrito como a capacidade de representação de uma mesma situação de formas diferentes. Partindo desse pressuposto, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Abstract Data Type pode ser exemplificado pelo Repository (Base de Dados), cujo objetivo é disponibilizar a base de dados para diferentes interfaces de clientes. ( ) Bridge permite que uma interface ou abstração possa variar independentemente de sua implementação. ( ) Builder permite separar a construção de um objeto complexo de sua representação. ( ) Abstract Factory serve para prover uma interface para criar uma família de objetos relacionados ou dependentes, sem especificar suas classes concretas. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) V - F - F - V. b) F - V - V - V. c) V - V - V - V. d) F - V - V - F. https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=QURTMDEwNA==&action2=QURTMjA=&action3=NjU1NTIz&action4=MjAyMC8y&prova=MjY4NzEzMzE=#questao_10%20aria-label=