Logo Passei Direto
Buscar

Projeto Orientado a Objetos - Avaliação Objetiva

User badge image
EDSON KNOB

em

Ferramentas de estudo

Questões resolvidas

Um conceito importante para ser analisado é a diferença entre a classe de um objeto e seu tipo. A classe de um objeto define o estado interno e as operações do objeto, e o tipo de um objeto refere-se à interface do objeto, isto é, o conjunto de solicitações que o objeto pode responder.
Neste contexto, assinale a alternativa CORRETA:
A Uma classe de um objeto e seu tipo não possuem uma relação próxima, sendo que a classe define as operações, e o tipo do objeto a interface.
B Uma classe define o tipo e a implementação desse tipo de objeto.
C Uma classe define apenas o tipo do objeto instanciado.
D Uma classe define apenas as operações que um objeto pode executar.

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 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.
b) É 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.
c) É 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.
d) É 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.

O desenvolvimento de projetos de software orientado a objetos são complexos e trabalhosos. No entanto, existem técnicas para facilitar a reusabilidade do código-fonte, diminuindo a quantidade de trabalho para a equipe de projeto desenvolver alguma nova funcionalidade, como a herança e a composição, cujas técnicas de reutilização de código são as mais utilizadas na orientação a objetos. Referente aos meios de reutilização de código fonte da orientação a objetos, assinale a alternativa CORRETA:
A A delegação possui uma desvantagem em tornar mais difícil compor comportamentos em tempo de execução.
B Na delegação, dois objetos receptores são envolvidos para atender a uma solicitação.
C A delegação é uma forma de tornar a composição tão poderosa quanto a herança, em que um objeto receptor delega operações para um objeto delegado.
D A delegação é uma forma de tornar a composição tão poderosa quanto a herança e, além disso, esta técnica não possui problemas de ineficiências de tempo de execução.

A definição de indicadores para a medição é importante para avaliar a qualidade e a produtividade do trabalho de desenvolvimento de um software. Além disso, deve-se adotar uma métrica que se encaixe no projeto, e não ajustar o projeto para que suporte a métrica a ser utilizada. As métricas devem ser bem documentadas, assim como facilmente calculadas, entendidas, testadas, para obter-se um resultado estatístico.
Referente à métrica de software, assinale a alternativa CORRETA:
A ) Uma boa prática é utilizar as métricas de software para encontrar as pessoas que atrasam o projeto, através da análise de sua produtividade.
B ) As métricas devem ser restritas ao setor de TI das empresas.
C ) Quando finalizada uma medição, o processo está concluído, e não se repete.
D ) No GQM são descritos a identificação dos interessados da medição, os objetivos organizacionais, assim como as tarefas que serão medidas.

A UML (Unified Modeling Language) pode ser compreendida como uma linguagem de modelagem, considerada como padrão internacional, que permite representar um software, por meio da visualização, especificação, construção e documentação de requisitos para o projeto de um software. A UML é utilizada pelo Processo Unificado, e é considerada um modelo de processo para o desenvolvimento de software orientado a objetos.
Assinale a alternativa CORRETA que melhor define o Processo Unificado:
a) O Projeto Orientado a Objetos é uma forma de desenvolvimento de software que visa pensar em abstrações do mundo real, em que os envolvidos no projeto focam em coisas ao invés de suas funções.
b) O documento de requisitos funcionais e não funcionais pode necessitar de várias entrevistas para que possa ser desenvolvido, sendo que este documento é importante para garantir um software com vida útil longa.
c) Cada fase do desenvolvimento é dividida em iterações (fases) e toda a construção do sistema é baseada nos casos de uso, que atendem os requisitos funcionais esperados pelo usuário.
d) A prototipação do software é amplamente utilizada neste processo, sendo que após o levantamento de requisitos, e após algumas entrevistas, o engenheiro de software desenvolve este documento para o usuário melhor entender como o sistema funcionará.

