1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

64
1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML

Transcript of 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

Page 1: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

1

UML- Unified Modeling Language

Profa. Dra. Rosângela Penteado

Técnicas UML

Page 2: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

2

INTRODUÇÃO INTRODUÇÃO

PRINCÍPIOS OO PRINCÍPIOS OO

ENFOQUES ENFOQUES

METODOLOGIAS OO METODOLOGIAS OO

U M L U M L

ROSE ROSE

ESTUDOS DE CASOS ESTUDOS DE CASOS

Sistemas

Page 3: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

3

UMLUML

UMLUMLBOOCHBOOCH OMTOMT

OOSEOOSE

Diagrama de Estados Diagrama de Objetos (Colaboração) Diagrama de Processo (Desenvolvimento) Diagrama de Módulos (Componentes)

Use Case Subsistemas (Package) Diagrama de Interações MiniEspecificação

Diagrama de Estados Diagrama de Classes

Page 4: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

4

Usos de UML

• UML é uma linguagem de modelagem para:

Visualização, Especificação, Construção, Documentação e Comunicação de artefatos que façam uso de sistemas complexos de software.

• Adequada para modelar sistemas de informação corporativos a serem distribuídos a aplicações baseadas em WEB e até sistemas complexos de tempo real.

Page 5: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

5

Modelo Conceitual da UML

• Blocos de construção

• Regras que determinam como esses blocos poderão ser combinados

• Mecanismos comuns aplicados na UML

Para formar um modelo conceitual da linguagem é necessário aprender três elementos principais

Page 6: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

6

Blocos de Construção• É composto de Itens, Relacionamentos e Diagramas.

• Os itens são abstrações, os relacionamentos reunem esses itens; os diagramas agrupam coleções interessantes de item.

• Itens são de 4 tipos:

• Estruturais: parte mais estática do modelo (substantivos)

• Comportamentais: parte dinâmica (verbos)

• de Agrupamento – Pacotes - partes organizacionais dos modelos da UML.

• de Anotação – Nota - partes explicativas dos modelos da UML, comentários.

Page 7: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

7

Itens Estruturais

• São as partes estáticas de um modelo representando elementos que são conceituais ou físicos

• Exemplos

Classe

Use Cases

Cadeia de

responsabilidade

Interface

Servidor

Componente

físicos

Page 8: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

8

• São partes dinâmicas dos modelos da UML. São os verbos de um modelo representando comportamento no tempo e no espaço.

• Tipos:

Itens Comportamentais

- Interação - especifica um conjunto de mensagens trocadas entre objetos

- Máquina de Estado - especifica seqüências de estados de um objeto

Page 9: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

9

Itens de Agrupamento

• São as partes organizacionais dos modelos de UML. São blocos em que os modelos podem ser decompostos – Pacotes.

• Pacote – mecanismo de propósito geral para a organização de elementos de grupo. Os itens estruturais, comportamentais e até outros itens de grupos podem ser colocados em pacotes. É puramente conceitual.

• Ex: agrupamento básico, frameworks, modelos e subsistemas.

Page 10: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

10

Itens de Anotação

• Partes explicativas dos modelos de UML. São comentários, incluídos para descrever, esclarecer e fazer alguma observação sobre qualquer elemento do modelo.

Page 11: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

11

Relacionamentos

• Existem 4 tipos de relacionamentos na UML:– Dependência: alteração de item pode afetar a semântica

de outro.

– Associação: ligações existentes entre os objetos

– Generalização: os objetos dos elementos especializados (os filhos) são substituíveis por objetos do elemento generalizado (pai)

– Realização: relacionamento semântico entre classificadores, em que um classificador especifica um contrato que outro classificador garante executar.

Page 12: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

12

Diagramas• Diagrama é a apresentação gráfica de um conjunto de

elementos para permitir a visualização de um sistema sob diferentes perspectivas.

– Diagrama de classes– Diagrama de objetos– Diagrama de casos de uso– Diagrama de seqüências– Diagrama de colaborações– Diagrama de gráficos de estados– Diagrama de atividades– Diagrama de componentes– Diagrama de implantação

