Você está na página 1de 55

ANÁLISE ORIENTADA A OBJETOS I

LEANDRO SANCHES SILVA

JOINVILLE
2023
Sumário
1 Classes............................................................................................................................................... 3
1.1 Atributos de uma Classe.............................................................................................................3
2 Diagramas UML................................................................................................................................. 4
2.1 Diagrama de Sequência..............................................................................................................4
2.2 Diagrama de Classes...................................................................................................................5
2.3 Diagrama de Casos de Uso.........................................................................................................6
3 Modelagem UML...............................................................................................................................7
3.1 modelos de elementos com uso de UML...................................................................................7
3.2 Métodos da UML........................................................................................................................7
3.3 Frameworks................................................................................................................................8
3.4 Manutenção............................................................................................................................... 9
3.5 Requisitos de Software.............................................................................................................10
4 Conexões......................................................................................................................................... 11
1 Linguagem JAVA
1.1 Características
Como regra geral, os atributos de uma classe devem ser ocultos dos demais objetos do sistema,
com o objetivo de garantir o encapsulamento. Entretanto, caso algum destes atributos deva ser exposto,
existem vários tipos de exposição, através dos métodos getters e setters. Com relação à utilização dos
getters e setters em uma classe, analise as seguintes sentenças:
I- Os métodos getters fornecem acesso de escrita a um atributo.
II- Os métodos setters permitem que se altere o valor de um atributo de um objeto.
III- Uma das vantagens dos setters é que se pode fazer a chamada deles sem instanciar o objeto
onde eles estão.
IV- Os métodos setters sempre devem retornar o valor que acabaram de passar ao atributo.
Agora, assinale a alternativa CORRETA:

A) Somente a sentença IV está correta.


B) As sentenças I e III estão corretas.
C) Somente a sentença II está correta.
D) As sentenças III e IV estão corretas.

Há uma palavra reservada do JAVA que serve para modificar a visibilidade de uma variável ou
método. Que palavra é essa?
A) Void.
B) Class.
C) This.
D) Private.

Persistência pode ser considerada a qualidade do que dura; que persiste. Já com relação à
persistência de um objeto na programação orientada a objeto, o significado é outro. Qual é esse
significado?
A) É o tempo em que um objeto se mantém na memória, seja ela a memória principal (RAM) ou
auxiliar (meio magnético).
B) Para que um objeto se torne persistente, ele não deve ser salvo em nenhum meio de
armazenamento (disco rígido).
C) São dados armazenado somente na memória secundária.
D) Dados persistentes consistem nas informações compartilhadas, acessadas e atualizadas através
de transações.

O que é um construtor em Java? Assinale a alternativa CORRETA:


A) É um método que é usado para mudar o estado interno de um objeto.
B) É um método que é usado para imprimir mensagens na tela.
C) É um método que é usado para destruir objetos quando eles não são mais necessários.
D) É um método especial que é chamado automaticamente quando um objeto é criado.
Qual é a definição de herança em programação orientada a objetos? Assinale a alternativa
CORRETA:
A) A capacidade de uma classe pai herdar atributos e métodos de uma classe filha.
B) É quando uma classe filha define um novo método que não existe na classe pai.
C) A capacidade de uma classe mudar seu comportamento sem afetar outras classes.
D) A capacidade de uma classe se comunicar com outras classes sem precisar conhecer seus tipos.

Unified Modeling Language (UML), ou Linguagem de Modelagem Unificada, surgiu da união de três
metodologias de modelagem: o método Booch, o método Object Modeling Technique (OMT) e o método
Object Oriented Software Engineering (OOSE). Sobre a associação de inclusão, analise as sentenças a
seguir:

I- Ocorre quando há uma parte do comportamento que é semelhante em mais de um caso de uso.
II- É representado pela simbologia <<include>>.
III- Está relacionado sempre ao diagrama de componentes.
IV- Está relacionado sempre ao diagrama de classes.

Assinale a alternativa CORRETA:


A) As sentenças I e II estão corretas.
B) As sentenças I, II e IV estão corretas.
C) As sentenças III e IV estão corretas.
D) As sentenças II e IV estão corretas.

I- Os Casos de Uso estendidos descrevem cenários que somente ocorrerão em uma situação
específica, se uma determinada condição for satisfeita”.
II- É representado pela simbologia <<extends>>.
III- Ocorre quando há uma parte do comportamento que é semelhante em mais de um caso de uso.
IV- Está relacionado sempre ao diagrama de classes.

Assinale a alternativa CORRETA:


A) As sentenças III e IV estão corretas.
B) As sentenças I, II e IV estão corretas.
C) As sentenças I e II estão corretas.
D) As sentenças II e IV estão corretas.

Sobre o conceito de generalização, analise as opções a seguir:

I- Agrupar.
II- Associar.
III- Atributos comuns.
IV- Não pode haver diferenças entre os objetos.

Assinale a alternativa CORRETA:

A) As opções I, II e IV estão corretas.


B) As opções I, II e III estão corretas.
C) As opções III e IV estão corretas.
D) As opções I e IV estão corretas.
1.2 Simbolos
Existem símbolos que auxiliam no processo de desenvolvimento, eles possuem certa semelhança
com os símbolos utilizados nos fluxogramas, porém de fácil compreensão, tendo como principal diferença
a utilização sistemática do princípio de abstração em um contexto limitado, de um método apenas, e não
de todo o objeto, conforme descrito por Correia e Tafner (2001, p. 26). A notação mais utilizada para
criação de fluxos em Análise Orientada a Objetos é a UML. Com isso em mente, observe o símbolo e sua
descrição a seguir:
<<TEXTO>>
"Permitem a classificação de elementos. Por exemplo, as classes que representam janelas da
aplicação podem ser classificadas com o estereótipo <<form>>* ".
Qual símbolo da notação UML a imagem e descrição apresentadas estão se referindo?
A) Relação “extends”.
B) Associação.
C) Relação “uses”.
D) Estereótipo.

"Tipo de classe de análise usada para modelar as interações entre um sistema e os seus atores.
Representam, normalmente, janelas de aplicação, APIs etc.". Qual símbolo da notação UML a imagem e
descrição apresentadas estão se referindo?
A) Control.
B) Entity.
C) Boundary.
D) Linha temporal.

"É um mecanismo que permite a criação de condições e restrições booleanas a aplicar a um ou mais elementos (ex.,
associações)". Qual símbolo da notação UML a imagem e descrição apresentadas estão se referindo?

Fonte: CORREIA, Carlos Henrique; TAFNER, Malcon Anderson. Análise orientada a objetos. Florianópolis: Editora
Visual Books, 2001.

A “Utility”.
B Agregação.
C “Interface”.
D Restrição.
"É uma coleção de especificações de operações para definir um serviço sem ditar a sua implementação". Qual símbolo da
notação UML a imagem e descrição apresentadas estão se referindo?

A Interface.
B “Utility”.
C Agregação.
D Estado.
2 Diagramas UML
2.1 Diagrama de Sequência
O diagrama de sequências, como o próprio nome diz, determina a sequência que os eventos serão
disparados na execução do processo, de acordo com as condições que serão satisfeitas, os métodos que
serão disparados e quais mensagens serão enviadas. Relacionado ao diagrama de sequência, classifique V
para as sentenças verdadeiras e F para as falsas:
( ) Objetos representam as instâncias das classes envolvidas no processo.
( ) Um objeto não necessariamente existe desde o início do processo, ele pode ser criado durante o
processo.
( ) Ator é toda pessoa que, de alguma forma, interage com o sistema, não fazendo distinção entre
serviço ou tipo de função exercida.
( ) A linha de vida representa a vida útil do objeto no processo.
( ) A mensagem é utilizada para mostrar a ocorrência de eventos entre objetos.
Agora, assinale a alternativa que apresenta a sequência CORRETA:

A) V - V - V - V - F.
B) V - V - F - F - F.
C) V - V - F - F - V.
D) F - F - F - V - V.

A linguagem UML possui vários tipos de diagramas, sendo um deles o Diagrama de sequência. Nele
é possível veririficar a colaboração entre os vários objetos de um sistema. Um aspecto importante é que
através dele se percebe a sequência de mensagens enviadas entre os objetos, assim como mostra a
interação entre os objetos. Diante do exposto, analise as sentenças a seguir: I- No corpo de um diagrama
de sequência, podemos encontrar operações ativadas, dimensionadas para refletir suas durações
aproximadas. II- Um diagrama de sequência empresta uma grande força à orientação a objetos, sendo a
ligação dinâmica que corresponde ao mecanismo de implementação de um determinado processo. III- O
diagrama de sequência é um tipo de diagrama de interação entre objetos que enfatiza mais a sequência
temporal que os relacionamentos estáticos do objeto. IV- Um diagrama de sequência representa a ação
entre dois eventos através de uma seta de generalização que se estende do evento até o subevento.
Assinale a alternativa CORRETA:
A) As sentenças I, II e III estão corretas.
B) As sentenças I, II e IV estão corretas.
C) As sentenças II e III estão corretas.
D) As sentenças I e III estão corretas.
Esse diagrama tem como propósito determinar a sequência que os eventos devem ter ao se
executar um processo, verificando quais condições devem ser satisfeitas, quais métodos serão disparados
e as mensagens que são enviadas. Assim, determinar a ordem em que os eventos ocorrem na execução do
sistema. Assinale a alternativa CORRETA:

A) Diagrama de classes.
B) Diagrama de atividades.
C) Diagrama de caso de uso.
D) Diagrama de sequência.
2.2 Diagrama de Classes
O diagrama de classes é composto pelas classes que formam o sistema e suas associações ou
relacionamentos. Neste diagrama, temos a abstração das classes com seus atributos e métodos. Métodos
são procedimentos ou funções que realizam as ações próprias do objeto, ou seja, tudo que o objeto faz é
realizado através de seus métodos. Sobre como ocorre a declaração por meio da UML, analise as sentenças
a seguir:
I- O método public e private é um modificador de acesso.
II- O método void indica o tipo de acesso do mesmo.
III- O método int indica o tipo de entrada.
IV- O método double é um dos tipos de retorno.
Assinale a alternativa CORRETA:

A) As sentenças I e IV estão corretas.


