Este documento fornece um resumo da aula 5 sobre a linguagem UML. A aula introduz UML, discute suas vantagens, estrutura e diagramas principais. Os diagramas apresentados incluem classes, casos de uso, sequência e máquina de estados.
1. Engenharia de Software
Aula 5 – Linguagem UML - Introdução
Profa. Dra. Judith Pavón
Universidade Salvador – UNIFACS
2012
2. Objetivo da aula
O objetivo desta aula é apresentar uma
introdução à linguagem UML.
2
3. Conteúdo
O que é UML ?
Vantagens do uso da notação UML
Estrutura da UML
Apresentação dos Diagramas da UML
4. O que é UML ?
Década de 90, muitos métodos
disputavam o mercado
Principais métodos
. Booch (Grady Booch - Rational)
. OMT (Rumbaugh - GE)
. OOSE (Jacobson - Objectory)
5. O que é UML ?
Booch, OMT e OOSE
Individualmente possuíam Método
pontos fortes, mas com Unificado
vários pontos em comum BOOCH
Os três autores decidiram OMT
Unificar seus métodos OOSE
(Rational)
Versões 0.8 e 0.9
6. O que é UML ?
Booch, OMT e OOSE
Individualmente possuíam
pontos fortes, mas com UML
vários pontos em comum
Método
Unified
Os três autores decidiram Unificado
Modeling
unificar seus métodos
Language
Versão atual 2.3
Versão 1.0
7. O que é UML ?
Metodologia :
. LINGUAGEM GRÁFICA UML
+ . MÉTODO
UML diz o que pode ser feito mas não diz como deve ser feito.
É independente de processo.
8. O que é UML ?
UML é uma linguagem de modelagem, que
permite representar através de uma notação
gráfica o projeto de um sistema.
UML (Linguagem de Modelagem Unificada) é
uma linguagem gráfica para visualização,
especificação, construção e documentação
de projetos de software.
UML Resources Page
http://www.omg.org/uml/
http://www.omg.org/technology/uml/index.htm
9. Vantagens do uso da Notação UML
• UML aborda o caráter estático e dinâmico do
sistema.
• Surgiu a partir das três metodologias de
modelagem orientado a objetos bem sucedidas.
• Linguagem de modelagem mais utilizada no
mercado de trabalho.
• UML está destinada a ser a linguagem de
modelagem padrão para sistemas orientados a
objetos.
• Abrange todas as etapas do processo de
desenvolvimento de um software.
10. Estrutura da UML
Elementos Básicos do Modelo
. Estruturais (classes, interfaces, colaborações,
casos de uso, classes ativas, componentes, nós)
. Comportamentais (interação, estado)
. Agrupamento (pacotes)
. Anotacionais (notas)
Relacionamentos
. dependência, associação, generalização,
realização
11. Estrutura da UML
Diagramas
. ESTÁTICOS
. Diagrama de Classes
. Diagrama de Objetos
. Diagrama de Implementação
- Diagrama de Componentes
- Diagrama de Implantação
11
12. Estrutura da UML
Diagramas
. DINÂMICOS
. Diagrama de Casos de Uso
. Diagramas de Interação
- Diagrama de Seqüência
- Diagrama de Comunicação
. Diagrama de Atividade
. Máquina de Estados
13. Conhecendo os Diagramas da
UML
Diagrama de Casos de Uso
. Enfoque: Análise de Requisitos
. Caso de Uso representa um
seqüência de ações executadas com
o objetivo de atingir um propósito.
. Interage com atores representam papéis.
14. Conhecendo os Diagramas da
UML
Diagrama de Casos de Uso
Representação Gráfica
E fe tu a r
Saque
C o r r e n t is t a
15. Conhecendo os Diagramas da
UML
Diagrama de Casos de Uso
Descrição de Caso de Uso
. Cenário Principal
fluxo perfeito, no qual nada ocorre de errado
. Cenários Alternativos
alternativas do fluxo ; exceções
16. Conhecendo os Diagramas da
UML
Exemplo : Caso de Uso Efetuar Saque
. Cenário Principal
Ator: Correntista
1. O sistema faz a leitura do cartão magnético.
2. O correntista informa sua senha.
3. O sistema valida a senha, verificando se é a mesma
senha que está associada ao correntista.
4. O correntista informa o valor desejado de saque.
5. O sistema verifica se o valor solicitado é possível
dentro do saldo do correntista.
17. Conhecendo os Diagramas da
UML
continuação do Caso de Uso
6. O sistema bloqueia o valor de saque na C/C.
7. O sistema inicia a contagem de cédulas.
8. O sistema debita o valor de saque da conta
corrente.
9. O sistema libera o dinheiro para o correntista.
18. Conhecendo os Diagramas da
UML
Cenário Perfeito:
É impossível tudo
ocorrer sem
problemas !
Tratar estes problemas
19. Conhecendo os Diagramas da
UML
. exceção
... 3. O sistema valida a senha,
verificando se é a mesma senha que está
associada ao correntista ...
Senha Inválida
3a. Se a senha não conferir, solicitar nova senha,
por no máximo três vezes. Após a última chance,
persistindo o problema, bloquear conta corrente
(estende) e encerrar o caso de uso.
20. Conhecendo os Diagramas da
UML
Diagrama de Casos de Uso
Relacionamentos entre casos de uso
C a d a s tra r
«estende»
D e p e n d e n te s
C a d a s tra r
F u n c io n á r io
«inclui»
V a lid a r
C PF
21. Conhecendo os Diagramas da
UML
Diagrama de Casos de Uso
Ligação com outros diagramas
Casos de Uso
Diagrama de Diagrama de
Classes Atividades
Diagramas de
Interação
22. Conhecendo os Diagramas da
UML
Diagrama de Classes
. Abrange as Fases de Análise e Projeto
. Modelagem de classes e seus relacionamentos.
23. Conhecendo os Diagramas da UML
Diagrama de Classes
. Correntista . Conta Corrente . Lançamento
Analisando os casos de uso,
podemos identificar
classes e atributos.
24. Conhecendo os Diagramas da UML
Diagrama de Classes
. Correntista
Correntista . Conta Corrente
ContaCorrente . Lançamento
Lancamento
nome numero data
cpf agencia tipo
endereco dataAbertura valor
dataNascimento senha numDocumento
... ... ...
Primeira abstração: Atributos
25. Conhecendo os Diagramas da UML
Diagrama de Classes
. Correntista
Correntista . Conta Corrente
ContaCorrente . Lançamento
Lancamento
nome numero data
cpf agencia tipo
endereco dataAbertura valor
dataNascimento senhaevolui:
Modelagem Operações
numDocumento
... ... ...
abrirConta() lancar()
cadastrar() bloquearConta() listarLancamen
... validarSenha(senha) tos(periodo)
... ...
26. Conhecendo os Diagramas da UML
Diagrama de Classes
Correntista ContaCorrente Lancamento
nome numero data
cpf agencia tipo
endereco dataAbertura valor
dataNascimento senha
As classes não vivem numDocumento
sozinhas...
... ... ...
precisamos estabelecer
abrirConta() lancar()
cadastrar() seus relacionamentos !!!
bloquearConta() listarLancamen
... validarSenha(senha) tos(periodo)
... ...
27. Conhecendo os Diagramas da UML
Diagrama de Classes
Correntista ContaCorrente
Relacionamento
de Associação
Lancamento
Relacionamento
de Agregação
28. Conhecendo os Diagramas da UML
Diagrama de Classes
Correntista ContaCorrente
Não precisamos
Relacionamento todos os elementos,
trabalhar com
de Associação do nível de abstração
dependendo
Lancamento
Relacionamento
de Agregação
29. Conhecendo os Diagramas da
UML
Diagrama de Classes
. Relacionamento de Generalização/Especialização
Pessoa Medico:
nome nome
dataNascimento dataNascimento
crm
especialidade
Medico
crm
especialidade
30. Conhecendo os Diagramas da
UML
Diagrama de Classes
Ligação com outros diagramas
Diagrama de Classes
Diagrama de
Diagrama de
Gráfico de
Componentes
Estados
Diagramas de Diagramas de
Objetos Interação
31. Conhecendo os Diagramas da
UML
Diagrama de Seqüência
. É um tipo de Diagrama de Interação
. Objetivo:
Representação dos cenários de um caso de uso
. Mostra a troca de mensagens entre objetos,
dentro de uma seqüência temporal
33. Conhecendo os Diagramas da
UML
Diagrama de Comunicação
. É um tipo de Diagrama de Interação
. Objetivo:
Enfatiza a colaboração entre objetos sem
identificar a seqüência temporal
35. Conhecendo os Diagramas da
UML
Diagrama de Atividades
. Objetivo:
Focaliza um fluxo de atividades que ocorrem
para um determinado processamento de alguns
elementos do modelo, como um caso de uso ou
uma operação.
37. Conhecendo os Diagramas da
UML
Máquina de Estados
. Objetivo:
Descreve o comportamento de objetos por meio
de seqüências de estados e ações que ocorrem
durante a sua vida.
38. Conhecendo os Diagramas da
UML
Máquina de Estados
P e d id o
e m itid o
A g u a rd a n d o P a g a m e n to
P a g a m e n to E fe tu a d o
[P r o d u to in e x is te n te
n o e s to q u e ]
A g u a r d a n d o R e p o s iç ã o d e
V e r ific a n d o E s to q u e
E s to q u e
E s to q u e re p o s to
P ro d u to s e p a ra d o
P ro d u to
r e c e b id o
p e lo c lie n te
A g u a rd a n d o E n tre g a
39. Conhecendo os Diagramas da
UML
Diagrama de Componentes
. É um tipo de Diagrama de Implementação
. Objetivo:
Mostra a estrutura de componentes, incluindo os
classificadores que eles especificam e os artefatos
que eles implementam
40. Conhecendo os Diagramas da
UML
Diagrama de Componentes
P e d id o s . c la s s
C lie n t e . ja v a P r o d u t o . ja v a P e d id o . ja v a
41. Conhecendo os Diagramas da
UML
Diagrama de Implantação
. Objetivo:
Mostra a configuração de elementos de processa-
mento em tempo de execução e os componentes
de software, processos e objetos que neles são
executados
43. Versão 2.0
Diagramas que mudaram de nome:
Diagrama de Estado -> Máquina de Estado
Diagrama de Colaboração -> Diagrama de Comunicação
Diagramas novos (na versão 2.0)
Diagrama de interação Geral
Diagrama de Estrutura composta
Diagrama de tempo
Ferramenta que pode ser útil (Free)
http://www.visual-paradigm.com/
Vale a pena conferir.
43