resumo diagramas de classes

4

Click here to load reader

Upload: marco-coelho

Post on 19-Jun-2015

6.818 views

Category:

Education


1 download

TRANSCRIPT

Page 1: Resumo diagramas de classes

Diagramas de Classes • Uma das técnicas mais utilizadas no desenvolvimento orientado aos objetos; • Descrição formal da estrutura de objetos de um sistema; • Para cada objeto, descreve a sua identidade, os seus relacionamentos com os outros objetos, os seus atributos e as suas operações. Resultam de um processo de abstração através do qual se identificam os objetos (entidades e conceitos) relevantes no contexto que se pretende modelar e se procuram descrever características comuns em termos de propriedades (atributos) e de comportamentos (operações). Diagramas de classes descrevem o modelo geral de informação de um sistema. Classes descrevem objetos com atributos e operações comuns. Servem dois propósitos:

1. Permitir compreender o mundo real, naquilo que é importante para o SI; 2. Fornecer uma base prática para implementação em computador.

Utilizam os seguintes elementos abstratos de modelação: • Classes de objetos; • Relações de Associação e Generalização; • Multiplicidade.

A perspetiva estática fornecida pelo diagrama de classes tem como objetivo suportar os requisitos funcionais do sistema. O diagrama de classes é utilizado no seguinte conjunto de formas:

• Modelar o vocabulário do sistema – Envolve o decidir sobre que abstrações estruturais fazem parte do sistema em estudo;

• Modelar colaboração simples – Visualizar o SI como um todo, constituído por classes e as suas relações;

• Modelar o esquema lógico de uma BD – Desenhar a estrutura de dados para uma BD relacional ou orientada aos objetos. Objeto – Conceito existente em modelação (mundo real), relevantes para serem incorporados no modelo de informação. Caracterizados por um conjunto de propriedades, um comportamento e uma identidade. Propriedades do objeto – São as características que definem o objeto, transpostas para um conjunto de atributos, cujos valores estabelecem o estado do objeto. Comportamento – É definido como as operações que o objeto pode efetuar. Identidade – Permite identificar um objeto em particular como único num conjunto de objetos semelhantes. Classe - Representa uma abstração sobre um conjunto de objetos que partilham a mesma estrutura e comportamento. Um objeto é um caso particular de uma classe, também referido como uma instância da classe. Atributo – Característica que os objetos possuem e que é representada por um valor de dados. Os objetos apenas comunicam entre si por mensagens, o que na prática resulta na invocação de operações. As operações são a representação lógica do comportamento de um objeto, consistindo em ações efetuadas por um objeto ou sobre um objeto. Os objetos apenas comunicam entre si por mensagens, o que na prática resulta na invocação de operações. As operações são a representação lógica do comportamento de um objeto, consistindo em ações efetuadas por um objeto ou sobre um objeto. Para cada atributo pode ser identificado o seu tipo de dados, que classifica a informação que o atributo irá conter. De uma forma genérica:

• Integer – Representa um número inteiro; • Long – Representa um número inteiro de maior dimensão; • Double – Para números reais; • String - Representa texto; • Date – Para datas;

Page 2: Resumo diagramas de classes

• Boolean – Valor lógico, Verdadeiro ou Falso. No diagrama de classes as associações representam as relações entre os objetos. As associações são caracterizadas por possuir um nome. Uma classe pode possuir uma associação consigo própria, significando neste caso que um objeto da classe se relaciona com um ou mais objetos da mesma classe. As associações são também caracterizadas por possuir uma multiplicidade: • 0..1 – Opcional; • 1..1 – Obrigatório existir um objeto, também representado utilizando apenas o número 1; • 1..10 – Um valor entre o intervalo estabelecido, neste caso de 1 a 10; • 0..* - Zero ou infinitos objetos da classe, também pode ser representado por *; • 1..* – Um ou infinitos objetos da classe. É possível efetuar várias combinações de multiplicidade numa associação. A relação “um para muitos” entre a classe 1 e a classe 2 significa que um objeto da classe 1 pode estar associado ou não (opcional) a muitos objetos da classe 2. A identificação das classes não é um processo direto. São necessárias diversas iterações e refinamentos até identificar corretamente todas as classes. Uma regra simples é de iniciar o processo de identificação sublinhando, na descrição dos uses cases, os substantivos. Substantivos: Dá-se o nome de substantivo a todas as palavras que nomeiam seres, lugares, objetos, (…). Toda a palavra que designa ser, coisa ou substância Regra prática• Normalmente, na descrição dos UC as classes e/ou objetos são identificados através de substantivos;

• Os nomes das classes são sempre no singular; • As classes que estão fora de âmbito do sistema (domínio da aplicação, fronteira do

sistema), não devem ser representadas. Diagramas de Classes: • Representar o sistema – Não é necessário representar o próprio sistema;

