Transcript
Page 1: Aula5 linguagem uml-introducao

Engenharia de Software

Aula 5 – Linguagem UML - IntroduçãoProfa. Dra. Judith Pavón

Universidade Salvador – UNIFACS2012

Page 2: Aula5 linguagem uml-introducao

Objetivo da aula

2

O objetivo desta aula é apresentar uma introdução à linguagem UML.

Page 3: Aula5 linguagem uml-introducao

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Cenário Perfeito:É impossível tudo

ocorrer sem problemas !

Conhecendo os Diagramas da UML

Tratar estes problemas

Page 19: Aula5 linguagem uml-introducao

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

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

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

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

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

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

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

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

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

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

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

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

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

objeto

ativação

mensagem

linha de vida

Page 33: Aula5 linguagem uml-introducao

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

Diagrama de Comunicação

Conhecendo os Diagramas da UML

Page 35: Aula5 linguagem uml-introducao

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

Conhecendo os Diagramas da UML

Diagrama deAtividades

Page 37: Aula5 linguagem uml-introducao

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

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

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

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

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

Conhecendo os Diagramas da UML

Diagrama de Implantação

Page 43: Aula5 linguagem uml-introducao

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

Dúvidas

44


Top Related