Uma das técnicas disponibilizadas em projetos orientados a objetos é a herança, que permite a definição de novas classes a partir de outras que já existem, sendo que as subclasses herdam todos os atributos e operações da superclasse. A classe de um objeto define como ele é implementado e o tipo de um objeto refere-se a sua interface.
A respeito da herança, analise as afirmativas a seguir:
I- Herança de classe pode ser definida como a implementação de um objeto a partir da implementação de outro objeto, ou seja, herança de implementação.
II- Herança de interface define quando um objeto pode ser utilizado em vez de outro.
III- Todas as linguagens de programação fazem distinção entre a herança de classe e a herança de interface.
IV- Herança de classe se assemelha com a herança privada.
V- Não existem padrões de projeto que utilizam a herança de classes para o desenvolvimento.
a) As afirmativas II e III estão corretas.
b) As afirmativas I, II e IV estão corretas.
c) As afirmativas I e III estão corretas.
d) Somente a afirmativa IV está correta.

Um projeto possui um determinado objetivo a ser atingido e três principais características: tempo, recursos e trata do desenvolvimento de algo novo. Operação de uma organização pode ser entendida como um trabalho contínuo, que segue padrões organizacionais para sua execução.
Com relação à operação, assinale a alternativa CORRETA:
a) Operação pode ser exemplificada pela produção de um produto por uma indústria, que pode ter sido desenvolvida a partir de um projeto para sua origem.
b) Operação pode ser exemplificada pela manutenção de um software, que foi planejado e desenvolvido no prazo definido por um cronograma.
c) Operação resulta em um produto único.
d) Operação possui início e fim definidos, ou seja, é uma tarefa temporária.

Na engenharia de software e na engenharia de qualquer outra área utilizam-se padrões. Na engenharia de software, os padrões apoiam os projetistas a desenvolver a especificação da arquitetura de software. A utilização de um padrão no desenvolvimento de software auxilia na transmissão de conhecimento sobre a solução adotada aos envolvidos no projeto.
Sobre padrões de projeto, analise as afirmativas a seguir:
I- A utilização de orientação a objetos permite a reusabilidade de código-fonte e garante o sucesso de um projeto.
II- A falta de documentação em projetos anteriores acarreta no retrabalho da busca de soluções de determinados problemas que já foram resolvidos.
III- Equipes de desenvolvimento experientes utilizam-se da repetição de soluções testadas em projetos anteriores, que são os padrões de projetos.
IV- Os padrões de projeto garantem a reutilização de código-fonte e as soluções de projeto.
V- Os padrões podem ser objetos gerados a partir de um problema de negócio de um cliente.
a) As afirmativas I e II estão corretas.
b) As afirmativas II, III e IV estão corretas.
c) Somente a afirmativa IV está correta.
d) As afirmativas I e III estão corretas.

Mesmo com a utilização de uma modelagem correta em um projeto, um software pode sofrer manutenções, oriundas, muitas vezes, de necessidades de empresas que podem ser dinâmicas. Os custos de manutenção de um software podem ser altos, chegando a representar cerca de 50% do custo de um projeto, dependendo do sistema.
Referente à manutenção de um software, analise as seguintes afirmativas:
I- Manutenção realizada em um software não deve ter a modelagem e sua documentação atualizada, pois as alterações não fazem parte do escopo do projeto.
II- Modelagem pode evitar que após a manutenção de alguma funcionalidade de um sistema, alguma outra parte do sistema seja afetada, ocasionando erros.
III- Modelagem de software não serve apenas para evitar futuras manutenções, mas também para melhorar o entendimento do sistema para outras pessoas que possam realizar manutenções nele.
IV- Manutenção de um software pode ser oriunda de mudanças de leis, alíquotas, impostos, taxas e notas fiscais eletrônicas.
V- Manutenção de um software é considerado mais fácil para a equipe de desenvolvimento quando o software é legado e não existe modelagem desenvolvida.
a) As afirmativas II, III e IV estão corretas.
b) As afirmativas III, IV e V estão corretas.
c) Somente a afirmativa III está correta.
d) As afirmativas I e III estão corretas.