• Classes semelhantes – Podem existir classes que são sinónimos. Se houver dúvidas, estas podem ser esclarecidas ao efetuar a descrição das classes;

• Nível de detalhe – Eliminar classes onde não é possível efetuar uma clara descrição ou que são muito específicas, quase como um objeto.

• Identificação de atributos - Alguns atributos não são explicitamente referidos nas descrições, mas surgem do conhecimento do domínio do problema. Por exemplo, morada de um cliente. O levantamento destes atributos é muito importante. • Identificação de associações e operações – Podem ser identificadas com base nas relações lógicas entre as classes. Também podem ser identificadas na descrição dos UC através dos verbos, como por exemplo, “o cliente efetua encomendas”. Só é possível compreender na totalidade as associações através de uma análise das interações entre os objetos das classes. • Generalização – Caso especial do diagrama de classes. Demonstra a noção de “superclasse” e “subclasse” na perspetiva de uma relação “pai e filho”. • Herança – O conceito de herança está presente, pois as subclasses, “filhos”, herdam, da superclasse “pai”, a estrutura em termos de atributos e operações. • Agregação - Demonstra o facto que um todo é composto por partes. Por exemplo, podemos mostrar que um restaurante possui um conjunto de mesas. • Composição – É uma agregação com um significado mais forte, existindo uma dependência direta entre as duas classes. Se a parte deixar de existir o todo também deixa de existir.

Page 3: Resumo diagramas de classes

Revisão 1. Qual o objetivo de um diagrama de classes? Descrever o modelo geral de informação de um sistema. Resultam de um processo de abstração através do qual se identificam os objetos (entidades e conceitos) relevantes no contexto que se pretende modelar e se procuram descrever características comuns em termos de propriedades (atributos) e de comportamento (operações). 2. O que significa uma classe? Representa uma abstração sobre um conjunto de objetos que partilham a mesma estrutura e comportamento. Um objeto é um caso particular de uma classe, também referido como uma instância da classe. 3. Qual a notação para uma classe? Retângulo dividido em três. Nome, atributo e operações. 4. O que é um objeto? Conceito existente em modelação (mundo real), relevantes para serem incorporados no modelo de informação. Caracterizados por um conjunto de Propriedades, um comportamento e uma identidade. 5. Defina os conceitos de atributo e operações de uma classe? Atributo – Característica que os objetos possuem e que é representada por um valor de dados. Operações - São a representação lógica do comportamento de um objeto, consistindo em ações efetuadas por ou sobre um objeto. Diagramas de Estados Os diagramas de Estados são usados para descrever o comportamento dos objetos. Um Estado representa uma situação estável de um objeto que se prolonga durante um intervalo de tempo, durante o qual um objeto não sofre estímulos nem os atributos sofrem alteração de valor. Deve criar-se um diagrama de estados somente para cada classe de objeto que tenha um comportamento dinâmico, ou comportamento dinâmico relevante. Por exemplo, objetos de controlo ou de interface.

Page 4: Resumo diagramas de classes

Diagrama de Estados é semelhante ao diagrama de atividade. A principal diferença consiste no facto de o diagrama de atividades se centrar nos processos. Diagrama de atividades – Centrado nos processos; Diagrama de estados – Centrado nos objetos. Estado – É representado por retângulo de cantos arredondados com um identificador e um “compartimento” para descrever as operações executadas nesse estado. As operações associadas aos estados designam se Atividades. Existe uma relação muito próxima entre atividades e estados. Num SI, uma atividade encontra-se associada à execução de uma operação de uma classe/objeto. A realização de atividades em paralelo tem impacto no diagrama de estados, sendo necessário refletir que o facto de o objeto poder estar em estados alternativos. Conclusão: 1. Qual a finalidade de um diagrama de estado? Descrever o comportamento de um objeto. Semelhante ao diagrama de atividades. – Diagrama de estados centrado no objeto; – Diagrama de atividades centrado no processo de negócio. 2. O que é um estado? Representa uma situação estável de um objeto que se prolonga durante um intervalo de tempo, durante o qual não sofre estímulos externos nem os atributos sofrem qualquer alteração de valor. 3. Quantos diagramas de estado são necessários especificar num modelo de um SI? Deve-se criar um diagrama de estados somente para cada classe de objeto que tenha um comportamento dinâmico relevante. 4. Quais os elementos de modelação que constam de um diagrama de estado? – Estado inicial e final; – Estados intermédios; – Transição entre estados. 5. Que símbolo utiliza para representar graficamente um estado? É representado por um retângulo de cantos arredondados com um identificador e um compartimento para descrever as operações que são executadas nesse estado.