B) As sentenças I, II e IV estão corretas.
C) As sentenças I, II e III estão corretas.
D) As sentenças II e III estão corretas.

Um diagrama de classes é uma representação da estrutura e relações das classes que servem de
modelo para objetos. Podemos afirmar de maneira mais simples que seria um conjunto de objetos com as
mesmas características, assim saberemos identificar objetos e agrupá-los, de forma a encontrar suas
respectivas classes. O diagrama de classes é composto pelas classes que formam o sistema e suas
associações ou relacionamentos. Acerca do conceito de herança, bem como o que precisa ser ou não
implementado, classifique V para as sentenças verdadeiras e F para as falsas:
( ) O conceito herança permite que uma classe filha herde métodos e atributos de uma classe mãe
(superclasse).
( ) A classe filha não precisa ter implementado os atributos e os métodos que já existem na sua
superclasse.
( ) A herança permite que quando necessária alteração de um método da superclasse, todas as
classes filhas desta terão este método atualizado automaticamente.
( ) Uma subclasse também chamada de classe-mãe.
FONTE: https://www.devmedia.com.br/orientacoes-basicas-na-elaboracao-de-um-diagrama-de-classes/37224. Acesso
em: 24 ago. 2018.
Assinale a alternativa que apresenta a sequência CORRETA:

A) V - V - F - F.
B) F - F - V - F.
C) V - V - V - F.
D) V - V - F - V.
O Diagrama de classes se preocupa em apresentar a solução para determinado problema. Ele é
composto por classes e por relacionamentos que ocorrem entre elas. Relacionado ao diagrama de classes,
classifique V para as sentenças verdadeiras e F para as falsas: ( ) A classe representa um conjunto de
objetos e contém suas especificações. ( ) O método representa as atividades que um objeto pode executar,
possuem ações próprias. ( ) O atributo representa as características de uma classe. ( ) A visibilidade indica
qual o nível de acessibilidade do método e o atributo indica o nível de usabilidade. ( ) O relacionamento
descreve um vínculo existente, geralmente ele ocorre entre os objetos de uma ou mais classes. Agora,
assinale a alternativa que apresenta a sequência CORRETA:
A) V - V - F - F - V.
B) V - V - V - F - V.
C) V - V - F - F - F.
D) F - F - F - V - V.

O diagrama de classe em geral é precedido pelo diagrama de casos de uso. Enquanto o diagrama de
casos de uso procura fornecer uma representação do problema que deve ser solucionado de forma
sistêmica, o diagrama de classes tem seu enfoque em fornecer a representação de uma solução para este
problema, na forma de classes, atributos, métodos e relacionamentos. Considerando as características dos
diagramas de classes, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Os métodos setters
fornecem acesso de escrita a um atributo. ( ) Através da herança, é possível reaproveitar atributos já
definidos em uma classe mãe. ( ) A herança múltipla consiste de uma classe mãe possuir várias filhas. ( )
Objetos ou atributos transientes não são serializados e, consequentemente, não são persistidos. Agora,
assinale a alternativa que apresenta a sequência CORRETA:
A) V - V - F - V.
B) F - V - F - V.
C) F - F - V - F.
D) V - F - F - V.
O diagrama de classes é um dos diagramas mais conhecidos da UML (Unified Modeling Language).
Através de sua notação, é possível identificar quais classes farão parte do sistema, bem como seus
atributos, métodos e possíveis relacionamentos com as demais classes. Considerando as características dos
diagramas de classes na UML e a figura a seguir, classifique V para as sentenças verdadeiras e F para as
falsas: ( ) O relacionamento entre GravadorDeArquivo e Entidade é conhecido como generalização. ( ) O
relacionamento entre ArquivoXML e ArquivoTXT é conhecido como composição. ( ) A classe ArquivoTXT
pode possuir um atributo do tipo Entidade através da herança. ( ) Não existe relacionamento de herança
entre as classes da figura. Agora, assinale a alternativa que apresenta a sequência CORRETA:
A) V - F - F - V.
B) F - F - V - V.
C) F - F - V - F.
D) F - V - V - F.

O diagrama de classes apresenta uma visão de como as classes estão organizadas e se preocupa em
como a estrutura lógica será definida. O diagrama de classes é formado pelas classes, que são as
representações do sistema e de seus relacionamentos. Os outros diagramas da linguagem UML são
construídos, na sua maioria, a partir dos diagramas de classes. Referente aos diagramas de classes, analise
as sentenças a seguir: I- Uma classe é uma descrição de um conjunto de objetos com propriedades e
comportamentos parecidos, assim como possuem relacionamentos em comum com outros objetos. II- Um
atributo pertence a uma classe, podendo ser do tipo primitivo ou referência. Já os seus modificadores
podem ser: public ou private. III- Uma classe não é exatamente uma tabela de um banco de dados,
ocasionalmente, os atributos de uma classe correspondem aos atributos de uma tabela, mas uma classe
não é uma tabela. IV- Um atributo representa as características de uma classe, as particularidades que são
diferentes de objeto para objeto. V- Um método representa as atividades que um objeto de uma classe
pode executar, ou seja, as ações que um objeto pode realizar. Agora, assinale a alternativa CORRETA:
A) As sentenças I e IV estão corretas.
B) As sentenças I, II, III e IV estão corretas.
C) As sentenças I, II, III e V estão corretas.
D) As sentenças II, III, IV e V estão corretas.
2.3 Diagrama de Casos de Uso
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 das características do DCU da UML,
classifique V para as sentenças verdadeiras e F para as falsas:
( ) É o diagrama mais utilizado da UML.
( ) Representa a visão do usuário, auxiliando no levantamento e na análise dos requisitos do
software.
( ) A notação é simples e de fácil compreensão.
( ) É o mais concreto e rígido de todos os diagramas da UML.
Assinale a alternativa que apresenta a sequência CORRETA:

A) F - F - V - F.
B) V - V - F - F.
C) V - V - V - F.
D) V - V - V - V.

O diagrama de casos de uso é um dos diagramas mais versáteis dentro da UML. Tamanha é sua
versatilidade que ele atende a analistas de sistemas, servindo como ferramenta para coleta de requisitos, a
clientes, auxiliando na visualização das funcionalidades do sistema e também a desenvolvedores, guiando
a implementação das regras de negócio. Considerando as características dos casos de uso, analise as
seguintes sentenças:
I- Os casos de uso também servem para identificar as funcionalidades que cada ator terá no
sistema.
II- O relacionamento de extensão identifica uma obrigatoriedade de ativação entre dois casos de
uso.
III- O fluxo principal serve para apresentar um maior detalhamento sobre a forma como o caso de
uso deverá ser implementado.
IV- Um ator pode representar um sistema externo ou mesmo um dispositivo como impressora ou
máquina.
Agora, assinale a alternativa CORRETA:

A) As sentenças I, III e IV estão corretas.


B) As sentenças I e II estão corretas.
C) As sentenças II e IV estão corretas.
D) As sentenças I, II e III estão corretas.
Por meio de diagramas da UML é possível capturar diferentes visões do sistema. Através deste
diagrama, é possível descrever e definir os requisitos funcionais de um sistema. Eles são escritos em
termos de atores externos e casos, e o sistema modelado. Os atores representam o papel de uma entidade
externa ao sistema como um usuário, um hardware, ou outro sistema que interage com o sistema
modelado. Assinale a alternativa CORRETA que apresenta o diagrama descrito:
A) Diagrama de implantação.
B) Diagrama de componentes.
C) Diagrama de casos de uso.
D) Diagrama de objetos.
Unified Modeling Language (UML), ou Linguagem de Modelagem Unificada, surgiu da união de três
metodologias de modelagem: o método Booch, o método Object Modeling Technique (OMT) e o método
Object Oriented Software Engineering (OOSE). Sobre o item “atores”, analise as sentenças a seguir:

I- Representa os papéis desempenhados pelos diversos usuários.


II- É a pessoa ou figura que interage com o sistema.
III- Está relacionado sempre ao diagrama de componentes.
IV- Está relacionado sempre ao diagrama de classes.

Assinale a alternativa CORRETA:

A) As sentenças I e II estão corretas.


B) As sentenças III e IV estão corretas.
C) As sentenças I, II e IV estão corretas.
D) As sentenças II e IV estão corretas.
O Diagrama de Casos de Uso (DCU) tem como objetivo ser simples para que os usuários possam
entender, assim como auxiliar na etapa de análise, delimitar o sistema, entre outros. Através do DCU se
consegue ter uma visão geral do sistema, das funções e dos serviços, mas sem se preocupar como os
mesmos serão implementadas. Classifique V para as sentenças verdadeiras e F para as falsas: ( ) Os casos
de uso são um modelo que descreve uma narrativa de um conjunto de sequência de atividades que o
sistema realiza para atingir determinado objetivo significativo para determinado ator. ( ) O ator é a
representação dos diferentes papéis que os usuários podem desempenhar para que possam interagir com
os serviços ou funções do sistema. ( ) Um ator pode representar vários casos de uso, mas os casos de uso
só podem ser representados por um ator. ( ) Os casos de uso e os atores se relacionam através de
associações. Agora, assinale a alternativa que apresenta a sequência CORRETA:
A) V - V - V - F.
B) V - V - F - F.
C) F - F - F - V.
D) V - V - F - V.

Os diagramas de casos de uso apresentam a funcionalidade do sistema de uma forma mais


abstrata, tanto que em geral têm suas informações complementadas pelo que é conhecido como a
documentação do caso de uso. Com relação às informações contidas dentro da documentação do caso de
uso, assinale a alternativa CORRETA:
A) O fluxo principal serve para apresentar um maior detalhamento sobre a forma como o caso de
uso deverá ser implementado.
B) Atores servem para representar unicamente as pessoas que interagem com os sistemas.
C) O fluxo alternativo serve essencialmente para determinar quais os parâmetros que o caso de uso
deve receber para executar sua função corretamente.
D) Na documentação de um caso de uso não é possível colocar mais de um ator.

Na construção de aplicativos computacionais, a análise e o projeto orientados a objetos buscam