As métricas de projeto são voltadas para a atividade de projeto de software, que servem para comparar planos de medições de outros projetos e assim melhorar os projetos futuros.
A profundidade de árvore de herança (DIT) é um tipo de métrica de projeto e é medida pelo número de classes ancestrais de uma herança. Analise as afirmativas a seguir:
I- DIT menor que 2 para a maioria dos ramos da árvore significa que a exploração das vantagens da orientação a objetos é alta.
II- DIT muito profunda, ou maior que 5, significa que existe complexidade do projeto.
III- DIT maior que 5 significa que o projeto precisa ser reavaliado, pois não houve utilização adequada de orientação a objetos.
IV- DIT igual a zero significa um alto grau de reutilização do código-fonte.
A As afirmativas II e III estão corretas.
B As afirmativas I, II e IV estão corretas.
C As afirmativas I, II e III estão corretas.
D Somente a afirmativa IV está correta.

(ENADE, 2011) O paradigma de programação orientado a objetos tem sido largamente utilizado no desenvolvimento de sistemas. Considerando o conceito de herança, avalie as afirmacoes abaixo.
É correto apenas o que se afirma em:
I. Herança é uma propriedade que facilita a implementação de reúso.
II. Quando uma subclasse é criada, essa herda todas as características da superclasse, não podendo possuir propriedades e métodos próprios.
III. Herança múltipla é uma propriedade na qual uma superclasse possui diversas subclasses.
IV. Extensão é uma das formas de se implementar herança.
a) I.
b) III.
c) II e III.
d) I e IV.

(ENADE, 2011) A programação orientada a objeto não é apenas uma forma de programar, é também um jeito de pensar em um problema utilizando conceitos do mundo real e não somente conceitos computacionais.
Considerando os conceitos da programação orientada a objetos, analise as afirmações abaixo.
I. O objeto tem determinadas propriedades que o caracterizam e que são armazenadas no próprio objeto. As propriedades de um objeto são chamadas de instâncias.
II. As mensagens são informações enviadas ao objeto para que ele se comporte de uma determinada maneira. Um programa orientado a objetos em execução consiste em envios, interpretações e respostas às mensagens. São os métodos, os procedimentos residentes nos objetos, que determinam como eles atuarão ao receber as mensagens.
III. A herança é um mecanismo para o compartilhamento de métodos e atributos entre classes e subclasses, permitindo a criação de novas classes através da programação das diferenças entre a nova classe e a classe-pai.
IV. O encapsulamento é um mecanismo que permite o acesso aos dados de um objeto somente através dos métodos desse. Nenhuma outra parte do programa pode operar sobre os dados do objeto. A comunicação entre os objetos é feita apenas através de troca de mensagens.
a) I e III.
b) III e IV.
c) I, II e IV.
d) II, III e IV.

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Um conceito importante para ser analisado é a diferença entre a classe de um objeto e seu tipo. A classe de um objeto define o estado interno e as operações do objeto, e o tipo de um objeto refere-se à interface do objeto, isto é, o conjunto de solicitações que o objeto pode responder.
Neste contexto, assinale a alternativa CORRETA:
A Uma classe de um objeto e seu tipo não possuem uma relação próxima, sendo que a classe define as operações, e o tipo do objeto a interface.
B Uma classe define o tipo e a implementação desse tipo de objeto.
C Uma classe define apenas o tipo do objeto instanciado.
D Uma classe define apenas as operações que um objeto pode executar.

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 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.
b) É 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.
c) É 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.
d) É 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.

O desenvolvimento de projetos de software orientado a objetos são complexos e trabalhosos. No entanto, existem técnicas para facilitar a reusabilidade do código-fonte, diminuindo a quantidade de trabalho para a equipe de projeto desenvolver alguma nova funcionalidade, como a herança e a composição, cujas técnicas de reutilização de código são as mais utilizadas na orientação a objetos. Referente aos meios de reutilização de código fonte da orientação a objetos, assinale a alternativa CORRETA:
A A delegação possui uma desvantagem em tornar mais difícil compor comportamentos em tempo de execução.
B Na delegação, dois objetos receptores são envolvidos para atender a uma solicitação.
C A delegação é uma forma de tornar a composição tão poderosa quanto a herança, em que um objeto receptor delega operações para um objeto delegado.
D A delegação é uma forma de tornar a composição tão poderosa quanto a herança e, além disso, esta técnica não possui problemas de ineficiências de tempo de execução.