Page 13: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

13

Modelagem da arquitetura do sistema

Visão de Projeto

Visão de Processo

Visão da Implementação

Visão da Implantação

Visão de caso de uso

Vocabulário Funcionalidade

Gerenciamento da configuração Montagem do sistema

Desempenho Escalabilidade Throughput

Comportamento

Topologia do sistema Distribuição Fornecimento Instalação

Classes, interfaces e colaborações

Threads e processos que formam os mecanismos de concorrência e de sincronização

Page 14: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

14

ElaboraçãoConcepção Construção Transição

Análise de Requisitos

Nível de arquitetura

Nível de classe

Implementação

Teste

Design

fases/tempo

dimensão/componente

Processo de Desenvolvimento de Software

iterações #1 #2 #3 #n #m+1

Page 15: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

15

fases/tempo

ElaboraçãoConcepção Construção Transição

Análise de Requisitos

Nível de arquitetura

Nível de classe

Implementação

Teste

Design

Fluxo de trabalho do Processo

Processo de Desenvolvimento de Software

É a primeira fase do processo, em que a idéia inicial para o desenvolvimento é levada até o ponto de ser - pelo menos internamente - suficientemente bem fundamentada para assegurar a passagem à fase de elaboração

Page 16: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

16

ElaboraçãoConcepção Construção Transição

Análise de Requisitos

Nível de arquitetura

Nível de classe

Implementação

Teste

Design

fases/tempoFluxo de trabalho do Processo

É a segunda fase do processo, quando a visão do produto e sua arquitetura são definidas. Os requisitos do sistema podem abranger desde declarações de caráter geral até critérios precisos de avaliação, em que cada requisito especifica determinado comportamento funcional ou não funcional e proporciona a base para a realização de testes

Processo de Desenvolvimento de Software

Page 17: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

17

fases/tempo

ElaboraçãoConcepção Construção Transição

Análise de Requisitos

Nível de arquitetura

Nível de classe

Implementação

Teste

Design

Fluxo de trabalho do Processo

3ª fase do processo, em que o software chega a uma arquitetura baseline executável e destinada à transferência para a comunidade de usuários. Os requisitos do sistema e seus critérios de avaliação são sempre reexaminados com base nas necessidades comerciais do projeto e alocação de recursos.

Processo de Desenvolvimento de Software

Page 18: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

18

ElaboraçãoConcepção Construção Transição

Análise de Requisitos

Nível de arquitetura

Nível de classe

Implementação

Teste

Design

fases/tempo

dimensão/componente

4ª fase do processo, em que o software chega às mãos dos usuários. Raramente o processo termina aqui, pois é quando o sistema é aprimorado continuamente, bugs são eliminados e acrescentadas novas características.

Processo de Desenvolvimento de Software

Page 19: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

19

Visões da Ferramenta ROSE

• Use Case View - descreve o sistema como um conjunto de transações do ponto de vista dos atores externos. (criada na fase de concepção do ciclo de vida e direciona o resto do projeto)

• Logical View - contém a coleção de packages, classes e relacionamentos. (fase de elaboração e refinada na construção)

Page 20: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

20

• Component View: contém módulos e subsistemas (fase de elaboração e refinada na de construção)

• Deployment View: contém a parte física do sistema e a conexão entre essas partes (elaboração do processo - implementação)

Visões da Ferramenta ROSE

Page 21: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

21

Diagramas existentes nas Visões Use Case View Diagrama de Use Case Descrição do Use Case Diagrama de Seqüência Diagrama de Colaboração

Logical View Diagrama de Classes Diagrama de Estados

Component View Diagrama de Componentes

Deployment View

Diagrama Deployment

Page 22: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

22

Diagramas USE CASES

• Importantes na organização e modelagem dos comportamentos de um sistema

• Use Case é a especificação de seqüências de ações que um sistema, subsistema ou classe pode realizar, interagindo com um dos agentes.

