O documento descreve o que é um diagrama de classes no contexto de engenharia de software. Ele explica que um diagrama de classes lista os conceitos-chave de um domínio e as relações entre eles, definindo assim a estrutura de um sistema. O documento também fornece exemplos de como criar um diagrama de classes para automatizar um consultório odontológico.
2. DEFINIÇÃO DE OBJETOS E CLASSES
• O diagrama de classes lista todos os conceitos do domínio que
serão implementados no sistema e as relações entre os conceitos.
• Ele é muito importante pois define a estrutura do sistema a
desenvolver.
• O diagrama de classes não surge do nada ele é conseqüência do
prévio levantamento de requisitos, definição de casos de usos e
classes.
2
3. DEFINIÇÃO DE OBJETOS E CLASSES
• Como exemplo vamos supor que você tivesse que desenvolver um
sistema para automatizar um consultório dentário. As etapas
básicas envolvidas seriam:
• Levantamento e análise de requisitos do sistema a ser desenvolvido.
Entrevista com o dentista(s) e com as pessoas que trabalham no
consultório.
• Definição dos objetos do sistema: paciente, agenda, dentista, serviço,
contrato, consulta, pagamento, etc..
3
4. DEFINIÇÃO DE OBJETOS E CLASSES
• Definição dos atores do sistema : paciente, dentista , secretária .
• Definição e detalhamento dos casos de uso: marcar consulta ,
confirmar consulta , cadastrar paciente , cadastrar serviços , etc.
• Definição das classes : paciente , dentista , exame , agenda ,
serviço.
• Definir os atributos e métodos das classes.
4
5. DIAGRAMA DE CLASSES
• Objetivo
• Descrever os vários tipos de objetos no sistema e o
relacionamento entre eles.
• Perspectivas
• Um diagrama de classes pode oferecer três perspectivas, cada
uma para um tipo de observador diferente. São elas:
• Conceitual (exemplo)
• Representa os conceitos do domínio em estudo.
• Perspectiva destinada ao cliente.
5
7. DIAGRAMA DE CLASSES
• Especificação (exemplo)
• Tem foco nas principais interfaces da arquitetura, nos
principais métodos, e não como eles irão ser
implementados.
• Perspectiva destinada as pessoas que não precisam
saber detalhes de desenvolvimento, tais como
gerentes de projeto.
• Implementação - a mais utilizada de todas (exemplo)
• Aborda vários detalhes de implementação, tais como
navegabilidade, tipo dos atributos, etc.
• Perspectiva destinada ao time de desenvolvimento.
7
10. DIAGRAMA DE CLASSES
• Entidades
•
Classe
•
•
Representação gráfica:
Classe Concreta Uma classe é representada na forma de um retângulo, contendo duas linhas que separam
3 partes. A primeira contém no nome da classe, a segunda os atributos da classe e a última os métodos da
mesma.
10
11. DIAGRAMA DE CLASSES
• Classe Abstrata A representação de uma classe abstrata em UML é
quase igual à representação de uma classe concreta, a única diferença é
o estilo da fonte do nome da classe, que, neste caso, está em itálico.
11
12. DIAGRAMA DE CLASSES
• Interface
• Representação Gráfica
Representação Icon
Pessoa
getNome()
Representação Label
12
13. DIAGRAMA DE CLASSES
• Perspectivas:
• Conceitual
• Apenas classes são utilizadas. Neste tipo de perspectiva, uma classe
é interpretada como um conceito. Apenas atributos são utilizados.
• Especificação
• Tanto classes como interfaces são utilizados neste tipo de
perspectiva. O foco consiste em mostrar as principais interfaces e
classes juntamente com seus métodos.
• Não é necessário mostrar todos os métodos, pois o objetivo deste
diagrama nesta perspectiva é prover uma maior entendimento da
arquitetura do software a nível de interfaces.
13
14. DIAGRAMA DE CLASSES
• Implementação
• Nesta perspectiva, vários detalhes de implementação podem ser
abordados, tais como:
• visibilidade de atributos e métodos;
• parâmetros de cada método, inclusive o tipo de cada um;
• tipos dos atributos e dos valores de retorno de cada método.
14
15. DIAGRAMA DE CLASSES
• Relacionamentos
• Papel
• Descreve o relacionamento.
• Multiplicidade (utilizado em todas as perspectivas de forma
uniforme)
• Notações possíveis
15
16. BIBLIOGRAFIA
Melo, A. C., Desenvolvendo Aplicações com UML 2.2 – Do
conceitual à implementação, 3ª Edição – Brasport, 2010.
Imaster
http://imasters.com.br/artigo/3811/uml/casos_de_uso_
cenarios/
16