A definição de indicadores para a medição é importante para avaliar a qualidade e a produtividade do trabalho de desenvolvimento de um software. Além disso, deve-se adotar uma métrica que se encaixe no projeto, e não ajustar o projeto para que suporte a métrica a ser utilizada. As métricas devem ser bem documentadas, assim como facilmente calculadas, entendidas, testadas, para obter-se um resultado estatístico.
Referente à métrica de software, assinale a alternativa CORRETA:
A ) Uma boa prática é utilizar as métricas de software para encontrar as pessoas que atrasam o projeto, através da análise de sua produtividade.
B ) As métricas devem ser restritas ao setor de TI das empresas.
C ) Quando finalizada uma medição, o processo está concluído, e não se repete.
D ) No GQM são descritos a identificação dos interessados da medição, os objetivos organizacionais, assim como as tarefas que serão medidas.

A UML (Unified Modeling Language) pode ser compreendida como uma linguagem de modelagem, considerada como padrão internacional, que permite representar um software, por meio da visualização, especificação, construção e documentação de requisitos para o projeto de um software. A UML é utilizada pelo Processo Unificado, e é considerada um modelo de processo para o desenvolvimento de software orientado a objetos.
Assinale a alternativa CORRETA que melhor define o Processo Unificado:
a) O Projeto Orientado a Objetos é uma forma de desenvolvimento de software que visa pensar em abstrações do mundo real, em que os envolvidos no projeto focam em coisas ao invés de suas funções.
b) O documento de requisitos funcionais e não funcionais pode necessitar de várias entrevistas para que possa ser desenvolvido, sendo que este documento é importante para garantir um software com vida útil longa.
c) Cada fase do desenvolvimento é dividida em iterações (fases) e toda a construção do sistema é baseada nos casos de uso, que atendem os requisitos funcionais esperados pelo usuário.
d) A prototipação do software é amplamente utilizada neste processo, sendo que após o levantamento de requisitos, e após algumas entrevistas, o engenheiro de software desenvolve este documento para o usuário melhor entender como o sistema funcionará.

Uma das técnicas disponibilizadas em projetos orientados a objetos é a herança, que permite a definição de novas classes a partir de outras que já existem, sendo que as subclasses herdam todos os atributos e operações da superclasse. A classe de um objeto define como ele é implementado e o tipo de um objeto refere-se a sua interface.
A respeito da herança, analise as afirmativas a seguir:
I- Herança de classe pode ser definida como a implementação de um objeto a partir da implementação de outro objeto, ou seja, herança de implementação.
II- Herança de interface define quando um objeto pode ser utilizado em vez de outro.
III- Todas as linguagens de programação fazem distinção entre a herança de classe e a herança de interface.
IV- Herança de classe se assemelha com a herança privada.
V- Não existem padrões de projeto que utilizam a herança de classes para o desenvolvimento.
a) As afirmativas II e III estão corretas.
b) As afirmativas I, II e IV estão corretas.
c) As afirmativas I e III estão corretas.
d) Somente a afirmativa IV está correta.

Um projeto possui um determinado objetivo a ser atingido e três principais características: tempo, recursos e trata do desenvolvimento de algo novo. Operação de uma organização pode ser entendida como um trabalho contínuo, que segue padrões organizacionais para sua execução.
Com relação à operação, assinale a alternativa CORRETA:
a) Operação pode ser exemplificada pela produção de um produto por uma indústria, que pode ter sido desenvolvida a partir de um projeto para sua origem.
b) Operação pode ser exemplificada pela manutenção de um software, que foi planejado e desenvolvido no prazo definido por um cronograma.
c) Operação resulta em um produto único.
d) Operação possui início e fim definidos, ou seja, é uma tarefa temporária.