• Documentam os requisitos dos sistemas- Delimitam o sistema

- Definem a funcionalidade do sistema

• Podem incluir seqüências alternativas ou excepcionais (de erros).

Page 23: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

23

Use Case: Representação Gráfica

• A coleção de use cases deverá especificar todas as formas existentes de uso do sistema• A descrição do sistema é feita por meio de vários use cases que são executados pelo atores (um ou mais)

• Atores = entidades do ambiente do sistema, pessoas ou outros subsistemas que interagem com o sistema em desenvolvimento

Page 24: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

24

UML - Diagrama de Use CasesSendo composto por:Ator

Relacionamento de Associação

ClienteCadastrarCliente

Use Case

Cliente cadastrarCliente

dadosCliente

msg02

Page 25: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

25

Exemplo de Use Case

Cadastrar ClienteAtorCliente

dados do cliente

mensagem de cadastro

Page 26: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

26

• Curso Normal:

• 1 - Cliente informa que deseja fazer seu cadastro

• 2 - CPF do cliente é solicitado

• 3 - Cliente informa o CPF

• 4 - Não existe o cliente associado ao CPF

• 5 - Cliente informa seu Nome, Endereço e Telefone

• 6- Uma instância de cliente é criada

• 7. MensagemCadastro “Cliente Cadastrado”

Descrição do Use Case

Page 27: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

27

Curso Alternativo:

4 - Existe o cliente associado ao CPF

4.1 - Exibir o cliente associado ao CPF

4.2 –MensagemCadastro “cliente já está cadastrado”

4.6 - Abandonar Use Case

Descrição do Use Case

Page 28: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

28

Generalização <<uses>>

ValidarCliente

Cliente RealizarPedido

<<uses>>

Generalização <<extends>>

CadastrarCliente

ClienteRealizarPedido

<<extends>>

UML - Diagrama de Use CasesUML - Diagrama de Use Cases

dadosPedido

msg02

dadosPedido

msg02

Page 29: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

29

Diagrama de Use Case -Exemplo

AtorClienteFisicoAtorClienteJuridico

RecuperaTransacoes

AtorCliente

RealizaTransacaoCartao

InstituicaoVarejo

ProcessaContaCliente

Inst.Financeira

GerenciaContaCliente

Sistema de Validação de Cartão de Crédito

Page 30: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

30

Use Case – Reserva de Tipo de Acomodação em Hotel

ReservarAcomodacaoFuncionario

InfReserva

msg

Page 31: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

31

Descrição do Use CaseCurso Normal1.Obter informações do cliente sobre reserva.2. Tipo de acomodação desejada está disponivel.3. Obter informações de nro de dependentes.4. Efetuar reserva desejada.5. Emitir msg "Reserva Feita" e enviar comprovante para

hospede com essas informações. 6. Fim do use-case.

Curso Alternativo2. Não ha disponibilidade do tipo de acomodação desejada.2.1. Emitir msg "não há disponibilidade do tipo de acomodação

desejada".2.2. Abandonar use case.

Page 32: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

32

UML - Diagramas de Classes

• Classe é uma descrição de um conjunto de objetos com os mesmos atributos, relacionamentos, operações e semântica.

• Classes = abstrações do domínio do problema: “Cliente”, “Banco”, “Conta”

• Toda classe deve ter um nome que a distinga das outras classes, que pode ser simples ou precedido pelo nome do pacote em que a classe está contida.

Page 33: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

33

Notação Básica para Classe

Forma

origem

mover()

redimensionar()

exibir()

Nome (obrigatório)

Operações (opcional)Atributos (opcionais) Abstração de alguma coisa

que se pode fazer com um objeto e que é compartilhada por todos os objetos da classe. O número de operações pode ser qualquer, inclusive zero.

Pode-se especificar a assinatura da operação: seus parâmetros, tipo deles e o tipo de retorno

Page 34: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

34

Visibilidade