soluções para problemas do mundo real baseando suas soluções em modelos. Nesse sentido, os diagramas
de caso de uso auxiliam em apresentar uma visão externa e geral das funções e serviços que os sistemas
em geral devem oferecer aos usuários, sem se preocupar em como estes serão implementados. Com
relação aos diagramas de caso de uso, classifique V para as sentenças verdadeiras e F para as falsas: ( )
Casos de uso referem-se aos serviços, tarefas ou funções que podem ser utilizadas de alguma maneira
pelos usuários do sistema. ( ) Os atores representam os papéis desempenhados pelos diversos usuários
que poderão utilizar de alguma maneira os serviços e funções do sistema. ( ) Um ator pode desempenhar
muitos casos de uso. ( ) Identificar as restrições para as classes. ( ) Um dos principais objetivos dos casos de
uso é ser de fácil compreensão para os usuários que estão iniciando na informática, auxiliar na tarefa de
análise, delimita o sistema e afins. Assinale a alternativa que apresenta a sequência CORRETA:

A) V - V - V - V - V.
B) F - F - F - F - V.
C) V - V - V - F - V.
D) V - V - V - F - F.
2.4 Diagrama de Componentes
Com relação à análise e projetos orientados ao objeto, podemos estruturar um projeto
considerando várias dimensões que envolvem várias fases. Geralmente as fases são: iniciação, elaboração,
construção e transição. Considerando a dimensão componente, temos a realização de atividades ao longo
das fases do processo de desenvolvimento, tais como: análise de requisitos, análise, projeto,
implementação e teste. Em cada uma dessas fases podemos nos apoiar nos diagramas da UML para nos
auxiliar na Programação Orientada a Objetos. Sobre o diagrama relacionado ao levantamento utilizado na
Programação Orientada a Objetos, assinale a alternativa INCORRETA:
A) Diagrama de componentes.
B) Diagrama de sequência.
C) Diagrama de casos de uso.
D) Diagrama de classes.
2.XXXXXXX Símbolos
Existem símbolos que auxiliam no processo de desenvolvimento, eles possuem certa semelhança
com os símbolos utilizados nos fluxogramas, porém de fácil compreensão, tendo como principal diferença
a utilização sistemática do princípio de abstração em um contexto limitado, de um método apenas, e não
de todo o objeto, conforme descrito por Correia e Tafner (2001, p. 26). A notação mais utilizada para
criação de fluxos em Análise Orientada a Objetos é a UML. Com isso em mente, observe o símbolo e sua
descrição a seguir:

“Uma entidade (pessoas ou sistemas externos) que interage com o sistema a modelar".
Qual símbolo da notação UML a imagem e descrição apresentadas estão se referindo?
A) Ator.
B) Associação.
C) Use case.
D) Estereótipo.

"Representa uma “vista” sobre as operações de uma classe".

Qual símbolo da notação UML a imagem e descrição apresentadas estão se referindo?


A) “Utility”.
B) Agregação.
C) “Interface”.
D) Estado.

"Representa um elemento físico na instalação do sistema. Normalmente com capacidade de


processamento".
Qual símbolo da notação UML a imagem e descrição apresentadas estão se referindo?
A) Instância de um nodo.
B) Boundary.
C) Nodo.
D) Componente.

"Representa um dispositivo concreto da rede (ex.: o computador do gabinete 23). Denotado pelo
nome sublinhado".
Qual símbolo da notação UML a imagem e descrição apresentadas estão se referindo?
A) Boundary.
B) Instância de um nodo.
C) Control.
D) Componente.
Existem símbolos que auxiliam no processo de desenvolvimento, eles possuem certa semelhança
com os símbolos utilizados nos fluxogramas, porém de fácil compreensão, tendo como principal diferença
a utilização sistemática do princípio de abstração em um contexto limitado, de um método apenas, e não
de todo o objeto, conforme descrito por Correia e Tafner (2001, p. 26). A notação mais utilizada para
criação de fluxos em Análise Orientada a Objetos é a UML. Com isso em mente, observe o símbolo e sua
descrição a seguir:

"É uma descrição de um conjunto de objetos que partilham os mesmos atributos, operações,
relações e semântica. São uma forma de representar os diferentes conceitos existentes num
sistema/problema". Qual símbolo da notação UML a imagem e descrição apresentadas estão se referindo?

A) Objeto.

B) Classe.

C) Classe abstrata.

D) Associação unidirecional.

"Representa o estado de um objeto durante o seu tempo de vida, enquanto espera por um evento
ou efetua alguma ação".

Qual símbolo da notação UML a imagem e descrição apresentadas estão se referindo?

A) Interface.

B) Utility.

C) Estado.

D) Agregação.
3 Modelagem UML
3.1 modelos de elementos com uso de UML
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) F - V - V - V.
B) F - V - V - F.
C) V - V - V - F.
D) F - F - F - F.

3.2 Métodos da UML


Três grandes nomes desenvolveram a UML. Dois deles são norte-americanos: Grady Booch e James
Rumbaugh, o terceiro é o suíço Ivar Jacobson. Juntos, no ano de 1995, lançaram a UML, unificando os seus
três métodos de estudo desenvolvidos individualmente. Acerca desses três métodos da UML, analise as
sentenças a seguir:
I- O Método de Booch é utilizado nas fases de projeto e construção de sistemas.
II- O método OOSE (Object-Oriented Software Engineering) facilitava a captura de requisitos.
III- O método OMT (Object Modeling Technique) propõe um método de modelagem para projetos
orientados a objetos.
IV- O método de Booch resultou no Método Unificado.
Assinale a alternativa CORRETA:

A) As sentenças I, II e IV estão corretas.


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.
Três grandes nomes criaram a UML. Dois deles são norte-americanos: Grady Booch e James
Rumbaugh, o terceiro é o suíço Ivar Jacobson. Juntos, em 1995 lançaram a UML 0, unificando os seus três
métodos de estudos desenvolvidos individualmente. Acerca desses três métodos da UMLL, classifique V
para as sentenças verdadeiras e F para as falsas: ( ) O Método de Booch é utilizado nas fases de projeto e
construção de sistemas. ( ) O método OOSE (Object-Oriented Software Engineering) facilitava a captura de
requisitos. ( ) O método OMT (Object Modeling Technique propõe um método de modelagem para
projetos orientados a objetos. ( ) O método de Booch resultou no Método Unificado. Assinale a alternativa
que apresenta a sequência CORRETA:

A) V - V - V - V.

B) V - V - F - F.

C) V - V - V - F.

D) F - F - V - F.

A notação UML utiliza de alguns mecanismos na construção de seus diagramas, com o intuito de
tratar informações adicionais que ainda não foram descritas. Uma nessas notações se chama Estereótipos.
Assinale a alternativa CORRETA correspondente a esse conceito:

A) É considerado o núcleo do mecanismo de extensão de UML. Normalmente são utilizados para


estender (enriquecer) o significado de um determinado elemento em um diagrama.

B) A todo elemento da UML está associada alguma semântica, onde cada elemento gráfico possui
um significado bem definido que, uma vez entendido, fica implícito na utilização do elemento em algum
diagrama.

C) É utilizado para comentar ou esclarecer alguma parte do diagrama.

D) Os elementos gráficos de um diagrama da UML possuem propriedades predefinidas.


Propriedades adicionais para elementos gráficos de um diagrama podem ser definidas através do uso de
etiquetas.
UML é uma linguagem padrão para desenvolver e documentar projetos de software e permite que
desenvolvedores visualizem os produtos de seus trabalhos em diagramas padronizados. Ela surgiu como
uma proposta de ser uma linguagem para modelagem de dados que usava diversos artefatos para
representar o modelo de negócio e um desses artefatos é o diagrama de classes. Sobre os conceitos ou
ideias fundamentais da metodologia da análise de sistemas orientada a objeto, classifique V para as
sentenças verdadeiras e F para as falsas: ( ) Uma classe é um conjunto de objetos com propriedades e
comportamentos semelhantes e com relacionamentos comuns com outros objetos. ( ) Um objeto é
qualquer coisa, real ou abstrata, a respeito do qual armazenamos dados e os métodos que os manipulam. (
) Um método de um tipo de objeto referencia somente as estruturas de dados desse tipo de objeto.
Comparativamente, é similar às funções e procedures do universo da programação. ( ) O encapsulamento é
importante porque separa a maneira como um objeto se comporta da maneira como ele é implementado,
uma vez que a definição sobre como implementar os conhecimentos ou ações de uma classe não são
informadas. Assinale a alternativa que apresenta a sequência CORRETA: FONTE: PRESSMAN, R. S.
Engenharia de Software, 6 ed. Porto Alegre; Bookman, 2006.

A) F - F - V - F.

B) V - F - F - V.

C) V - F - F - F.

D) V - V - F - F.

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 elementos da UML, assinale a
alternativa INCORRETA:

A) Um objeto é quem fará a execução da classe especificada, sendo algo abstrato, ou seja, não
oriundo do mundo real.

B) 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.

C) Uma classe é um agrupamento de objetos. As classes de um sistema possuem relacionamentos


entre elas para comunicação e para compartilhar informações.

D) 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 sistema de informação precisa possuir uma boa documentação, que precisa ser atualizada para
que o sistema possa ser mantido com facilidade, rapidez e de maneira correta. Portanto, modelar um
sistema é uma forma bastante eficiente de documentá-lo, a documentação é apenas uma das vantagens
fornecidas pela modelagem. A modelagem traz alguns objetivos. Referente a esses objetivos, assinale a
alternativa INCORRETA.

A) Fornecer padrões de desenvolvimento que servem como guia de construção do sistema.

B) Permitir a contratação de profissionais.

C) Documentar as decisões tomadas durante o processo de desenvolvimento.

D) Permitir a especificação da arquitetura e comportamento de um sistema.

Na construção de sistemas computacionais, a análise e a programação orientados a objetos buscam


