UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da...

39
UML Diagrama de Classes Diagrama de Classes elementos básicos elementos básicos

Transcript of UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da...

Page 1: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

UML

Diagrama de ClassesDiagrama de Classes

elementos básicoselementos básicos

Page 2: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Contexto

• Os diagramas de classes fazem parte do da visão estática da UML.

• Os elemento desta visão são conceitos significativos para a aplicação.

• A visão estática modela a estrutura do objeto, tanto seus dados quanto suas operações.

• Os elementos chaves nesta visão são os classificadores e suas associações.

• Os classificadores podem ser: atores, artefatos, classe, colaboração, componente, interface, nó, caso de uso.

Page 3: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Classe• Uma classe representa um conceito discreto.

• Uma classe é uma descrição de um conjunto de objetos que compartilham dos mesmos atributos, operações, relações e semântica.

• Uma classe implementa uma ou mais interfaces.

Page 4: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Diagrama de Classes• Diagrama de classe descreve os tipos de

objetos no sistema e os vários tipos de relacionamento que existem entre as diversas classes.

Page 5: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Diagrama de Classes

• Usa-se o diagrama de classes para modelar a visão estática do sistema.

• Um diagrama de classes possui normalmente:• classes.

• interfaces.

• colaborações.

• relação de dependência, generalização e associação.

Page 6: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Contexto

• É um diagrama central nas metodologias orientadas a objetos.

• É a representação de maior poder conceitual.

• É o diagrama que descreve as abstrações do domínio do problema.

Page 7: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Perspectivas de Representação das Classes

• Semelhante a de modelagem de dados.– Conceitual.

• Representa os conceitos genéricos do mundo.

– Especificação.• Representa os conceitos genéricos do software a ser

construído.

– Implementação.• Representa as característica operacionais do software

a ser construído.

Page 8: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Perspectivas ... (II)• As perspectivas apresentadas não fazem

parte de UML formal é apenas uma abordagem importante e normalmente negligenciada.

Page 9: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Nome e Representação de Classes

• Toda classe deve ter um nome que a distingue das outras classes.

• Representação

Aluno

Page 10: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Atributos da Classe

• Um atributo representa uma propriedade da classe que está sendo modelada.

• Os atributos representam os dados pertencentes nas instâncias de uma classe.

• Os atributos podem ser representados apenas pelo nome ou com o tipo associado.

Page 11: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Atributos da Classe (II)• Uma classe pode ter vários ou nenhum

atributo.

• Em um determinado momento um objeto de uma classe terá valores específicos para cada um de seus atributos.

Page 12: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Representação de classe com atributos

Alunos

nometelidpaimãe

OU

Alunos

Nome:stringtel:stringid:stringpai:stringmãe:string

Pode-se também representar osPode-se também representar os

valoresvalores defaultdefault

Page 13: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Operações

• São processos que a classe sabe realizar.

• É uma abstração de do que se pode fazer com um objeto.

• É compartilhada com todos os objetos da classe.

• Uma classe pode ter nenhuma ou várias operações.

Page 14: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Operações• Em geral, a chamada de uma operação pode

trazer mudanças nos dados do objeto ou em seu estado.

• A assinatura de uma operação especifica quais os parâmetros para a execução da operação e, quando for o caso, o tipo de retorno.

Page 15: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Representação de operações

• Pode-se representar as operações apenas com o seu nome.

• Pode-se representar as operações com sua assinatura (seus parâmetros e o tipo de retorno).

Alunos

incluir()alterar()

Page 16: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Responsabilidades• A responsabilidade é um contrato ou

obrigação da classe.

• Uma classe pode ter várias responsabilidade: uma e não mais que cinco.

Page 17: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Características básicas de um bom modelo de Classe

• Identifique claramente operações e associações.• Operação: confere, em geral, uma mudança de estado em um

determinado objeto.• Associação: relação estática entre dois conceitos.

• Operações: • normalmente encontradas nas descrições dos casos de uso.

• Associação: • normalmente encontradas a partir da completude do modelo, por

exemplo uma fita de videolocadora é alugada para um cliente; regras de negócio são um bom ponto de partida para a se encontrar associações.

Page 18: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Características básicas de um bom modelo de Classe

• Identificação de Chaves.• Não é recomendado colocar no modelo de classes