Na engenharia de software e na engenharia de qualquer outra área utilizam-se padrões. Na engenharia de software, os padrões apoiam os projetistas a desenvolver a especificação da arquitetura de software. A utilização de um padrão no desenvolvimento de software auxilia na transmissão de conhecimento sobre a solução adotada aos envolvidos no projeto.
Sobre padrões de projeto, analise as afirmativas a seguir:
I- A utilização de orientação a objetos permite a reusabilidade de código-fonte e garante o sucesso de um projeto.
II- A falta de documentação em projetos anteriores acarreta no retrabalho da busca de soluções de determinados problemas que já foram resolvidos.
III- Equipes de desenvolvimento experientes utilizam-se da repetição de soluções testadas em projetos anteriores, que são os padrões de projetos.
IV- Os padrões de projeto garantem a reutilização de código-fonte e as soluções de projeto.
V- Os padrões podem ser objetos gerados a partir de um problema de negócio de um cliente.
a) As afirmativas I e II estão corretas.
b) As afirmativas II, III e IV estão corretas.
c) Somente a afirmativa IV está correta.
d) As afirmativas I e III estão corretas.

Mesmo com a utilização de uma modelagem correta em um projeto, um software pode sofrer manutenções, oriundas, muitas vezes, de necessidades de empresas que podem ser dinâmicas. Os custos de manutenção de um software podem ser altos, chegando a representar cerca de 50% do custo de um projeto, dependendo do sistema.
Referente à manutenção de um software, analise as seguintes afirmativas:
I- Manutenção realizada em um software não deve ter a modelagem e sua documentação atualizada, pois as alterações não fazem parte do escopo do projeto.
II- Modelagem pode evitar que após a manutenção de alguma funcionalidade de um sistema, alguma outra parte do sistema seja afetada, ocasionando erros.
III- Modelagem de software não serve apenas para evitar futuras manutenções, mas também para melhorar o entendimento do sistema para outras pessoas que possam realizar manutenções nele.
IV- Manutenção de um software pode ser oriunda de mudanças de leis, alíquotas, impostos, taxas e notas fiscais eletrônicas.
V- Manutenção de um software é considerado mais fácil para a equipe de desenvolvimento quando o software é legado e não existe modelagem desenvolvida.
a) As afirmativas II, III e IV estão corretas.
b) As afirmativas III, IV e V estão corretas.
c) Somente a afirmativa III está correta.
d) As afirmativas I e III estão corretas.

As métricas de projeto são voltadas para a atividade de projeto de software, que servem para comparar planos de medições de outros projetos e assim melhorar os projetos futuros.
A profundidade de árvore de herança (DIT) é um tipo de métrica de projeto e é medida pelo número de classes ancestrais de uma herança. Analise as afirmativas a seguir:
I- DIT menor que 2 para a maioria dos ramos da árvore significa que a exploração das vantagens da orientação a objetos é alta.
II- DIT muito profunda, ou maior que 5, significa que existe complexidade do projeto.
III- DIT maior que 5 significa que o projeto precisa ser reavaliado, pois não houve utilização adequada de orientação a objetos.
IV- DIT igual a zero significa um alto grau de reutilização do código-fonte.
A As afirmativas II e III estão corretas.
B As afirmativas I, II e IV estão corretas.
C As afirmativas I, II e III estão corretas.
D Somente a afirmativa IV está correta.

(ENADE, 2011) O paradigma de programação orientado a objetos tem sido largamente utilizado no desenvolvimento de sistemas. Considerando o conceito de herança, avalie as afirmacoes abaixo.
É correto apenas o que se afirma em:
I. Herança é uma propriedade que facilita a implementação de reúso.
II. Quando uma subclasse é criada, essa herda todas as características da superclasse, não podendo possuir propriedades e métodos próprios.
III. Herança múltipla é uma propriedade na qual uma superclasse possui diversas subclasses.
IV. Extensão é uma das formas de se implementar herança.
a) I.
b) III.
c) II e III.
d) I e IV.