soluções para problemas do mundo real baseando suas soluções em modelos. Um sistema computacional
precisa estar baseado em uma boa documentação, que precisa ser atualizada para que o sistema possa ser
mantido com facilidade, rapidez e de maneira correta. Modelar um sistema é uma forma bastante eficiente
de documentá-lo, lembrando que a documentação é apenas uma das vantagens fornecidas pela
modelagem. Com relação aos objetivos da modelagem, classifique V para as sentenças verdadeiras e F
para as falsas: ( ) Ajudar a visualizar o sistema como gostaríamos que ele fosse. ( ) Permitir a especificação
da arquitetura. ( ) Documentar as decisões tomadas durante o processo de desenvolvimento. ( ) Definir o
protótipo das telas a serem utilizados. Assinale a alternativa que apresenta a sequência CORRETA:

A) F - V - V - F.

B) V - F - V - V.

C) V - V - V - F.

D) V - V - F - F.
A Linguagem Unificada de Modelagem (UML) é uma de notação gráfica de modelagem para
visualizar, especificar, construir e documentar os sistemas computacionais orientados a objeto. Esta
modelagem é apresentada por meio de diagramas. Um dos diagramas da UML é o diagrama de caso de uso
(DCU). Diagrama de caso de uso tem como objetivo definir os principais atores envolvidos em um
determinado sistema e os requisitos envolvidos com cada ator. Acerca das características do DCU da UML,
analise as sentenças a seguir: I- Um ator é quem fará a execução do caso de uso (quem executará a
funcionalidade que está especificada no caso de uso). II- Um caso de uso é uma das várias formas que
temos para especificar as funcionalidades de um software. III- Associação Include é a forma de relação de
inclusão, indicando que o caso de uso estendido pode ou não ser incluído no extensor. IV- Associação
extend é a forma de relação de extensão, indicando a obrigatoriedade do caso de uso incluir a
funcionalidade do caso de uso incluído. Assinale a alternativa CORRETA: FONTE:
http://www.revistabw.com.br/revistabw/uml-casos-de-uso/. Acesso em: 24 ago. 2018.

A) As sentenças II e III estão corretas.

B) As sentenças I, II e IV estão corretas.

C) As sentenças I e III estão corretas.

D) As sentenças I e II estão corretas.

São levantados os requisitos e um modelo conceitual preliminar é construído, bem como ocorre a
identificação dos casos de uso de alto nível, que implementam as funcionalidades requeridas pelo cliente.
Do que estamos falando?

A) Construção (construction).

B) Transição (deployment).

C) Concepção (inception).

D) Elaboração (elaboration).
3.3 UP
O UP é um framework extensível para a concepção de processos, podendo ser adaptado às
características de diferentes empresas e projetos (WAZLAWICK, 2013). Sobre as principais características
do UP, analise as sentenças a seguir:
I- A abordagem focada em riscos prioriza os casos de uso mais crítico, em que são tratados primeiro
os problemas mais difíceis.
II- O UP preconiza o desenvolvimento baseado em ciclos interativos de duração fixa, onde em cada
interação a equipe incorpora à arquitetura as funcionalidades necessárias para realizar os casos de uso
abordados.
III- Para o UP, o conjunto de casos de uso deve esgotar toda a funcionalidade possível do sistema.
IV- O UP sugere desenvolver uma sólida arquitetura de sistema. As funcionalidades identificadas
nos diversos casos de uso devem ser incrementadas a essa arquitetura.
Fonte: WAZLAWICK, Raul Sidnei. Engenharia de software: conceitos e práticas. São Paulo: Editora Campus, 2013.
Assinale a alternativa CORRETA:

A) Somente a sentença II está correta.


B) Somente a sentença IV está correta.
C) As sentenças I, II, III e IV estão corretas.
D) Somente a sentença I está correta.

Segundo Wazlawick (2013), o Unified Process (UP) é um framework extensível para a concepção de
processos, podendo ser adaptado às características de diferentes empresas e projetos. O UP tem fases que
compõem a sua construção.
Fonte: WAZLAWICK, Raul Sidnei. Engenharia de software: conceitos e práticas. São Paulo: Editora Campus, 2013.
Nesse contexto, assinale a alternativa CORRETA que apresenta as fases do UP:

A) Concepção, Elaboração, Construção e Transição.


B) Inception, Gerenciamento de Configuração e Mudança, Gerenciamento de Projeto e
Deployment.
C) Concepção, Design, Construção e Implantação.
D) Modelagem de Negócios, Requisitos, Análise e Implementação.

Segundo Wazlawick (2013), o Processo Unificado (UP ou Unified Process) é um dos mais
importantes padrões da indústria de software. É um framework extensível para a concepção de processos,
podendo ser adaptado às características de diferentes empresas e projetos.
Fonte: WAZLAWICK, Raul Sidnei. Engenharia de software: conceitos e práticas. São Paulo: Editora Campus, 2013.
Sobre o ciclo de desenvolvimento UP, assinale a alternativa CORRETA que apresenta informações
que identificam o foco no indivíduo:

A) Microincremento e item de trabalho.


B) Ciclo de vida de projeto e plano de projeto.
C) Ciclo de vida de iteração e plano de interação.
D) Ciclo de vida de iteração e plano de projeto.
É um framework extensível para a concepção de processos, podendo ser adaptado às
características de diferentes empresas e projetos. Do que estamos falando?

A) UP.
B) Software.
C) Top.
D) Hardware.

A atividade de desenvolvimento de software está entre as mais complexas desenvolvidas pelo


homem e, por este motivo, existem diversos processos, ciclos de vida e modelos de trabalho que procuram
organizar as atividades de forma a gerenciar tal complexidade. O processo unificado (UP) é um dos
processos mais conhecidos e utilizados para gerenciar equipes de desenvolvimento, principalmente devido
à sua flexibilidade e consistência. Considerando estas e as outras características do UP, classifique V para
as sentenças verdadeiras e F para as falsas:
( ) Os ciclos iterativos e incrementais permitem a mitigação precoce de riscos.
( ) Fatores como sistema operacional e linguagem de programação afetam as decisões
arquiteturais.
( ) No UP, os requisitos funcionais são levantados através da arquitetura.
( ) A paralisia de análise pode ser mitigada através dos ciclos iterativos e incrementais.
Agora, assinale a alternativa que apresenta a sequência CORRETA:

A) V - V - F - V.
B) V - F - V - F.
C) F - F - F - V.
D) V - V - V - F.

Dentro do processo unificado (UP), todo o desenvolvimento é tratado de forma iterativa e


incremental, o que auxilia a mitigar riscos e diminuir a quantidade de erros quando o software
efetivamente chegar no usuário. O UP define ainda 4 fases dentro do projeto de desenvolvimento, sendo
que todas obedecem à característica de iteratividade e incrementação. Considerando as características das
4 fases do UP, classifique V para as sentenças verdadeiras e F para as falsas:( ) Uma arquitetura estabilizada
é característica da fase de construção. ( ) A fase de elaboração é caracterizada por uma versão detalhada
da arquitetura do sistema. ( ) Na fase de concepção, é estabelecido um escopo inicial através dos casos de
uso de alto nível. ( ) Na fase de transição, a primeira versão do sistema é implantada no ambiente de
produção. Agora, assinale a alternativa que apresenta a sequência CORRETA:
A) V - F - V - V.
B) F - V - V - F.
C) V - F - F - F.
D) F - V - F - V.
Segundo Wazlawick (2013), o Unified Process (UP) é um framework extensível para a concepção de
processos, podendo ser adaptado às características de diferentes empresas e projetos. O UP tem fases que
compõem a sua construção.
Nesse contexto, assinale a alternativa CORRETA que apresenta o objetivo da fase de Transição
(Deployment):
A) Possui interações nas quais os casos de uso mais complexos já foram tratados e a arquitetura já
foi estabilizada, afinal, o produto é construído no decorrer desta fase. Assim, as atividades de suas
interações consistem predominantemente na geração de código e teste do sistema.
B) Detalhar a análise e expandir os casos de uso, para obter assim sua descrição detalhada e
verificar as situações excepcionais, ou seja, são voltadas para a produção da arquitetura básica, e vários
casos de uso são demonstrados com detalhes, possuindo uma arquitetura projetada a qual utiliza-se de
artefatos, os quais podem ser estáticos ou dinâmicos.
C) Busca obter uma visão da abrangência do sistema.
D) Consiste na implementação do sistema no ambiente de produção, com a realização de teste e
operação, em que a primeira versão do sistema é entregue ao usuário.
(ENADE, 2011) Os modelos de processo foram propostos para que se traga ordem ao caos existente
na área de desenvolvimento de sistemas. Historicamente, verifica-se que esses modelos trouxeram
considerável contribuição no trabalho de engenharia de software. A respeito dos modelos de processo,
avalie as afirmações a seguir: I- O modelo EUP foi proposto como uma extensão ao modelo RUP para
prover, além das fases do RUP, duas novas fases para tratar a evolução ou suporte ao sistema e à
aposentadoria do sistema. II- O modelo EUP visualiza o desenvolvimento de software não apenas como um
projeto a ser desenvolvido, mais como algo intrínseco ao ciclo de vida da empresa. III- O UP é o primeiro
modelo de processo inteiramente adaptado ao uso da notação UML (Unified Modeling Language). Sua
concepção foi baseada nas práticas de maior Retorno do investimento (ROI) de mercado. É correto o que
se afirma em: FONTE: PRESSMAN, R. S. Engenharia de software: uma abordagem profissional. 8 ed. Porto
Alegre: AMGH, 2016.
A) II, apenas.
B) I, II e III.
C) III, apenas
D) I e II, apenas

A concepção é a primeira fase do Processo Unificado (UP). Nesta fase, busca-se obter uma visão da
abrangência do sistema. Referente a esta fase de concepção do UP, analise as sentenças a seguir:
I- Os requisitos são levantados nesta fase e um modelo conceitual preliminar é construído.
II- Nesta fase ocorre a identificação dos casos de uso de alto nível que implementam as
funcionalidades que o cliente requereu.
III- É calculado nesta fase o tempo que se leva (esforço) de desenvolvimento dos casos de uso e é
construído o plano de desenvolvimento.
IV- Um dos objetivos desta fase é detalhar a análise e expandir os casos de uso.
V- Ao chegar no final da fase de concepção, os desenvolvedores estão aptos a planejar a fase
seguinte, que é de iteração.
Agora, assinale a alternativa CORRETA:
A) As sentenças I, II e III estão corretas.
B) As sentenças II, III e IV estão corretas.
C) As sentenças I, III e IV estão corretas.
D) As sentenças I, II, IV e V estão corretas.