• Pode-se usar marcações de acesso para especificar o tipo de acesso permitido aos atributos e operações

• Classificador pode ser classes, interfaces, componentes, nós, use cases, subsistemas

público: uso: por todos os classificadores

protegido: uso: por qualquer descendente do

classificador

privado: uso: somente pelo próprio classificador

teste

x1 : intnome : stringcodigo : char

Page 35: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

35

UML - Diagrama de ClassesUML - Diagrama de ClassesClasses

Atributos Nome: Tipo = ValorInicial Serviços Nome (ListaParam): TipoRetorno

ProdutoCódigo : integerSaldo : floatPreço : floatObservação : StringCadastrar (cod : integer = default, saldo : float = default) : ProdutoValidarQuantidade (quant : float = default) : booleanCalcularDesconto (vr : float = default) : valorImprimirDetalhe (cod : integer = default, quant : float= default)BaixarEstoque (cod : integer = default, quant : float = default): return

Page 36: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

36

Relacionamentos

• As classes não vivem sozinhas. Os relacionamentos ligam as classes/objetos

entre si criando relações lógicas entre elas/eles.

TIPOS DE RELACIONAMENTOS– Associações

• Agregação

• Composição

– Dependências– Generalizações

Page 37: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

37

Associação - especifica que objetos de um elemento estão conectados a objetos de outros elementos

Fornecedor Produto

Cardinalidade de uma associação

0..1 (opcional- 0 ou mais) 1 (exatamente 1)0..* (muitos- 0 ou mais) 1..* (1 ou mais)1..n ( de 1 a n)

Associação

11 1..n1..n

Page 38: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

38

Associação com Papéis

• Papéis: um dos lados da associação. Nomes de papéis são necessários para associação entre dois objetos de mesma classe.

Companhia Empregado

1

0 .. *

subordinado1 1 .. *

Page 39: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

39

Associação com atributos

Aluguel

AluDataInicio : Date = GetDate

Alugado por

0..*

Carro

CarPlaca : StringCarDescricao : StringCarSituacao : Integer = 0CarAno : IntegerCarKm : FloatCarPrecoKm : FloatCarTaxa : FloatCarBmp : TImageCarObservacao : TMemo

Aluga

0..1

Cliente

CliCPF : StringCliNome : StringCliEndereco : StringCliTelefone : StringCliDivida : Float

0..*0..*

Aluguel

Modela as propriedades associadas com uma associação. As propriedades devem ser representadas por uma classe

Page 40: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

40

Agregação/Composição

ContornoPonto

Polígono

Agregação (Referência/Valor)- relacionamento fraco do tipo “é parte de”. Tipo especial de associação.

agregação

Composição: relacionamento forte do tipo “é parte de “. A composição entre um elemento (o “todo”) e outros elementos (“as partes”) indica que as partes só podem pertencer ao “todo”e são criadas e destruídas com ele.

Page 41: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

41

Herança/Generalização - relacionamento entre um elemento mais geral (superclasse ou pai) e um mais específico (subclasse ou filho). Pessoa

Pessoa Física Pessoa Jurídica

Generalização/Dependência

Dependência - relacionamento de uso, no qual uma mudança na especificação de um elemento pode alterar a especificação do elemento dependente

AgendaCursosCursos

Remove(c:Cursos)Add(c:Cursos)

Page 42: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

42

Estudante

numeroMatricula : StringanoIngresso : int

Professor

titulacao : String

Biblioteca

nome : Stringendereço : String

Pessoa

nome : Stringendereco : StringRG : String

Livro

edicao : Stringano : int

titulo : Stringautor : Stringeditora : String

1

1..* 0..*

0..*

1..*

1

UML - Diagrama de ClassesUML - Diagrama de Classes

Page 43: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

43

Exemplo Diagrama de Classes

1..*

Escola

Aluno*

1..*

Curso

**

frequenta Instrutorleciona

Departamento

1..*1

1..*

1..*0..1

0..1

responsavel

0..1

0..11..*

**

1..*

*

1 1..*

Page 44: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