(ENADE, 2011) A programação orientada a objeto não é apenas uma forma de programar, é também um jeito de pensar em um problema utilizando conceitos do mundo real e não somente conceitos computacionais.
Considerando os conceitos da programação orientada a objetos, analise as afirmações abaixo.
I. O objeto tem determinadas propriedades que o caracterizam e que são armazenadas no próprio objeto. As propriedades de um objeto são chamadas de instâncias.
II. As mensagens são informações enviadas ao objeto para que ele se comporte de uma determinada maneira. Um programa orientado a objetos em execução consiste em envios, interpretações e respostas às mensagens. São os métodos, os procedimentos residentes nos objetos, que determinam como eles atuarão ao receber as mensagens.
III. A herança é um mecanismo para o compartilhamento de métodos e atributos entre classes e subclasses, permitindo a criação de novas classes através da programação das diferenças entre a nova classe e a classe-pai.
IV. O encapsulamento é um mecanismo que permite o acesso aos dados de um objeto somente através dos métodos desse. Nenhuma outra parte do programa pode operar sobre os dados do objeto. A comunicação entre os objetos é feita apenas através de troca de mensagens.
a) I e III.
b) III e IV.
c) I, II e IV.
d) II, III e IV.

Prévia do material em texto

Disciplina: Projeto Orientado a Objetos (ADS20)
Avaliação: Avaliação Final (Objetiva) - Individual Semipresencial ( Cod.:432009) ( peso.:3,00)
Prova: 7624095
Nota da Prova: 9,00
Legenda: Resposta Certa Sua Resposta Errada 
1. Um conceito importante para ser analisado é a diferença entre a classe de um objeto e seu 
tipo. A classe de um objeto define o estado interno e as operações do objeto, e o tipo de 
um objeto refere-se à interface do objeto, isto é, o conjunto de solicitações que o objeto 
pode responder. Neste contexto, assinale a alternativa CORRETA:
 a) Uma classe define apenas o tipo do objeto instanciado.
 b) Uma classe define o tipo e a implementação desse tipo de objeto.
 c) Uma classe define apenas as operações que um objeto pode executar.
 d) Uma classe de um objeto e seu tipo não possuem uma relação próxima, sendo que a 
classe define as operações, e o tipo do objeto a interface.
2. 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 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.
 b) É 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.
 c) É 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.
 d) É 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.
3. O desenvolvimento de projetos de software orientado a objetos são complexos e 
trabalhosos. No entanto, existem técnicas para facilitar a reusabilidade do código-fonte, 
diminuindo a quantidade de trabalho para a equipe de projeto desenvolver alguma nova 
funcionalidade, como a herança e a composição, cujas técnicas de reutilização de código 
são as mais utilizadas na orientação a objetos. Referente aos meios de reutilização de 
código fonte da orientação a objetos, assinale a alternativa CORRETA:
 a) Na delegação, dois objetos receptores são envolvidos para atender a uma solicitação.
 b) A delegação é uma forma de tornar a composição tão poderosa quanto a herança e, 
além disso, esta técnica não possui problemas de ineficiências de tempo de execução.
 c) A delegação é uma forma de tornar a composição tão poderosa quanto a herança, em 
que um objeto receptor delega operações para um objeto delegado.
 d) A delegação possui uma desvantagem em tornar mais difícil compor comportamentos 
em tempo de execução.
4. A definição de indicadores para a medição é importante para avaliar a qualidade e a 
produtividade do trabalho de desenvolvimento de um software. Além disso, deve-se adotar 
uma métrica que se encaixe no projeto, e não ajustar o projeto para que suporte a métrica 
a ser utilizada. As métricas devem ser bem documentadas, assim como facilmente 
calculadas, entendidas, testadas, para obter-se um resultado estatístico. Referente à 
métrica de software, assinale a alternativa CORRETA:
 a) Uma boa prática é utilizar as métricas de software para encontrar as pessoas que 
atrasam o projeto, através da análise de sua produtividade.
 b) No GQM são descritos a identificação dos interessados da medição, os objetivos 
organizacionais, assim como as tarefas que serão medidas.
 c) As métricas devem ser restritas ao setor de TI das empresas.
 d) Quando finalizada uma medição, o processo está concluído, e não se repete.
5. A UML (Unified Modeling Language) pode ser compreendida como uma linguagem de 
modelagem, considerada como padrão internacional, que permite representar um 
software, por meio da visualização, especificação, construção e documentação de requisitos
para o projeto de um software. A UML é utilizada pelo Processo Unificado, e é considerada 
um modelo de processo para o desenvolvimento de software orientado a objetos. Assinale 
a alternativa CORRETA que melhor define o Processo Unificado:
 a) O Projeto Orientado a Objetos é uma forma de desenvolvimento de software que visa 