A orientação a objetos é fortemente baseada na observação das características das entidades do


mundo real e das relações estabelecidas entre elas. Considerando as particularidades da orientação a
objetos, assinale a alternativa CORRETA:
A) Uma das técnicas mais eficientes na identificação de objetos dentro de um sistema é o
agrupamento de entidades com características semelhantes e abstração delas em classes.
B) Dentro de um sistema, os objetos são modelados somente com base em entidades físicas como
pessoas, livros, automóveis etc.
C) A programação orientada a objetos apresenta sua contribuição mais importante através da
utilização de componentes visuais para interface gráfica de usuário.
D) Somente podem ser consideradas objetos as entidades que armazenam informação dentro de
um sistema.
O Processo Unificado é um dos mais importantes padrões da indústria de software atual. Vale
destacar que o processo unificado (UP ou Unified Process) foi desenvolvido por três importantes pioneiros
da orientação a objetos nos anos 1990 (Ivar Jacobson, Grady Booch e Jim Rumbaugh). Este é o resultado de
mais de 30 anos de experiência acumulada em forma de projetos, notações e processos. Segundo
Wazlawick (2013), o UP é um framework extensível para a concepção de processos, podendo ser adaptado
às características de diferentes empresas e projetos.Considerando o desenvolvimento baseado em ciclos
interativos de duração fixa, na qual em cada interação a equipe incorpora à arquitetura as funcionalidades
necessárias para realizar os casos de uso abordados, assinale a alternativa CORRETA:
Fonte: WAZLAWICK, Raul Sidnei. Engenharia de software: conceitos e práticas. São Paulo: Editora
Campus, 2013.
A) Focado em riscos.
B) Dirigido por caso de uso.
C) Centrado na arquitetura.
D) Interativo e incremental.

O Processo Unificado é um dos mais importantes padrões da indústria de software atual. Vale
destacar que o processo unificado (UP ou Unified Process) foi desenvolvido por três importantes pioneiros
da orientação a objetos nos anos 1990 (Jacobson, Booch e Rumbaugh). Este é o resultado de mais de 30
anos de experiência acumulada em forma de projetos, notações e processos. O UP é o primeiro modelo de
processo inteiramente adaptado ao uso da notação UML (Unified Modeling Language). Sua concepção foi
baseada nas práticas de maior retorno do investimento (ROI) de mercado. Sobre as fases do UP, assinale a
alternativa CORRETA:
A) Concepção, elaboração, construção e modificação.
B) Criação, elaboração, construção e transição.
C) Concepção, elaboração, construção e transição.
D) Concepção, elaboração, construção e transformação.

Qual fase do UP consiste na implementação do sistema no ambiente de produção, com a realização


de teste e operação, na qual a primeira versão do sistema é entregue ao usuário?
A) Construção.
B) Transição.
C) Manutenção.
D) Elaboração.

Assinale a alternativa CORRETA que apresenta as principais características do UP:


A) Dirigido por classes, centrado na arquitetura, interativo e incremental e focado em riscos.
B) Dirigido por caso de uso, centrado na arquitetura, interativo e incremental e focado em riscos.
C) Dirigido por caso de uso, centrado na arquitetura, interativo e decremental e focado em riscos.
D) Dirigido por classes, centrado na arquitetura, interativo e incremental e focado em riscos.
O Processo Unificado é um dos mais importantes padrões da indústria de software atual. Vale
destacar que o processo unificado (UP ou Unified Process) foi desenvolvido por três importantes pioneiros
da orientação a objetos nos anos 1990 (Ivar Jacobson, Grady Booch e Jim Rumbaugh). Este é o resultado de
mais de 30 anos de experiência acumulada em forma de projetos, notações e processos. Segundo
Wazlawick (2013), o UP é um framework extensível para a concepção de processos, podendo ser adaptado
às características de diferentes empresas e projetos. Nesse contexto, assinale a alternativa CORRETA que
apresenta um modelo que define a estrutura da informação, suas possíveis operações e sua organização
em componentes ou até mesmo em camadas:

A) Interativo e incremental.

B) Focado em riscos.

C) Dirigido por caso de uso.

D) Centrado na arquitetura.

O Processo Unificado é um dos mais importantes padrões da indústria de software atual. Vale
destacar que o processo unificado (UP ou Unified Process) foi desenvolvido por três importantes pioneiros
da orientação a objetos nos anos 1990. Quem foram eles?

A) Antonio, Booch e Rumbaugh.

B) João, Booch e Rumbaugh.

C) Jacobson, Booch e Rumbaugh.

D) João, Antonio e Rumbaugh.

É a versão simplificada do RUP, que aplica técnicas ágeis de desenvolvimento dirigido por testes
(TDD), modelagem ágil e fatoração. A que estamos nos referindo?

A) EUP.

B) OUP.

C) AUP.

D) AOP.
O Processo Unificado é um dos mais importantes padrões da indústria de software atual. Vale
destacar que o processo unificado (UP ou Unified Process) foi desenvolvido por três importantes pioneiros
da orientação a objetos nos anos 1990 (Ivar Jacobson, Grady Booch e Jim Rumbaugh). Este é o resultado de
mais de 30 anos de experiência acumulada em forma de projetos, notações e processos. Segundo
Wazlawick (2013), o UP é um framework extensível para a concepção de processos, podendo ser adaptado
às características de diferentes empresas e projetos.Nesse contexto, assinale a alternativa CORRETA que
apresenta as características do UP focado em riscos:
A) É basicamente um modelo que define a estrutura da informação, suas possíveis operações e sua
organização em componentes, ou até mesmo em camadas.
B) É um processo compreendido do ponto de vista do usuário, não antecipando decisões de
implementações. Para o UP, o conjunto de casos de uso deve esgotar toda a funcionalidade possível do
sistema.
C) Prioriza os casos de uso mais críticos, em que são tratados primeiro os problemas mais difíceis.
D) Preconiza o desenvolvimento baseado em ciclos interativos de duração fixa, onde em cada
interação a equipe incorpora à arquitetura as funcionalidades necessárias para realizar os casos de uso
abordados.

A elaboração é a segunda fase do Processo Unificado (UP). As interações que ocorrem nesta fase
têm como objetivo detalhar a análise e expandir os casos de uso, obtendo desta forma sua descrição
detalhada e verificar as situações excepcionais. Referente à fase de elaboração do UP, classifique V para as
sentenças verdadeiras e F para as falsas:
( ) As interações desta fase são voltadas para a produção de uma arquitetura de alto nível.
( ) Os casos de uso (na sua maioria) são demonstrados de forma detalhada.
( ) Possui uma arquitetura projetada que utiliza artefatos estáticos e/ou dinâmicos.
( ) A geração de código é realizada de forma significativa nesta fase.
( ) Ao chegar no final da fase elaboração, os desenvolvedores estão aptos a planejar a fase
seguinte, que é de construção.
Agora, assinale a alternativa que apresenta a sequência CORRETA:

A) V - F - V - V - F.
B) V - V - F - V - F.
C) F - V - V - F - V.
D) F - F - V - V - V.

O RUP representa uma nova geração de processos genéricos, a mais importante inovação é a
separação de fases e workflows, e, sobretudo, o reconhecimento de que a implantação de software no
ambiente do usuário é parte do processo. Sobre as categorias em que são organizadas os papéis no RUP,
assinale a alternativa CORRETA:
A) Papel do analista, papel do desenvolvedor, papel do testador e papel do administrador.
B) Papel do analista, papel do desenvolvedor, papel do testador e papel do gerente.
C) Papel do analista, papel do desenvolvedor, papel do regulador e papel do gerente.
D) Papel do analista, papel do desenvolvedor, papel do testador e papel do receptor.
Assinale a alternativa CORRETA que apresenta o objetivo da fase de Concepção (Inception):

A) Consiste na implementação do sistema no ambiente de produção, com a realização de teste e


operação, em que a primeira versão do sistema é entregue ao usuário.

B) Busca obter uma visão da abrangência do sistema.

C) Detalhar a análise e expandir os casos de uso, para obter assim sua descrição detalhada e
verificar as situações excepcionais, ou seja, são voltadas para a produção da arquitetura básica, e vários
casos de uso são demonstrados com detalhes, possuindo uma arquitetura projetada a qual utiliza-se de
artefatos, os quais podem ser estáticos ou dinâmicos.

D) Possui interações nas quais os casos de uso mais complexos já foram tratados e a arquitetura já
foi estabilizada, afinal, o produto é construído no decorrer desta fase. Assim, as atividades de suas
interações consistem predominantemente na geração de código e teste do sistema.
3.4 Manutenção
É importante frisar que quando utilizada uma modelagem correta, e se estiver associada a uma
documentação completa e atualizada em um sistema de informação, é possível tornar mais rápido o
processo de manutenção e evitar erros durante este processo. Sobre os tipos de manutenções existentes,
analise as opções a seguir:
I- Manutenção corretiva.
II- Manutenção evolutiva.
III- Manutenção adaptativa.
IV- Manutenção analítica.
Assinale a alternativa CORRETA:

A) As opções III e IV estão corretas.


B) As opções II e IV estão corretas.
C) As opções I, II e III estão corretas.
D) As opções I, II e IV estão corretas.

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 tem como característica a modificação do software após ele ter sido entregue ao
cliente.
B) A manutenção de um software não influencia o custo total do projeto.
C) A manutenção de um software ocorre apenas pelas solicitações realizadas pelos clientes que não
sabem ao certo as suas reais necessidades.
D) 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.
3.5 Estruturas
Segundo Correia e Tafner (2001, p. 39), “Na Programação Orientada a Objetos, as estruturas
possibilitam os analistas ou programadores arranjarem os objetos de forma que possam visualizar melhor
o domínio e a complexidade do problema em estudo”.
Fonte: CORREIA, Carlos Henrique; TAFNER, Malcon Anderson. Análise orientada a objetos. Florianópolis: Editora Visual Books, 2001.
Qual tipo básico de estrutura que é bastante característico e que trata de agregação ou
decomposição de objetos?