44

Herança Múltipla

• Ocorrem múltiplas superclasses para uma mesma subclasse

veículo

Veículo Terrestre Veículo Aquático

Veículo Anfíbio

Page 45: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

45

• Enfatizam a ordenação das mensagens trocadas entre os objetos (num certo tempo). Quando um objeto envia uma mensagem para outro, o objeto que recebe a mensagem pode enviar outra mensagens e assim por diante, formando uma seqüência de mensagens.

• Um cenário é uma seqüência específica de ações que ilustra um comportamento.

• Diagramas de seqüência podem modelar apenas um cenário ou um conjunto de cenários. Podem mostrar decisões simples e iterações.

UML - Diagrama de SeqüênciaUML - Diagrama de Seqüência

Page 46: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

46

UML - Diagrama de SeqüênciaUML - Diagrama de Seqüência

Jose : Chamador

EmpresaTelefônica:Central

1: retira fone do gancho

2: tom de discar

3: discagem do número chamado

4: tom de controle 5: toque de chamada

6: retira fone do gancho

7: conversação

8: conversação

9: repõe fone no gancho10: tom de ocupado

11: repõe fone no gancho

a

b

{b - a < 1 seg.}

c

d{d - c < 1 seg.}

Antonio : Chamado

Page 47: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

47

Diagrama de Seqüência para Use Case – Reservar Tipo de Acomodação

TipoAcomodacao : tipoAcomodacaoAtorFuncionario :

Funcionario

Cliente : hospede

Reserva : ReservaAcomodacao

ReservaAcomp. : reservaAcompanhante

acomodacaodesejada

VerificarDisp

InfHospede

InfReservaEfetuada

InfReservaAcomponhantes

msg "Reserva Feita"

Page 48: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

48

Mensagens

• Uma mensagem é a especificação de uma comunicação entre objetos, pelos quais são passadas informações para que alguma atividade ocorra.

• Tipos de Mensagens:– Chamada (Call)– Retorno (Return)– Envio (Send)– Criação (Create)– Destruição (Destroy)

Page 49: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

49

Diagramas de Colaboração

• Enfatizam a organização dos objetos em uma interação.

• Praticamente tudo o que pode ser mostrado em um Diagrama de Seqüência também pode ser mostrado em um Diagrama de Colaboração. Assim a partir de um pode-se transformar no outro.

Page 50: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

50

Objetos e Atores:

Pedro : Pessoa Pedro

UML - Diagrama de Sequência e ColaboraçãoUML - Diagrama de Sequência e Colaboração

Pedro : Chamador

Antonio :Chamado

Jose : Chamador

EmpresaTelefônica : Central1: retira fone do gancho

2: tom de discar

3: discagem do número chamado

4: tom de controle

5: toque de chamada

6: retira fone do gancho

7: conversação

8: conversação9: repõe fone no gancho10: tom de ocupado

11: repõe fone no gancho

Page 51: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

51

Exemplo de Diagrama de Colaboração

Janela de entrada de pedido

p:Pedido

:ItemPedido :RemEstoque

:RemEntrega:ItemRenovEstoque

1: preparar ()

1.1.1:emEstoque:=verificar()1.1.2:(emEstoque):=remover()

1.1.2.1:estoqueBaixo:= verificEstoqueBaixo

1.1.3:emEstoque<<criar>>

1.1 itemde pedido. preparar()

1.1.2.2[estoqueBaixo]<<criar>>

Page 52: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

52

Diagramas de Estado• Componentes: Estado e Transição• Partes de um estado:

– Nome– Atividades de entrada (Entry)– Atividades de Saída (Exit)– Atividades (Do)

• Transição: relacionamento entre dois estados indicando que o objeto no primeiro estado irá executar certas ações e entrar no segundo estado quando o evento especificado ocorre e as condições forem satisfeitas

• Partes de uma transição:– Estado fonte– Evento de disparo– Condição de guarda– Ação– Estado destino

Page 53: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

53