pensar em abstrações do mundo real, em que os envolvidos no projeto focam em coisas 
ao invés de suas funções.
 b) O documento de requisitos funcionais e não funcionais pode necessitar de várias 
entrevistas para que possa ser desenvolvido, sendo que este documento é importante 
para garantir um software com vida útil longa.
 c) Cada fase do desenvolvimento é dividida em iterações (fases) e toda a construção do 
sistema é baseada nos casos de uso, que atendem os requisitos funcionais esperados 
pelo usuário.
 d) A prototipação do software é amplamente utilizada neste processo, sendo que após o 
levantamento de requisitos, e após algumas entrevistas, o engenheiro de software 
desenvolve este documento para o usuário melhor entender como o sistema funcionará.
6. Uma das técnicas disponibilizadas em projetos orientados a objetos é a herança, que 
permite a definição de novas classes a partir de outras que já existem, sendo que as 
subclasses herdam todos os atributos e operações da superclasse. A classe de um objeto 
define como ele é implementado e o tipo de um objeto refere-se a sua interface. A respeito 
da herança, analise as afirmativas a seguir:
I- Herança de classe pode ser definida como a implementação de um objeto a partir da 
implementação de outro objeto, ou seja, herança de implementação.
II- Herança de interface define quando um objeto pode ser utilizado em vez de outro.
III- Todas as linguagens de programação fazem distinção entre a herança de classe e a 
herança de interface.
IV- Herança de classe se assemelha com a herança privada.
V- Não existem padrões de projeto que utilizam a herança de classes para o 
desenvolvimento.
Assinale a alternativa CORRETA:
 a) As afirmativas II e III estão corretas.
 b) As afirmativas I, II e IV estão corretas.
 c) As afirmativas I e III estão corretas.
 d) Somente a afirmativa IV está correta.
7. Um projeto possui um determinado objetivo a ser atingido e três principais características: 
tempo, recursos e trata do desenvolvimento de algo novo. Operação de uma organização 
pode ser entendida como um trabalho contínuo, que segue padrões organizacionais para 
sua execução. Com relação à operação, assinale a alternativa CORRETA:
 a) Operação possui início e fim definidos, ou seja, é uma tarefa temporária.
 b) Operação pode ser exemplificada pela manutenção de um software, que foi planejado e 
desenvolvido no prazo definido por um cronograma.
 c) Operação pode ser exemplificada pela produção de um produto por uma indústria, que 
pode ter sido desenvolvida a partir de um projeto para sua origem.
 d) Operação resulta em um produto único.
8. Na engenharia de software e na engenharia de qualquer outra área utilizam-se padrões. Na 
engenharia de software, os padrões apoiam os projetistas a desenvolver a especificação da 
arquitetura de software. A utilização de um padrão no desenvolvimento de software auxilia 
na transmissão de conhecimento sobre a solução adotada aos envolvidos no projeto. Sobre 
padrões de projeto, analise as afirmativas a seguir:
I- A utilização de orientação a objetos permite a reusabilidade de código-fonte e garante o 
sucesso de um projeto.
II- A falta de documentação em projetos anteriores acarreta no retrabalho da busca de 
soluções de determinados problemas que já foram resolvidos.
III- Equipes de desenvolvimento experientes utilizam-se da repetição de soluções testadas 
em projetos anteriores, que são os padrões de projetos.
IV- Os padrõesde projeto garantem a reutilização de código-fonte e as soluções de projeto.
V- Os padrões podem ser objetos gerados a partir de um problema de negócio de um 
cliente.
Agora, assinale a alternativa CORRETA:
 a) As afirmativas I e II estão corretas.
 b) As afirmativas II, III e IV estão corretas.
 c) Somente a afirmativa IV está correta.
 d) As afirmativas I e III estão corretas.