A) Estrutura Todo-Parte.
B) Estrutura Generalização-Especialização.
C) Estrutura Análise-Estruturada.
D) Estrutura Simbiótica.
3.6 Modelagem Ágil
O Agile Unified Process é uma versão simplificada do RUP que aplica técnicas ágeis de
desenvolvimento dirigido por testes (TDD), modelagem ágil e fatoração. Considerando prerrogativas desse
manifesto, assinale a alternativa INCORRETA:

A) Estar preparado para a adaptação e introdução de mudanças.

B) Produzir softwares funcionais, não somente documentações completas e atualizadas.

C) Colaborar com os clientes, e não apenas discutir picuinhas contratuais.

D) Valorizar os indivíduos envolvidos no processo, mas não considerar a interações entre eles.

Têm a responsabilidade de atentarem para as adequações de reais necessidades, bem como


verificar a conformidade com normas e padrões estabelecidos. A quais dos papeis do RUP se enquadra
essa definição?

A) Papel do Analista.

B) Papel de Gerente.

C) Papel de Testador.

D) Papel do Desenvolvedor.

É responsável por definir técnicas, estratégias, e principalmente definir os casos de testes que serão
aplicados no sistema, ou seja, tem a função de analisar os resultados dos testes e, no caso de necessidade,
informar aos responsáveis que providenciem a correção. A respeito disso, assinale a alternativa CORRETA:

A) Identificar solicitações dos principais envolvidos.

B) Criar o guia de modelagem de casos de uso.

C) Implementar conjuntos de testes.

D) Desenvolver artefatos de instalação.


3.7 Relacionamentos
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 IV estão corretas.


B) As sentenças I, II, III e V estão corretas.
C) As sentenças II, III, IV e V estão corretas.
D) Somente a sentença II está correta.

De acordo com Jacoby (2013), os relacionamentos ligam as classes/objetos entre si criando relações
lógicas entre estas entidades. A imagem a seguir representa qual tipo de relacionamento?

A) Associação n-ária.
B) Associações unárias.
C) Associação ternária.
D) Associação binária.
4 Conexões
Na Programação Orientada a Objetos, existem dois tipos de conexão entre os objetos, que são
conhecidas por Conexões de Ocorrência e Conexões de Mensagens. Nesse sentido, é importante destacar
que ambas não possuem nenhum tipo de hierarquia ou estrutura. Sobre as conexões, analise as sentenças
a seguir:
I- Herança é o princípio em que classes derivadas de uma mesma superclasse podem invocar
operações que têm a mesma assinatura.
II- Uma Conexão de Ocorrência existe quando um atributo de um objeto contém uma referência a
outro objeto.
III- A cardinalidade determina o número de vezes que um objeto é referenciado ou se referencia a
outro.
IV- Com relação à conexão de mensagem, pode-se dizer que uma mensagem é uma ação que envia
um método específico no objeto receptor, fazendo com que este efetue um comportamento determinado.
Assinale a alternativa CORRETA:

A) As sentenças I e III estão corretas.


B) As sentenças I e IV estão corretas.
C) As sentenças I, III e IV estão corretas.
D) As sentenças II, III e IV estão corretas.
5. Desenvolvimento de Software
5.1 Fases
Hoje em dia, o software assume um duplo papel. Ele é o produto e ao mesmo tempo o veículo para
entrega do produto. Como produto, ele disponibiliza o potencial de computação presente em computador,
ou mais amplamente numa rede de computadores acessível pelo hardware local. Quer resida em um
telefone celular, quer opere em um computador de grande porte (Mainframes), o software é
transformador de informações, produzindo, gerando, adquirindo, modificando, exibindo, ou transmitindo
informação, que pode ser tão simples como um bit ou tão complexa como uma apresentação multimídia.
Para o desenvolvimento desses softwares, existem algumas fases, como por exemplo a fase de
implementar ou codificar o software. A respeito dessas fases, analise as sentenças a seguir:
I- Fase de análise.
II- Fase de design.
III- Fase de testes.
IV- Fase de implantação.
Assinale a alternativa CORRETA:

A) Somente a sentença II está correta.


B) As sentenças I, II, III e IV estão corretas.
C) Somente a sentença I está correta.
D) Somente a sentença III está correta.

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) F - F - V - F.
B) V - F - F - V.
C) V - V - F - V.
D) F - F - V - V.
Em geral, existe uma sequência pré-definida para as etapas que compõem o ciclo de vida de um
projeto de desenvolvimento de software, em que inicialmente se faz um levantamento de requisitos, para
então se fazer a análise, o projeto e finalmente a implementação do código-fonte propriamente dita.
Considerando as características destas etapas, classifique V para as sentenças verdadeiras e F para as
falsas: ( ) Na UML, requisitos são geralmente registrados através dos casos de uso. ( ) O diagrama de
classes mostra a ordem de invocação dos métodos e criação das instâncias. ( ) As regras de negócio são
registradas nos cenários principal e alternativo do diagrama de estados. ( ) O diagrama de sequência faz
parte do levantamento do problema, enquanto o diagrama de classes já representa uma abstração da
solução computacional proposta. Agora, assinale a alternativa que apresenta a sequência CORRETA:

A) F - F - V - F.

B) V - F - F - F.

C) V - F - V - V.

D) F - F - V - V.
5.2 Requisitos de Software
Um requisito de sistema de software que especifica uma função que o sistema ou componente
deve ser capaz de realizar. Estes são requisitos de software que definem o comportamento do sistema, ou
seja, o processo ou transformação que componentes de software ou hardware efetuam sobre as entradas
para gerar as saídas. Esses requisitos capturam as funcionalidades sob o ponto de vista do usuário. Sobre
as principais características dos requisitos, analise as sentenças a seguir:
I – Não Ambíguo.
II – Verificável.
III – Determinístico.
IV – Rastreável e Correto.
V – Funcional.
Assinale a alternativa CORRETA:

A) As sentenças II, IV e V estão corretas.


B) As sentenças III, IV e V estão corretas.
C) As sentenças I, II, III e IV estão corretas.
D) As sentenças I, II, IV e V estão corretas.

Um fator crítico na fase de levantamento de requisitos são as incertezas dos usuários com relação
às potencialidades do sistema de informação. Sobre os principais fatores críticos na fase de levantamento
de requisitos, analise as sentenças a seguir:
I- Falta de envolvimento do usuário.
II- Falta de recursos.
III- Expectativas irreais.
IV- Apoio do executivo.
V- Mudança de requisitos e especificações.
Assinale a alternativa CORRETA:

A) As sentenças I e V estão corretas.


B) As sentenças I, II, III e IV estão corretas.
C) As sentenças I, II, III e V estão corretas.
D) Somente a sentença I está correta.

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) 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.
B) Um dos fatores críticos de sucesso desta fase é por não existirem incertezas com relação às
potencialidades do sistema de informação.
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.
Na etapa de levantamento e análise de requisitos, é necessário um contato constante com o
usuário, pois é nessa etapa que são detalhadas as funcionalidades das atividades, assim como os processos
que possam ser automatizados. A comunicação é um dos maiores desafios dessa etapa de levantamento e
análise de requisitos. Outro fator crítico está relacionado às dúvidas dos usuários com as potencialidades
dos sistemas de informação. Relacionado aos fatores críticos no levantamento de requisitos, classifique V
para as sentenças verdadeiras e F para as falsas: ( ) Os requisitos não estão completos. ( ) Usuário não
comprometido, falta de envolvimento do usuário. ( ) Usuário possui uma expectativa do sistema diferente
da realidade. ( ) Falta de apoio pela alta gerência. ( ) Falta de recursos. Agora, assinale a alternativa que
apresenta a sequência CORRETA:

A) V - V - V - V - V.

B) F - F - F - V - V.

C) V - V - F - F - F.

D) V - V - F - F - V.
5.3 Dificuldades
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:
C) O levantamento de requisitos fornece uma estimativa precisa da complexidade envolvida em
todo o projeto do software.
D) A criação de uma margem de segurança em termos de prazo e custo não é recomendada em
projetos de desenvolvimento de software.
A) 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.
B) Um problema comum em projetos de desenvolvimento de 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.
5.4 Prototipagem de Projetos
Na fase de prototipação do projeto, são desenvolvidos protótipos, modelos ou desenhos das telas
que irão conter o sistema. Desta forma, a prototipação nos ajuda a entender o negócio do cliente, nos dá
uma compreensão melhor do propósito do sistema que está sendo construído. Relacionado à fase de
prototipação, analise as sentenças a seguir: I- Protótipos podem ser realizados apenas através de
ferramentas que se apoiam no processo. II- A utilização de protótipos ajuda a evitar que após o sistema
pronto e entregue ao cliente, este não identifique que o sistema não atende completamente as suas
necessidades. III- Um dos objetivos da prototipação é facilitar o entendimento dos requisitos, assim como
apresentar os conceitos e funcionalidade do sistema. IV- A utilização da prototipação pode induzir o
usuário a pensar que o sistema está num estágio de desenvolvimento muito mais avançado do qual ele
está. V- Ao utilizar a prototipação, deve-se deixar claro para o usuário que o que está sendo mostrado é
apenas um modelo, um protótipo do que será o produto final. Agora, assinale a alternativa CORRETA:
A) As sentenças II, III, IV e V estão corretas.
B) As sentenças I, II, III e V estão corretas.
C) As sentenças I, II, III e IV estão corretas.
D) Somente a sentença II está correta.

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, III e IV estão corretas.
B) As sentenças I, II e V estão corretas.
C) As sentenças II, III e V estão corretas.
D) As sentenças I e III estão corretas.
5.5 Manutenção
Após a implantação de um sistema em ambiente de produção, parte-se para a fase de manutenção
dentro do ciclo de vida do desenvolvimento de software. Os sistemas geralmente necessitam de diversos
tipos de manutenção durante sua existência. Considerando a etapa de manutenção no processo de
desenvolvimento de software, avalie as sentenças a seguir: I- A fase de manutenção é uma parte explícita
do modelo em cascata do processo de desenvolvimento de software. II- A atualização do sistema para
inserir customizações é considerada um tipo de manutenção. III- A depuração do programa é um processo
específico da fase de desenvolvimento e um tipo de manutenção. IV- O acréscimo de novas funções a um
sistema existente, sem perturbar sua operação, é considerado um tipo de manutenção. V- A manutenção
do sistema está relacionada ao aumento do ciclo de vida do software. Assinale a alternativa CORRETA:

A) As sentenças II, III, IV e V estão corretas.

B) As sentenças I e III estão corretas.

C) As sentenças I, II e IV estão corretas.

D) As sentenças I, II, IV e V estão corretas.

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 evolutiva é aquela em que se criam novas funcionalidades e melhorias para o


software.

B) A manutenção corretiva é aquela em que são implementadas novas funcionalidades no software.

C) A manutenção adaptativa é em geral a menos custosa, pois normalmente envolve a alteração de


funcionalidades já existentes.

D) A manutenção evolutiva é aquela em que se evolui o software através da correção dos erros
existentes.
Processo de engenharia de software que fornece uma abordagem para assumir tarefas e
responsabilidades dentro de uma organização de desenvolvimento, cujo objetivo é assegurar a produção
de software de alta qualidade dentro de prazos e orçamentos previsíveis. Do que estamos falando?

A) RUP.

B) RAP.

C) REP.

D) ROP.
6 História da Informática
O marco inicial da informática se dá com o primeiro computador eletrônico, o ENIAC (Eletrical
Numerical Integrator and Calculator), surgido em 1945, e pesando cerca de 30 toneladas. Até hoje os
computadores ainda utilizam a arquitetura proposta por Von Neumann. Em 1951, surgia o primeiro
computador fabricado comercialmente.
Assinale a alternativa CORRETA que apresenta o nome desse computador:

A) UNIVAC I.
B) IBM SYSTEM 360.
C) IBM 7030.
D) UNIVAC II.

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 a estrutura de código orientado a objeto em nível exatamente abaixo do próprio código.
B) Retrata a estrutura de código orientado à linguagem no nível definido pelo usuário.
C) Retrata a estrutura de código orientado a objeto em nível exatamente acima do próprio código.
D) Retrata critérios de codificação de segurança de objetos independentes.

O Processo Unificado é um dos mais importantes padrões da indústria de software atual. Vale
destacar que o processo unificado (UP ou Unified Process) foi desenvolvido por três importantes pioneiros
da orientação a objetos nos anos 1990. Quem foram eles?
A) João, Antonio e Rumbaugh.
B) Jacobson, Booch e Rumbaugh.
C) João, Booch e Rumbaugh.
D) Antonio, Booch e Rumbaugh.

Este termo foi adotado para justificar a guarda da documentação de um projeto por um longo
período de tempo, ou seja, é histórico por guardar todas as modificações existentes em um sistema de
informação. Assinale a alternativa CORRETA
A) Manutenção.
B) Documentação histórica.
C) Prazos e custos.
D) Prototipação.
6.1 Movimento Ágil
O objetivo do Manifesto Ágil de software (The Agile Manifesto) surgiu com o intuito de trazer maior
agilidade no processo de desenvolvimento de software. Esse manifesto apresenta 12 princípios. De acordo
com Sato (2007), "Essas características trazem dinamismo para o desenvolvimento, motivação para o time
e informações mais precisas sobre a verdadeira situação do projeto para o cliente." Sobre esta área,
classifique V para as sentenças verdadeiras e F para as falsas: ( ) No dia a dia do projeto, os
desenvolvedores e as pessoas relacionadas com o projeto trabalham de forma colaborativa. ( ) Os projetos
devem ser construídos por pessoas que estejam motivadas, prover tanto o ambiente como o suporte
necessário e a pessoa não necessariamente confia que o outro realizará seu trabalho. ( ) A comunicação
face a face é a forma mais efetiva, ou seja, eficiente e eficaz, de passar as informações dentro e fora da
organização. ( ) São realizadas periodicamente reuniões entre o time para que possa pensar em como se
tornar mais eficiente. ( ) O software funcionando é a principal medida de progresso. FONTE: SATO, Danilo
Toshiaki. Uso eficaz de métricas em métodos ágeis de desenvolvimento de software. Tese de Doutorado.
São Paulo: USP, 2007. Agora, assinale a alternativa que apresenta a sequência CORRETA:
A) V - F - V - V - F.
B) V - V - F - F - F.
C) V - F - V - V - V.
D) F - F - V - V - V.
7 Programação Orientada a Objetos
Os conceitos da Orientação a Objetos (OO) surgiram da necessidade em se enfatizar unidades
discretas e obter a reutilização de código, mantendo-se a qualidade do software. O núcleo do pensamento
OO predomina num foco sobre os dados, em vez dos processos, compondo módulos autossuficientes, os
objetos. Nas linguagens da OO, pode-se encapsular o estado de um objeto. Conforme observa Sintes
(2002), "o encapsulamento transforma seus objetos em componentes plugáveis. Para que outro objeto use
seu componente, ele só precisa saber como usar a interface pública do componente". Sobre o
encapsulamento, analise as sentenças a seguir:
I- Quando um objeto é encapsulado corretamente, ele poderá ser utilizado sempre que fizer
sentido seu uso.
II- O uso de um objeto encapsulado não provoca efeitos paralelos inesperados entre o objeto e o
restante do programa.
III- Ao encapsular um objeto, ele estará vinculado para ser usado livremente.
IV- O encapsulamento permite tornar as alterações em seu objeto sejam transparentes,
independente da interface ser alterada ou permanecer a mesma.
FONTE: SINTES, Tony. Aprenda programação orientada a objetos em 21 dias. São Paulo: Makron
Books, 2002.
Assinale a alternativa CORRETA:

A) As sentenças I e IV estão corretas.


B) As sentenças II e III estão corretas.
C) As sentenças I, II e III estão corretas.
D) As sentenças I e II estão corretas.

Durante a análise orientada a objetos, “o objetivo é encontrar e descrever os objetos – ou


conceitos – no domínio do problema. No caso do sistema de informação de uma biblioteca, por exemplo,
alguns dos conceitos incluem Livro, Biblioteca e usuário”, como descreve Larman (2004, p. 31). Durante o
projeto orientado a objetos, há uma ênfase na definição dos objetos de software e como eles colaboram
para a satisfação dos requisitos. "No sistema da biblioteca, por exemplo, um objeto de software Livro pode
ter um atributo título e um método obterCapítulo" (LARMAN, 2004, p. 31).
Nesse contexto, assinale a alternativa CORRETA que apresenta a definição de Programação
Orientada a Objetos (POO) segundo o estudo de David (2007):
A) Foi criada para reproduzir as mesmas características e comportamentos dos objetos do mundo
virtual dentro de um sistema.
B) Foi criada para tentar aproximar o mundo virtual do mundo real. Assim, a ideia fundamental é
tentar simular o mundo real dentro do computador. Para isso, nada mais natural do que utilizar objetos,
afinal, nosso mundo é composto por objetos.
C) Foi criada para tentar aproximar o mundo real do mundo virtual. Assim, a ideia fundamental é
tentar simular o mundo real dentro do computador. Para isso, nada mais natural do que utilizar objetos,
afinal, nosso mundo é composto por objetos.
D) Foi criada para identificar os objetos que farão parte do sistema computacional que está sendo
automatizado, seus atributos e principalmente no comportamento destes objetos dentro do sistema
computacional.
Uma das principais vantagens da orientação a objetos é que tanto a análise quanto a programação
referem-se aos mesmos conceitos, o que diminui o que é conhecido como “vazamento de abstração” entre
o modelo e o código fonte propriamente dito. Com relação à orientação a objetos, analise as seguintes
sentenças:
I- Na análise orientada a objetos, os analistas dão ênfase à definição de sub-rotinas e funções que
simularão o comportamento do sistema.
II- A orientação a objetos permite que se minimize os problemas de decomposição funcional e sub-
rotinas.
III- Durante a etapa de análise orientada a objetos, as entidades do mundo real (livro, pessoa, conta
corrente etc.) são implementadas como métodos dentro de um objeto.
IV- Uma das vantagens da programação orientada a objetos é o agrupamento entre os dados e
comportamentos das entidades.
Agora, assinale a alternativa CORRETA:

A) As sentenças I e IV estão corretas.


B) As sentenças I, II e III estão corretas.
C) As sentenças I, III e IV estão corretas.
D) As sentenças II e IV estão corretas.

“Programação Orientada a Objetos consiste em utilizar objetos computacionais para implementar a


funcionalidade de um sistema” (CORREIA; TAFNER, 2001, p. 8).Nesse contexto, assinale a alternativa
CORRETA que apresenta a principal vantagem ao estudar Orientação a Objetos:
Fonte: CORREIA, Carlos Henrique; TAFNER, Malcon Anderson. Análise orientada a objetos.
Florianópolis: Editora Visual Books, 2001.
A) A possibilidade de utilizar essa metodologia somente para a análise de sistemas.
B) A possibilidade de utilizar essa mesma metodologia tanto para a análise de negócios quanto para
a etapa de design.
C) A possibilidade de utilizar essa metodologia tanto para a análise de negócios quanto para a etapa
de implantação.
D) A possibilidade de utilizar essa mesma metodologia tanto para a análise de sistemas quanto para
a programação.
No contexto de que a principal vantagem da Orientação a Objetos é a utilização de uma mesma
metodologia, tanto para a análise de sistemas quanto para a programação, Farinelli (2007) descreve que a
Orientação a Objetos consiste em conceber um sistema computacional como um todo orgânico formado
por objetos que se relacionam entre si, trazendo consigo alguns benefícios.Nesse contexto, assinale a
alternativa CORRETA que apresenta a principal utilização dessa ferramenta:
Fonte: FARINELLI, Fernanda. Conceitos básicos de programação orientada a objetos. 2007.
Disponível em: http://sistemas.riopomba.ifsudestemg.edu.br/dcc/materiais/1662272077_POO.pdf. Acesso
em: 23 fev. 2023.
A) A utilização das informações constantes no domínio do negócio.
B) A utilização das informações constantes na manutenção.
C) A reutilização das informações constantes no sistema.
D) A reutilização das informações constantes em apenas uma etapa do processo de
desenvolvimento.

