aula5 linguagem uml-introducao
TRANSCRIPT
![Page 1: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/1.jpg)
Engenharia de Software
Aula 5 – Linguagem UML - IntroduçãoProfa. Dra. Judith Pavón
Universidade Salvador – UNIFACS2012
![Page 2: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/2.jpg)
Objetivo da aula
2
O objetivo desta aula é apresentar uma introdução à linguagem UML.
![Page 3: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/3.jpg)
Conteúdo
O que é UML ? Vantagens do uso da notação UML Estrutura da UML Apresentação dos Diagramas da UML
![Page 4: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/4.jpg)
O que é UML ? Década de 90, muitos métodos
disputavam o mercado
Principais métodos
. Booch (Grady Booch - Rational). Booch (Grady Booch - Rational)
. OMT (Rumbaugh - GE). OMT (Rumbaugh - GE)
. OOSE (Jacobson - Objectory). OOSE (Jacobson - Objectory)
![Page 5: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/5.jpg)
O que é UML ?
Individualmente possuíam Individualmente possuíam pontos fortes, mas com pontos fortes, mas com vários pontos em comumvários pontos em comum BOOCHBOOCH
OMTOMT
OOSEOOSE
MétodoMétodo
UnificadoUnificado
Versões 0.8 e 0.9Versões 0.8 e 0.9
Booch, OMT e OOSE
Os três autores decidiramUnificar seus métodos
(Rational)
![Page 6: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/6.jpg)
MétodoMétodo
UnificadoUnificado
O que é UML ?
Individualmente possuíam Individualmente possuíam pontos fortes, mas com pontos fortes, mas com vários pontos em comumvários pontos em comum
Os três autores decidiram unificar seus métodos
UMLUML
UnifiedUnified
ModelingModeling
LanguageLanguage
Versão 1.0Versão 1.0VVersão atual 2.3
Booch, OMT e OOSE
![Page 7: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/7.jpg)
O que é UML ? Metodologia :
. LINGUAGEM GRÁFICA. LINGUAGEM GRÁFICA
. MÉTODO. MÉTODO++UMLUML
UML diz o que pode ser feito mas não diz como deve ser feito.É independente de processo.
![Page 8: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/8.jpg)
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
![Page 9: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/9.jpg)
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.
![Page 10: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/10.jpg)
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)
. . dependência, associação, generalização, realização
Relacionamentos
![Page 11: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/11.jpg)
11
Estrutura da UML Diagramas
. ESTÁTICOS. Diagrama de Classes. Diagrama de Objetos
. Diagrama de Implementação
- Diagrama de Componentes - Diagrama de Implantação
![Page 12: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/12.jpg)
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
![Page 13: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/13.jpg)
Conhecendo os Diagramas da UML Diagrama de Casos de Uso
. Enfoque: Análise de Requisitos. 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.
![Page 14: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/14.jpg)
Conhecendo os Diagramas da UML Diagrama de Casos de Uso
Representação GráficaRepresentação Gráfica
C o r r e n t i s t a
E f e t u a rS a q u e
![Page 15: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/15.jpg)
Conhecendo os Diagramas da UML Diagrama de Casos de Uso
Descrição de Caso de UsoDescrição de Caso de Uso
. Cenário Principal fluxo perfeito, no qual nada ocorre de errado
. Cenários Alternativos alternativas do fluxo ; exceções
![Page 16: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/16.jpg)
Conhecendo os Diagramas da UML
Exemplo : Exemplo : Caso de UsoCaso de Uso Efetuar Saque Efetuar Saque. Cenário Principal Ator: Correntista1. 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.
![Page 17: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/17.jpg)
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.
![Page 18: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/18.jpg)
Cenário Perfeito:É impossível tudo
ocorrer sem problemas !
Conhecendo os Diagramas da UML
Tratar estes problemas
![Page 19: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/19.jpg)
Conhecendo os Diagramas da UML
. exceção
Senha Inválida
... 3. O sistema valida a senha, verificando se é a mesma senha que está associada ao correntista ...
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.
![Page 20: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/20.jpg)
Conhecendo os Diagramas da UML Diagrama de Casos de Uso
Relacionamentos entre casos de usoRelacionamentos entre casos de uso
«estende»C a d a s t r a r
F u n c i o n á r i o
C a d a s t r a rD e p e n d e n t e s
V a l i d a rC P F
«inclui»
![Page 21: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/21.jpg)
Conhecendo os Diagramas da UML Diagrama de Casos de Uso
Ligação com outros diagramas
Casos de Uso
Diagrama de Classes
Diagramas de Interação
Diagrama de Atividades
![Page 22: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/22.jpg)
Conhecendo os Diagramas da UML Diagrama de Classes
. Abrange as Fases de . Abrange as Fases de AnáliseAnálise e e ProjetoProjeto
. Modelagem de classes e seus relacionamentos.. Modelagem de classes e seus relacionamentos.
![Page 23: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/23.jpg)
Diagrama de Classes. . Conta CorrenteConta Corrente. . CorrentistaCorrentista . . LançamentoLançamento
Analisando os casos de uso,Analisando os casos de uso,
podemos identificarpodemos identificar
classes e atributos.classes e atributos.
Conhecendo os Diagramas da UML
![Page 24: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/24.jpg)
Conhecendo os Diagramas da UML
Diagrama de Classes
. . Conta CorrenteConta Corrente. . CorrentistaCorrentista . . LançamentoLançamentoContaCorrente
numeroagenciadataAberturasenha...
Correntista
nomecpfenderecodataNascimento...
Lancamento
datatipovalornumDocumento...
Primeira abstração: AtributosPrimeira abstração: Atributos
![Page 25: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/25.jpg)
Diagrama de Classes
. . Conta CorrenteConta Corrente. . CorrentistaCorrentista . . LançamentoLançamentoContaCorrente
numeroagenciadataAberturasenha...
abrirConta()bloquearConta()validarSenha(senha)...
Correntista
nomecpfenderecodataNascimento...
cadastrar()...
Lancamento
datatipovalornumDocumento...
lancar()listarLancamen tos(periodo)...
Conhecendo os Diagramas da UML
Modelagem evolui: OperaçõesModelagem evolui: Operações
![Page 26: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/26.jpg)
Diagrama de Classes
ContaCorrente
numeroagenciadataAberturasenha...
abrirConta()bloquearConta()validarSenha(senha)...
Correntista
nomecpfenderecodataNascimento...
cadastrar()...
Lancamento
datatipovalornumDocumento...
lancar()listarLancamen tos(periodo)...
As classes não vivem sozinhas...As classes não vivem sozinhas...
precisamos estabelecer precisamos estabelecer
seus relacionamentos !!!seus relacionamentos !!!
Conhecendo os Diagramas da UML
![Page 27: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/27.jpg)
Diagrama de Classes
ContaCorrenteCorrentista
Lancamento
RelacionamentoRelacionamento
de Associaçãode Associação
RelacionamentoRelacionamento
de Agregaçãode Agregação
Conhecendo os Diagramas da UML
![Page 28: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/28.jpg)
Diagrama de Classes
ContaCorrenteCorrentista
Lancamento
RelacionamentoRelacionamento
de Associaçãode Associação
RelacionamentoRelacionamento
de Agregaçãode Agregação
Não precisamosNão precisamos
trabalhar com todos os elementos, trabalhar com todos os elementos,
dependendo do nível de abstraçãodependendo do nível de abstração
Conhecendo os Diagramas da UML
![Page 29: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/29.jpg)
Conhecendo os Diagramas da UML Diagrama de Classes
. . Relacionamento de Generalização/EspecializaçãoRelacionamento de Generalização/Especialização
PessoanomedataNascimento
crmespecialidade
Medico
Medico:Medico:nomenome
dataNascimentodataNascimentocrmcrm
especialidadeespecialidade
![Page 30: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/30.jpg)
Conhecendo os Diagramas da UML Diagrama de Classes
Ligação com outros diagramasLigação com outros diagramas
Diagrama de Classes
Diagrama de Componentes
Diagramas de Objetos
Diagrama de Gráfico de
Estados
Diagramas de Interação
![Page 31: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/31.jpg)
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
![Page 32: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/32.jpg)
objeto
ativação
mensagem
linha de vida
![Page 33: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/33.jpg)
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
![Page 34: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/34.jpg)
Diagrama de Comunicação
Conhecendo os Diagramas da UML
![Page 35: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/35.jpg)
Conhecendo os Diagramas da UML
Diagrama de Atividades
. Objetivo: . Objetivo:
Focaliza um fluxo de atividades que ocorrem Focaliza um fluxo de atividades que ocorrem para um determinado processamento de alguns para um determinado processamento de alguns elementos do modelo, como um caso de uso ou elementos do modelo, como um caso de uso ou uma operação.uma operação.
![Page 36: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/36.jpg)
Conhecendo os Diagramas da UML
Diagrama deAtividades
![Page 37: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/37.jpg)
Conhecendo os Diagramas da UML
Máquina de Estados
. Objetivo: . Objetivo:
Descreve o comportamento de objetos por meio Descreve o comportamento de objetos por meio de seqüências de estados e ações que ocorrem de seqüências de estados e ações que ocorrem durante a sua vida.durante a sua vida.
![Page 38: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/38.jpg)
Conhecendo os Diagramas da UML
Máquina de Estados
A g u a r d a n d o P a g a m e n t o
P e d i d oe m i t i d o
V e r i f i c a n d o E s t o q u e
P a g a m e n t o E f e t u a d o
A g u a r d a n d o R e p o s i ç ã o d eE s t o q u e
[ P r o d u t o i n e x i s t e n t en o e s t o q u e ]
E s t o q u e r e p o s t o
P r o d u t o s e p a r a d o
A g u a r d a n d o E n t r e g a
P r o d u t or e c e b i d op e l o c l i e n t e
![Page 39: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/39.jpg)
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
![Page 40: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/40.jpg)
Conhecendo os Diagramas da UML
Diagrama de Componentes
P e d i d o s . c l a s s
C l i e n t e . j a v a P r o d u t o . j a v a P e d i d o . j a v a
![Page 41: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/41.jpg)
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
![Page 42: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/42.jpg)
Conhecendo os Diagramas da UML
Diagrama de Implantação
![Page 43: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/43.jpg)
43
Versão 2.0 Diagramas que mudaram de nome:
Diagrama de Estado -> Máquina de EstadoDiagrama de Colaboração -> Diagrama de Comunicação
Diagramas novos (na versão 2.0)Diagrama de interação GeralDiagrama de Estrutura compostaDiagrama de tempo
Ferramenta que pode ser útil (Free) http://www.visual-paradigm.com/
Vale a pena conferir.
![Page 44: Aula5 linguagem uml-introducao](https://reader033.vdocuments.site/reader033/viewer/2022052508/559d45341a28ab03318b4654/html5/thumbnails/44.jpg)
Dúvidas
44