atributos que representam conceitos de chaves como em um banco relacional.

Page 19: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Características básicas de um bom modelo de Classe

• Relatórios:• Um relatório é apenas um forma de mostrar aquilo que

o sistema já possui.

• Os relatório não devem ser representados como classes no sistema.

• Cabe aos métodos das classes executar operações que geram o relatório especificado.

Page 20: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

UML

Classes conceitos avançadosClasses conceitos avançados

Page 21: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Visibilidade

• Os atributos e operações de uma classe podem ter restrições de acesso especificadas.

– + público: todos os classificadores podem usar/ter acesso.

– - privado: somente o próprio classificador poderá usar.

– #protegido: qualquer descendente do classificador poderá usar.

Page 22: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Classes abstratas

• Uma classe que contém uma operação abstrata é chamada de classe abstrata.

• Esse tipo de classe não pode criar instâncias visto que alguns de suas operações não podem ser implementadas.

– As classes abstratas devem possuir sub-classes, que implementem as respectivas operações.

Page 23: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Classes Abstratas (II)

Peça Xadrez

...

Movimento()

peão torre rei

Operação abstrataSão representadas em itálico

Page 24: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Interfaces

• Mais abstrata que a classe abstrata.

• Uma interface é uma classe abstrata que possui unicamente operações abstratas (nenhum método implementado) e nenhum atributo.

• Uma interface especifica algumas operações para providenciar um serviço de forma a cumprir uma responsabilidade.

Page 25: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Interfaces (II)

• Com interfaces é possível apenas se concentrar nos serviços oferecidos pelas classes.

• O uso de interface é uma forma elegante de isolar a especificação da implementação.

• Um interface especifica uma contrato sem levar em conta como este será implementado.

Page 26: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Interfaces (III)• Representação

Inome da interface

ou<<interface>>

Pilha

pop()push()vazia()

Page 27: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Classes de Associação • Uma classe de associação modela modelas

as propriedades associadas com uma associação.

• As propriedades decorrentes devem ser representadas por uma classe.

Page 28: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Classes de associação (II)

Aluno Matéria

* *

Desempenhonotafalta

Page 29: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Atividade de análise dos Casos de Uso

Rup Workflow for Analysis and Design Artifacts for Analyze Behavior

Page 30: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Análise do Caso de Uso

• Para cada caso de uso:• Crie uma realização deste caso de uso.• Acrescente descrição textual ao caso de uso.• Encontre classes de análise a aprtir do comportamento

do caso de uso.

• Para cada classe encontrada:• Defina as responsabilidade da classe.• Descreva os atributos e associações.

• Agrupe e refine as classes encontradas.

Page 31: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Classes de Análise

• Enquadram-se em três categorias:• Fronteira.

– Utilizada para modelar a interação entre o sistema e seus atores. Representa abstrações tais como janelas, impressoras, terminais etc.

• Controle.– Representa a coordenação, a seqüência e transação de outros

objetos.

• Entidade.– Utilizada para representar informações e dados persistentes.

Geralmente derivadas das classes de negócio.

Page 32: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Classes de Análise

Fonte: http://sparxsystems.com/resources/uml2_tutorial/uml2_sequencediagram.html

Page 33: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

UML

Diagrama de objetosDiagrama de objetos

Page 34: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Diagrama de objetos• Os diagramas de objetos mostram uma

fotografia dos objetos em ação.

• Os objetos são mostrados com os valores de seus atributos e suas respectivas ligações.

• São apropriados para a modelagem de estrutura de dados complexas.

Page 35: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Diagrama de objetos (II)• Em geral há vários objetos em execução em

um determinado momento.

• Um diagrama mostra apenas parte dessa complexidade.

• O diagrama não considera a evolução desses objetos com o tempo.

Page 36: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Representação de objetos

Márcio Márcio:Professor

:Professor

Álvaro:Aluno

:Curso

Page 37: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Exemplo (I)

c:Companhia

d1:Departamento d2:Departamento

Nome=“Vendas” Nome=“RH”

Page 38: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Exemplo (II)

Aluno Matéria**

Classes

a:Aluno m:Matéria**

matricula(aluno)

Objetos

Page 39: UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.

Dúvidas?

[email protected]