UML - Diagrama de EstadosUML - Diagrama de EstadosSintaxe de Evento e Ação

nome do estadoevento( argumentos )[ condição ]

/ ação ^eventos(argumentos)

Aguardando com Alarme Desligado

Acertando Hora do Alarme

entry: AcertarHoraAlarmeControlando Alarme Ligado

do: MonitorarAlarmeLigado

IniciaAcerto / HabBotãoConfirma ^HabBotãoCancela

DesBotãoAcerto

Cancelamento / DesBotãoCancela^DesBotãoConfirma

HabBotãoAcerto

IniciaControle / DesBotãoCancela ^DesBotãoConfirma

HabBotãoAcerto

Cancelamento / DesBotãoCancela^DesBotãoConfirma

HabBotãoAcerto

Page 54: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

54

UML - Diagrama de EstadosUML - Diagrama de Estados

Subestado

Telefonando

Iniciando

entry: IniciaTomDiscagem

Discando

entry: ComporNúmero(n)

Dígito(n)

Dígito(n)

[ NúmeroVálido() ]

Page 55: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

55

Concorrência dentro de um objeto

A

A1 A2

alarme ligado

alarme desligado

12 hs

24 hs

fim de bateria

inserir bateria

Page 56: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

Pacotes

Pacotes Lógicos

Pacotes Componentes de código binário

Distribuidora

UML - PackagesUML - Packages

Unit1

Vendas

Pacote = mecanismo de propósito geral para organizar elementos em modelos , de maneira que seja fácil compreendê-los,

Page 57: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

Pacotes

UML - PackagesUML - Packages

packageRunnable.java

Contém o nome de arquivo. Em Java pode-se usar uma especificação de package para representar as interfaces (classe abstrata que não possui variáveis de instâncias e os serviços são declarados sem corpo)

Page 58: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

58

Diagrama de ComponentesDiagrama de ComponentesMostra a dependência entre componentes de software.

Interface

global

CompraVenda

Pacotes Pacotes LógicoLógico

Page 59: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

59

Cotação.dllc:\sistema\financeiro

Dependência de Pacote e Dependência de Pacote e ComponenteComponente

Page 60: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

UML - Visão ComponentesUML - Visão ComponentesÉ composto por:

Distribuidora

Runnable.java

Cliente.java

Especificação do Package (classes abstratas)

Package

CorpoPackage

Distribuidora.java

corpo_sub

espec_sub

Programa Principal (arquivo raiz [origem] do programa) .java que contém o main.

Especialização do subprograma

Corpo do subprograma

Page 61: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

UML - Diagrama de ComponentesUML - Diagrama de Componentes

Distribuidora.java

Cliente.java

Pedido.java

Fornecedor.java

Produto.java

Page 62: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

UML - Visão DeploymentUML - Visão DeploymentO que é?É composto por:

1. Processador

2. Dispositivo

3. Conexão

PCPentium

300

Modem

PCPentium

200

Impres-soraHP 700

FibraÓtica

Page 63: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

63

UML - RoteiroUML - Roteiro Projeto: < Nome do Sistema >

1 - Introdução

1.1 - Descrição do problema

1.2 - Objetivos do Sistema

1.3 - Soluções alternativas

1.4 - Descrição da solução escolhida

2 - Visão “Use Case” – nível Análise

2.1 - Definição dos atores(Quem interage?)

2.2 - Lista de eventos

2.3 - Diagrama de Use Cases geral

(Por assunto e por evento)

Page 64: 1 UML- Unified Modeling Language Profa. Dra. Rosângela Penteado Técnicas UML.

64

UML - RoteiroUML - Roteiro

3 – Visão Lógica – nível Análise 3.1 – Diagramas de Classes 4 - Gerência do Projeto5 – Visão “Use Case”- nível Projeto

5.1 - Interface5.2 - Diagramas de Seqüência5.3 - Diagramas de Colaboração5.4 - Diagramas de Estados

6- Visão Lógica – nível Projeto 6.1 - Diagramas de Classes