Pode-se dizer que a orientação a objetos vai muito além da simples utilização de componentes
gráficos prontos para a definição de interfaces gráficas de usuários. Considerando as características da
programação e análise orientadas a objetos, assinale a alternativa CORRETA:
A) Na análise orientada a objetos, os analistas dão ênfase à definição de sub-rotinas e funções que
simularão o comportamento do sistema.
B) Uma das desvantagens da orientação a objetos é o aumento da manutenibilidade e
reusabilidade.
C) Uma das vantagens da programação orientada a objetos é a separação entre os dados e
comportamentos das entidades.
D) Na atividade de análise orientada a objetos, os analistas devem identificar objetos que farão
parte do sistema computacional, com seus atributos e comportamentos.

Imagine a seguinte situação: a receita federal fez uso de uma rotina computacional executada em
uma base de dados para buscar e obter informações de pessoas físicas e jurídicas em todo o território
nacional. Nessa rotina, foi especificado uma classe-mãe para ser usada em todos os sistemas da receita
federal, mas de forma regional. Agora, pense no seguinte: como são regiões com particularidades distintas,
os métodos de implementação das operações da classe mãe, foram adaptados a cada região, considerando
as restrições impostas. Acerca desta adequação regional, classifique V para as sentenças verdadeiras e F
para as falsas: ( ) As classes-filha utilizaram o fundamento de herança múltipla. ( ) A classe-mãe necessitou
definir uma operação diferente para cada regional. ( ) Foi utilizado o conceito de polimorfismo. ( ) Foi
necessário aplicar o fundamento de engenharia reversa em cada classe-filha. ( ) Cada classe-filha teve que
reespecificar a totalidade dos atributos e operações da classe-mãe e não somente os específicos. Assinale a
alternativa que apresenta a sequência CORRETA:
A) F - F - V - F - V.
B) F - F - V - F - F.
C) V - V - V - F - F.
D) F - F - V - V - F.
Os relacionamentos de associação vão um pouco mais fundo do que os relacionamentos de
dependência. As associações são relacionamentos estruturais. Desta forma, uma associação informa que
um objeto contém ou ele está conectado a um outro objeto. Referente às associações, classifique V para as
sentenças verdadeiras e F para as falsas:
( ) A multiplicidade 0..1 indica que os objetos das classes não precisam obrigatoriamente estar
relacionados mas, se houver, apenas uma instância da classe se relaciona.
( ) A multiplicidade 0...* indica que pode ou não haver instâncias da classe participante do
relacionamento.
( ) A multiplicidade * indica que muitos objetos da classe estã envolvidos.
( ) A multiplicidade 1...1 indica que apenas um objeto da classe se relaciona com outra classe.
( ) A multiplicidade 1..* indica que pelo menos um objeto envolvido no relacionamento, podendo
haver muitos.
Agora, assinale a alternativa que apresenta a sequência CORRETA:
A) V - V - F - F - F.
B) F - F - V - V - V.
C) V - V - V - V - V.
D) V - V - F - V - V.

A orientação a objetos surgiu como uma maneira de suplantar as dificuldades dos paradigmas de
programação existentes, visando melhorar a qualidade dos softwares desenvolvidos. No que se refere às
características da programação e análise orientada a objetos, assinale a alternativa CORRETA:
A) Durante a etapa de análise orientada a objetos, as entidades do mundo real (livro, pessoa, conta
corrente etc.) são implementadas como atributos dentro de um objeto.
B) A programação orientada a objetos apresenta sua contribuição mais importante através da
utilização de componentes visuais para interface gráfica de usuário.
C) A orientação a objetos pode ser aplicada com sucesso na etapa de programação do sistema,
enquanto na etapa de análise aconselha-se a utilização de outra metodologia.
D) A orientação a objetos permite que se minimizem os problemas de decomposição funcional e
sub-rotinas.

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 evolutiva é aquela em que se evolui o software através da correção dos erros
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 adaptativa é em geral a menos custosa, pois normalmente envolve a alteração de
funcionalidades já existentes.
Na etapa de levantamento e análise de requisitos, o analista busca compreender as reais
necessidades do usuário. O maior desafio desta etapa é, sem sombra de dúvida, a comunicação, devido à
dificuldade no entendimento de um conjunto de conceitos vagos, abstratos e confusos que representam as
necessidades e os desejos dos usuários e clientes e transformá-los em algo concreto, isto é, o sistema apto
para o cliente. Neste contexto, sobre os fatores críticos na fase de levantamento de requisitos para obter
as informações necessárias, analise as seguintes sentenças: I- Requisitos incompletos, falta de
envolvimento do usuário e falta de recursos são informações que os usuários devem fornecer ao analista, o
que, muitas vezes, ocorre de forma ineficaz, comprometendo o trabalho desenvolvido. II- Os usuários
possuem uma expectativa irreal. III- Nesta etapa também é comum que ocorram mudanças nos requisitos
e nas especificações. IV- Existe apoio executivo. V- Falta de planejamento. Assinale a alternativa CORRETA:
A) Somente a sentença III está correta.
B) As sentenças I, II, III e IV estão corretas.
C) As sentenças II, III e IV estão corretas.
D) As sentenças I, II, III e V estão corretas.

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- Suportar conceitos
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, III e IV estão corretas.
B) As sentenças I, II e V estão corretas.
C) As sentenças I, II e IV estão corretas.
D) As sentenças II, III e V estão corretas.

O Processo Unificado (UP) destaca-se por definir os ciclos de desenvolvimento como iterativos e
incrementais, em que uma nova funcionalidade é implementada somente quando a funcionalidade atual
for aprovada e validada utilizando os casos de uso. Considerando esta e outras características do UP,
analise as seguintes sentenças: I- Os ciclos iterativos e incrementais permitem a mitigação precoce de
riscos. II- A paralisia de análise é uma consequência dos ciclos iterativos e incrementais. III- O envolvimento
com o usuário pode ser considerado uma vantagem, à medida que este envolvimento torna o sistema mais
adaptado às necessidades dele. IV- Os casos de uso não têm relação com os ciclos iterativos e
incrementais. 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 IV estão corretas.
D) As sentenças II e III estão corretas.
O Rational Unified Process (RUP) tem como objetivo garantir que os sistemas sejam produzidos
com alta qualidade, dentro do tempo previsto e com orçamento previsível. Desta forma, na engenharia de
software, o processo RUP, dentro de uma empresa de desenvolvimento, provê uma abordagem para
assumir tarefas e responsabilidades. Referente ao Rational Unified Process (RUP), analise as sentenças a
seguir: I- O RUP, para que possa atingir o objetivo de aumentar sua produtividade, possui técnicas que
todos os integrantes da equipe de desenvolvimento de sistemas devem seguir. II- O RUP é derivado tanto
dos trabalhos referentes à UML como do Processo Unificado no desenvolvimento de sistemas. III- O RUP,
no desenvolvimento de sistemas, captura seis das melhores práticas de maneira cabível (satisfatória) para
uma grande faixa de projetos e instituições. IV- O RUP, somente nos projetos maiores, trata o
gerenciamento de riscos como essencial, enquanto nos projetos menores o coloca como opcional, onde é
suficiente fazer apenas elaboração da lista de riscos. V- O RUP representa uma geração anterior nos
processos genéricos, possuindo a inovação mais importante, que é a identificação clara que a implantação
do sistema é realizada no ambiente do usuário. Agora, assinale a alternativa CORRETA:
A) Somente a sentença I está correta.
B) As sentenças I, II, III e IV estão corretas.
C) As sentenças II, III e IV estão corretas.
D) As sentenças I, II, III e V estão corretas.

As estruturas na programação orientada a objetos possibilitam que analistas ou programadores


organizem os objetos de maneira que consigam visualizar melhor o domínio e a complexidade do
problema em questão. Existem dois tipos básicos de estrutura: generalização-especialização e todo-parte.
Acerca desses dois tipos de estrutura, analise as sentenças a seguir: I- A generalização é conhecida pelo
conceito de associar indivíduos com atributos em comum e, ao mesmo tempo, desprezar as diferenças. II-
A especialização se assemelha muito à estrutura todo-parte. III- A estrutura todo-parte é muito útil na
identificação dos objetos e dos seus componentes diante de um determinado problema em estudo. IV- A
estrutura todo-parte é composta por uma característica conhecida por cardinalidade, que é importante
para determinar o tipo de relacionamento. Assinale a alternativa CORRETA:
A) As sentenças I, III e IV estão corretas.
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 I e III estão corretas.

A notação UML utiliza de alguns mecanismos na construção de seus diagrama, com o intuito de
tratar informações adicionais que ainda não foram descritas. Sobre os mecanismos, assinale a alternativa
INCORRETA:
A) Notas Explicativas.
B) Etiquetas.
C) Estereótipos.
D) Notas comparativas.
Com base nas informações recebidas sobre o desenvolvimento de um sistema UML, analise as sentenças a seguir:

I- Análise de Requisitos.
II- Análise.
III- Design.
IV- Programação.
( ) Descreve que novas classes, atributos, métodos e funcionalidades serão adicionados a fim de
prover uma infraestrutura técnica necessária à interface do usuário e de periféricos, gerenciamento de
banco de dados, comunicação com outros sistemas, entre outros.
( ) É responsável pela coleta dos dados que são indispensáveis e necessários para que o usuário
do sistema possa solucionar seu problema e alcançar os objetivos desejados da organização.
( ) São definidas as primeiras abstrações (classes e objetos) e mecanismos que estarão presentes
no domínio do problema.
( ) As classes provenientes do design são convertidas para o código da linguagem orientada a
objetos escolhida.

Assinale a alternativa que apresenta a sequência CORRETA:

A) III - I - II - IV.
B) I - IV - II - III.
C) III - II - I - IV.
D) II - I - IV - III.

A Programação Orientada a Objetos foi criada para tentar aproximar o mundo real do mundo
virtual. Assim, a ideia fundamental é tentar simular o mundo real dentro do computador. Para isso, nada
mais natural do que utilizar Objetos. Assinale a alternativa CORRETA que apresenta a razão disso:
A) Objetos são caracteres simples.
B) Pessoas são consideradas objetos.
C) Objetos são baratos.
D) O mundo é feito de objetos.

Você também pode gostar