9. Mesmo com a utilização de uma modelagem correta em um projeto, um software pode 
sofrer manutenções, oriundas, muitas vezes, de necessidades de empresas que podem ser 
dinâmicas. Os custos de manutenção de um software podem ser altos, chegando a 
representar cerca de 50% do custo de um projeto, dependendo do sistema. Referente à 
manutenção de um software, analise as seguintes afirmativas:
I- Manutenção realizada em um software não deve ter a modelagem e sua documentação 
atualizada, pois as alterações não fazem parte do escopo do projeto.
II- Modelagem pode evitar que após a manutenção de alguma funcionalidade de um 
sistema, alguma outra parte do sistema seja afetada, ocasionando erros.
III- Modelagem de software não serve apenas para evitar futuras manutenções, mas 
também para melhorar o entendimento do sistema para outras pessoas que possam 
realizar manutenções nele.
IV- Manutenção de um software pode ser oriunda de mudanças de leis, alíquotas, impostos,
taxas e notas fiscais eletrônicas.
V- Manutenção de um software é considerado mais fácil para a equipe de desenvolvimento 
quando o software é legado e não existe modelagem desenvolvida.
Agora, assinale a alternativa CORRETA:
 a) As afirmativas I e III estão corretas.
 b) As afirmativas III, IV e V estão corretas.
 c) Somente a afirmativa III está correta.
 d) As afirmativas II, III e IV estão corretas.
10. As métricas de projeto são voltadas para a atividade de projeto de software, que servem 
para comparar planos de medições de outros projetos e assim melhorar os projetos 
futuros. A profundidade de árvore de herança (DIT) é um tipo de métrica de projeto e é 
medida pelo número de classes ancestrais de uma herança. Analise as afirmativas a seguir:
I- DIT menor que 2 para a maioria dos ramos da árvore significa que a exploração das 
vantagens da orientação a objetos é alta.
II- DIT muito profunda, ou maior que 5, significa que existe complexidade do projeto.
III- DIT maior que 5 significa que o projeto precisa ser reavaliado, pois não houve utilização
adequada de orientação a objetos.
IV- DIT igual a zero significa um alto grau de reutilização do código-fonte.
Agora, assinale a alternativa CORRETA:
 a) As afirmativas I, II e IV estão corretas.
 b) Somente a afirmativa IV está correta.
 c) As afirmativas I, II e III estão corretas.
 d) As afirmativas II e III estão corretas.
11. (ENADE, 2011) O paradigma de programação orientado a objetos tem sido largamente 
utilizado no desenvolvimento de sistemas. Considerando o conceito de herança, avalie as 
afirmações abaixo.
I. Herança é uma propriedade que facilita a implementação de reúso.
II. Quando uma subclasse é criada, essa herda todas as características da superclasse, não 
podendo possuir propriedades e métodos próprios.
III. Herança múltipla é uma propriedade na qual uma superclasse possui diversas 
subclasses.
IV. Extensão é uma das formas de se implementar herança.
É correto apenas o que se afirma em
 a) III.
 b) I e IV.
 c) II e III.
 d) I.
12. (ENADE, 2011) A programação orientada a objeto não é apenas uma forma de programar, 
é também um jeito de pensar em um problema utilizando conceitos do mundo real e não 
somente conceitos computacionais. Considerando os conceitos da programação orientada 
a objetos, analise as afirmações abaixo.
I. O objeto tem determinadas propriedades que o caracterizam e que são armazenadas no 
próprio objeto. As propriedades de um objeto são chamadas de instâncias.
II. As mensagens são informações enviadas ao objeto para que ele se comporte de uma 
determinada maneira. Um programa orientado a objetos em execução consiste em envios,
interpretações e respostas às mensagens. São os métodos, os procedimentos residentes 
nos objetos, que determinam como eles atuarão ao receber as mensagens.
III. A herança é um mecanismo para o compartilhamento de métodos e atributos entre 
classes e subclasses, permitindo a criação de novas classes através da programação das 
diferenças entre a nova classe e a classe-pai.
IV. O encapsulamento é um mecanismo que permite o acesso aos dados de um objeto 
somente através dos métodos desse. Nenhuma outra parte do programa pode operar 
sobre os dados do objeto. A comunicação entre os objetos é feita apenas através de troca 
de mensagens.
É correto apenas o que afirma em
 a) I e III.
 b) III e IV.
 c) I, II e IV.
 d) II, III e IV.

Mais conteúdos dessa disciplina