06__Diagrama de Classes Flashcards
Os diagramas de _____ representam o tipo de diagramas que se encontram com mais frequência na modelização de sistemas Orientada a Objetos:
a) atividade
b) use-case
c) classes
d) sequência
c)
O diagrama de classes é _____, uma vez que a estrutura por ela descrita é sempre válida, _____ do ponto do ciclo de vida do sistema:
a) estático, dependendo
b) estático, independentemente
c) dinâmico, dependendo
d) dinâmico, independentemente
b)
V/F
O diagrama de classes é considerado estático uma vez que a estrutura por ela descrita nem sempre é válida
Falso
É sempre válida
A modelização _____ indica as decisões sobre que abstrações estruturais fazem parte do sistema e quais estão fora das suas fronteiras:
a) de colaborações simples
b) do esquema lógico de Estrutura de Dados
c) do vocabulário de um sistema
c)
A modelização _____ permite a visualização do sistema como um todo constituído por classes e as suas relações:
a) do esquema lógico de Estrutura de Dados
b) de colaborações simples
c) do vocabulário de um sistema
b)
A modelização _____ permite desenhar a estrutura de dados para uma Base de Dados real ou Orientada a Objetos, de forma a guardar a informação:
a) de colaborações simples
b) do vocabulário de um sistema
c) do esquema lógico de Estrutura de Dados
c)
Quais os 4 tipos de relações no diagrama de classes?
Associação
Agregação e Composição
Generalização/Especialização
Dependência
V/F
Todos os elementos de uma classe são descritos através de um conjunto de propriedades (operações) e comportamentos (atributos)
Falso
Propriedades (atributos) e comportamentos (operações)
V/F
Um atributo é um comportamento de uma classe
Falso
É uma propriedade de uma classe
V/F
A representação das operações nas classes é obrigatória
Falso
É opcional
V/F
Uma classe é caraterizada, de modo geral, como um conjunto de objetos com diferentes estruturas e comportamentos
Falso
Conjunto de objetos que partilham a mesma estrutura e comportamentos
_____ é/são caraterísticas que definem o objeto, transpostas para um conjunto de atributos:
a) A entidade
b) As propriedades
c) O comportamento
b)
V/F
Os objetos de uma mesma classe são semelhantes, tendo um conjunto de valores iguais para os mesmos atributos
Falso
Cada objeto distingue-se dos outros objetos de uma mesma classe, por ter um conjunto de valores diferentes para os mesmos atributos
V/F
Na associação recursiva, tem-se uma classe que pode possuir uma associação consigo própria, significando que um objeto da classe se relaciona com um ou vários objetos da mesma classe
Verdadeiro
V/F
Na associação qualificada, um qualificador é um atributo especial que aumenta a multiplicidade de uma associação
Falso
Reduz
V/F
Na relação de composição, a multiplicidade do lado da agregação (todo) não ultrapassa 1, o que não pode acontecer com a agregação
Verdadeiro
V/F
Na generalização, o sistema é visto de cima para baixo e, na especialização, o sistema é visto de baixo para cima
Falso
Generalização: de baixo para cima
Especialização: de cima para baixo
Qual é o diagrama mais frequente na modelização de sistemas Orientados a Objetos?
Diagrama de Classes
Um diagrama de classes mostra um conjunto abstrações de modelização. São elas: classes, —, — e —
Interfaces, colaborações e relacionamentos
V/F
A estrutura de um diagrama de classes nem sempre é válida
Falso
É sempre válida, independemente do ponto de ciclo de vida do sistema. Daí ser um diagrama estático
Porque é que o diagrama de classes é um diagrama estático e qual é o seu principal objetivo?
Porque a sua estrutura é sempre válida, independentemente do ponto do ciclo de vida do sistema.
Ele representa a estrutura estática de um sistema, ou seja, os elementos de software (classes, interfaces, relacionamentos) e como eles estão organizados e interagem entre si.
O objetivo principal do diagrama é modelar as classes do sistema, incluindo os seus atributos e métodos, bem como os relacionamentos entre eles. Estas informações descrevem a estrutura do sistema num determinado momento, sem levar em consideração o comportamento dinâmico num tempo de execução.
Quais são as 3 formas onde é possível utilizar a modelização do diagrama de classes?
- Modelização do vocabulário de um sistema
- Modelização de colaborações simples
- Modelização do esquema logico de Estruturas de Dados
Qual é a diferença entre os 3 diferentes tipos de modelização no diagrama de classes?
- Modelização do vocabulário de um sistema = decisões sobre que abstrações estruturais fazem parte do sistema e quais estão fora das suas fronteiras
- Modelização de colaboração simples = visualização do sistema como um todo, constituído por classes e pelas suas relações
- Modelização do esquema lógico da Estrutura de Dados = desenhar a estrutura de dados para uma BDR ou OO, de forma a guardar a informação do sistema
Quais são as 4 abstrações de modelização num diagrama de classes?
- Classes de objetos
- Interfaces
- Colaborações
- Relações (associação, agregação, generalização/especialização, dependência)
Define uma classe
Uma classe é um conjunto de objetos que partilham a mesma estrutura/propriedade (atributos) e comportamento (operações).
Cada elemento de uma classe (objeto/instância) é diferente dos outros elementos da mesma classe.
Todos os elementos de uma classe são descritos através de um conjunto de propriedades (atributos) e comportamentos (operações)
V/F
Uma operação de uma classe corresponde a um serviço que pode ser requisitado a um objeto dessa classe
Verdadeiro
É opcional ou obrigatório a representação das operações nas classes?
Opcional
Uma classe é caraterizada como um conjunto de ___ que partilham a mesma estrutura e comportamento
Objetos
O que é um objeto de uma classe?
Um objeto/instância é uma instância de uma classe, caraterizado por um conjunto de propriedades, comportamentos e uma identidade que permite identificar um objeto em particular num conjunto de objetos semelhantes
Qual é a diferença entre associação ternária, associação unária/recursiva, associação exclusiva e associação qualificada?
- Associação ternária = objetos de +2 classes podem estar associados entre si. Esta associação associa objetos de 3 classes
- Associação recursiva = uma classe pode ter uma associação consigo própria, significando que um objeto da classe se relaciona com um ou + objetos da mesma classe
- Associação exclusiva = restrição em duas ou mais associações, ou seja, especifica que os objetos de uma classe podem participar, no máximo, com 1 das associações num dado momento. É representada por uma linha tracejada
- Associação qualificada = relaciona 2 clsses de objetos a um qualificador. Uma qualificador é um atributo especial que reduz a multiplicidade de uma associação
V/F
Numa associação qualificada, as associações só podem ser qualificadas do lado “muitos”, ou seja, 1..*
Verdadeiro
O que é a multiplicidade de uma associação no diagrama de classes?
Denota o nº de objetos de uma determinada classe que se podem associar a um único objeto de uma classe associada
Num diagrama de classes, qual é a diferença entre agregação e composição? Dá exemplos
- A agregação é utilizada para descrever classes complexas e representa uma relação do tipo parte-todo. Ex.: um curso agrega uma ou + disciplinas
- A composição é uma agregação com um significado mais forte, existindo dependência direta entre duas classes. A multiplicidade do lado do todo não ultrapassa 1. Ex.: uma encomenda é composta por itens. Não faz sentido haver encomenda sem itens e itens sem encomendas
Num diagrama de classes, qual é a diferença entre generalização e especialização? Dá exemplos
- Generalização é a relação entre uma classe e uma ou + variantes da classe, em que a superclasse tem atributos comuns e a subclasse acrescenta atributos específicos. Cada subclasse mantém as propriedades específicas da subclasse. Ex.: Livro, jornal e revista são generalizações de uma publicação
- Especialização = O mesmo que a generalização. Mas, enquanto a generalização é vista de baixo para cima, a especialização é vista de cima para baixo
V/F
Segundo a notação UML, a relação de agregação, quando utilizada num diagrama de classes, organiza as classes de acordo com as suas semelhanças e diferenças
Falso
A relação de generalização
V/F
No âmbito de um diagrama de classes em UML, uma classe associativa serve para adicionar informação à associação já existente
Verdadeiro
V/F
Em UML, uma relação do tipo Generalização/Especialização pode ser utilizada para descrever classes complexas como montagens de classes mais simples, numa relação do tipo “todo-parte”
Falso
Relação de agregação/composição
V/F
Se uma classe assegura a existência de uma propriedade importante, deve ser mantida
Verdadeiro
Se uma classe servir apenas para fornecer um valor, deverá ser transformada em —
Atributo (propriedade)
Todos os elementos de uma classe (objetos físicos/acontecimentos/eventos) são descritos através de um conjunto de — e de —
Propriedades (atributos) e comportamentos (operações)
Um objeto é uma — de uma classe, caraterizado por um conjunto de propriedades, comportamentos e —, que permite identificar um objeto em particular num conjunto de objetos semelhantes
Instância
Identidade
No diagrama de classes, dever-se-á evitar o uso de associações —
Ternárias
No diagrama de classes, que tipo de relação se deverá evitar o uso?
Associação ternária
V/F
As classes podem ser especializadas se tiverem atributos semelhantes
Falso, apenas se tiverem atributos distintos
Cada classe só pode ser — se tiver atributos distintos
Especializada