Diagrama de Classes
Diagrama de Classes
Diagramas de Classe mostram as diferentes classes que fazem
um sistema e como elas se relacionam.
Os Diagramas de Classe são chamados diagramas “estáticos”
porque mostram as classes, com seus métodos e atributos bem
como os relacionamentos estáticos entre elas:
•quais classes “conhecem” quais classes ou
•quais classes “são parte” de outras classes,
•mas não mostram a troca de mensagens entre elas.
Diagrama de Classes
Sendo uma linguagem de descrição, a UML permite diferentes
níveis de abstração aos diagramas, dependendo da etapa do
desenvolvimento do sistema em que se encontram.
• diagramas de classe podem exibir nas fases iniciais da análise
apenas o nome das classes
• em uma fase seguinte os atributos e operações
• em uma fase avançada do projeto pode exibir os tipos dos
atributos, a visibilidade, a multiplicidade das relações e diversas
restrições.
Diagrama de Classes
A UML utiliza uma notação própria para construção de diagramas.
Para representar uma Classe a notação é :
A classe do objeto é representada por
um retângulo subdividido em três
partes:
1. Nome da Classe
2. Atributos da Classe
3. Operações da Classe
Diagrama de Classes
Nome da Classe
Nome_da_classe
Exemplo
Conta
ContaSaque
Primeira letra em maiúsculo
Diagrama de Classes
• Atributos podem ser identificados apenas com nomes
• Atributos podem ter seus tipos (ou classes) especificados e
valores padrão definidos
Diagrama de Classes
Na UML, atributos são mostrados com pelo menos seu nome, e
podem
também
mostrar
seu
tipo,
valor
inicial
e
outras
propriedades. Atributos podem também ser exibidos com sua
visibilidade:
+ indica atributos públicos
# indica atributos protegidos
- indica atributos privados
Diagrama de Classes
•Assim
como
para
os
atributos,
pode-se
especificar
uma
operação apenas com seu nome
• Pode-se também especificar a assinatura da operação: seus
parâmetros com os tipos, e o tipo de retorno
Diagrama de Classes
• Operações modela o comportamento das classes
• Serviços que os objetos oferecem a outros objetos
Diagrama de Classes
Levantamento das Classes
•Em um sistema orientado a objetos, os componentes estruturais
do sistema são as classes.
•Não
existe
um
algoritmo
ou
técnica
precisa
para
o
estabelecimento de classes.
Existem três técnicas básicas para enfrentar a dificuldade de
definição de classes: (i) definir as classes por partes, (ii) proceder
por refinamentos e (iii) utilizar estereótipos.
Diagrama de Classes
Exemplo 1 de Levantamento das Classes
Será considerado o sistema de controle acadêmico.
Diagrama de Classes
Exemplo 1 de Levantamento das Classes
Será considerado o sistema de controle acadêmico.
Caso de Uso: Cadastrar Aluno
Chefe da Secretária, Secretária,
alguns professores e estagiários
Sistema de Gerenciamento
de Banco de Dados
Diagrama de Classes
Comunicação com dois atores: Secretária e SGBD
Podemos imaginar 2 classes do tipo fronteira para implementar o
interfaceamento entre os dois atores: CInterfaceSecretaria e
CIntefaceSGBD.
Diagrama de Classes
Classes do Tipo Fronteira: identifica classes cujo papel é
realizar o interfaceamento com entidades externas (atores).
Este
tipo
de
classe
contém
o
protocolo
necessário
para
comunicação com atores como impressora, monitor, teclado,
disco, porta serial, modem, etc.
Diagrama de Classes
Para descrever o processo do caso de uso e comandar as demais
classes
será
definida
uma
CControleCadastrarAluno.
classe
de
controle
denominada
Diagrama de Classes
Classes do Tipo Controle : identifica classes cujo papel ü
controlar a execução de
processos. Estas classes contém,
normalmente, o fluxo de execução de todo ou de parte de casos
de
uso
e
comandam
procedimentos.
outras
classes
na
execução
de
Diagrama de Classes
Como para este caso de uso existem três subprocessos (inclusão,
alteração e exclusão) poderiam ser criadas três classes de
controle auxiliares, uma para cada subprocesso, que serão:
CControleInclusaoCadAluno,
CControleExclusaoCadAluno.
CControleAlteracaoCadAluno
e
Diagrama de Classes
Analisando-se os dados manipulados pelo caso de uso, percebese a existência de apenas um grupo de dados referentes às
informações do aluno que esta sendo incluído, alterado ou
excluído. Desta forma, apenas uma classe do tipo entidade será
definida,denominada CAluno.
Diagrama de Classes
Classes do Tipo Entidade : identifica classes cujo papel
principal é armazenar dados que juntos possuem uma identidade.
Este tipo de classe frequêntemente representa entidades do
mundo real como aluno, professor, disciplina, etc.
Diagrama de Classes
Exemplo 2 de Levantamento das Classes
Será considerado o sistema de controle acadêmico.
Caso de Uso: Emitir Diário de Classe
Diagrama de Classes
Novamente a comunicação com dois atores: Secretária e SGBD
2 classes do tipo fronteira para implementar o interfaceamento
entre os dois atores: CInterfaceSecretaria e CIntefaceSGBD.
Diagrama de Classes
Podemos:
•utilizar as mesmas classes de interface para os dois casos de
uso,ou
•definir novas classes para interfaceamento com os dois atores
em cada caso de uso.
Sugestão
Como sugestão para este tipo de situação, sugere-se começar
com uma solução unificada e na sequência, a partir de um
conhecimento melhor dos papéis das classes, estudar a
possibilidade
de
especializadas.
decompor
estas
classes
em
classes
mais
Diagrama de Classes
Podemos:
•utilizar as mesmas classes de interface para os dois casos de
uso,ou
•definir novas classes para interfaceamento com os dois atores
em cada caso de uso.
Sugestão
Como sugestão para este tipo de situação, sugere-se começar
com uma solução unificada e na sequência, a partir de um
conhecimento melhor dos papéis das classes, estudar a
possibilidade
de
especializadas.
decompor
estas
classes
em
classes
mais
Diagrama de Classes
Para descrever o processo do caso de uso e comandar as demais
classes
será
definida
CControleEmitirDiario.
uma
classe
Não
se
de
controle
observa,
neste
denominada
momento,
subprocessos neste caso de uso. Por consequência não serão
definidas classes de controle auxiliares.
Diagrama de Classes
Com relação às classes do tipo entidade, deve-se considerar quais
dados compõem o documento a ser impresso. Um diário de classe
normalmente contém o código e nome da disciplina, coódigo e
nome do professor, carga horária, e a lista de alunos com o nome
e número de registro. Várias possibilidades se apresentam para
representação em memória destes dados.
Diagrama de Classes
Uma primeira alternativa para representação dos dados do caso
de uso Emitir Diário de Classe seria a criação de uma única classe
contendo todos os dados necessários para a composição do
documento
impresso.
CDiarioClasse.
Esta
classe
poderia
se
chamar
Diagrama de Classes
Outra possibilidade seria extrair desta classe os dados sobre
disciplina, professor e alunos, e colocá-los em três outras classes
Download

Análise e projeto UML -04