Escolar Documentos
Profissional Documentos
Cultura Documentos
Parte 1
1
03/09/2008
Objeto
• Definição:
– Um conceito, uma abstração com significado específico em um
contexto
• Propósito:
– representar uma entidade do mundo real
• Objetos possuem:
– Identidade
– Conjunto de características que determinam seu estado
– Comportamento específico definido por um conjunto de ações
Exemplo de Objetos
Identidade: „Beija-flor Biju‟
Identidade: „Pessoa Mário’
Características:
Características:
penas azuis
olhos pretos
bico fino
nasceu em 16/02/70
vôo rápido
pesa 70kg
mede 1,70m
Comportamento:
voar
Comportamento:
piar
andar
falar
comer
rir
2
03/09/2008
Características:
azul
número 576-0989
Características:
tone
cor amarela
placa LXY 7684
30 assentos
Comportamento: a diesel
tocar
discar
Comportamento:
frear
andar
correr
buzinar
acelerar
Objeto
Representação
Identidade
Características Funcionário_Mário
(estado)
Nome = Mário Sá
Nasc = 16/02/70
Salário = 3.000
InformarSalário
CalcularIdade
Mário
3
03/09/2008
Classe Pessoa
Objeto Ana
Objeto
João
Classe Funcionário
Nome
Nasc Classe
Salário
InformarSalário
CalcularIdade
InformarSalário InformarSalário
CalcularIdade CalcularIdade
4
03/09/2008
Classe
• Definição:
– Abstrações utilizadas para representar um conjunto de objetos com
características e comportamento idênticos
Atributos
Funcionário
InformarSalário
CalcularIdade
10
5
03/09/2008
Serviços/Métodos
Funcionário_Helena
4000
Funcionário Nome=Helena Reis
Nasc=28/01/1965
Nome Salário = 4.000
Nasc
Salário InformarSalário Funcionário_Mário
CalcularIdade
InformarSalário Nome=Mário Sá
CalcularIdade 3000 Nasc=16/02/1970
Salário = 3.000
Informar
Salário? InformarSalário
CalcularIdade
11
Mensagens
12
6
03/09/2008
Serviços/Métodos
13
Mensagens
Funcionário_Helena
4000 Informar
Nome=Helena Reis Salário?
Nasc=28/01/1965
Salário = 4.000
Funcionário InformarSalário
CalcularIdade
Nome
Nasc
Salário
InformarSalário
CalcularIdade
Funcionário_Helena ?
Nome=Helena Reis
Calcular
Nasc=28/01/1965 Desconto
Salário = 4.000
?
InformarSalário ERRO!
CalcularIdade
14
7
03/09/2008
Herança
15
Funcionário_Hele
Funcionário
na
Nome
Nome=Helena Reis
Nasc
Nasc=28/01/1965
Salário
Salário = 4.000
InformarSalário
InformarSalário
CalcularIdade
CalcularIdade
Gerente_Mário
Gerente
Nome=Mário Sá
Nome Nasc=16/02/1970
Nasc Salário = 3.000
Salário
Projeto Projeto = SAP
InformarProjeto InformaProjeto
InformarSalário
InformarSalário CalcularIdade
CalcularIdade
16
8
03/09/2008
Funcionário Funcionário_Helen
a
Superclasse Nome
(características comuns) Nasc Nome=Helena Reis
Salário Nasc=28/01/1965
Salário = 4.000
InformarSalário
CalcularIdade InformarSalário
CalcularIdade
Subclasse
(características Gerente_Mário
específicas)
Nome=Mário Sá
Nasc=16/02/1970
Gerente Salário = 3.000
Projeto = SAP
Projeto
InformarSalário
InformarProjeto CalcularIdade
InformarProjeto
UML
Parte 2
18
9
03/09/2008
– Especificar
– Visualizar
– Construir
.... artefatos de sistemas de software
19
Histórico
20
10
03/09/2008
Propósitos
21
Visões Diagramas
22
11
03/09/2008
• Visão Externa
• Visão de Interação
– Diagrama de Casos de Uso
– Diagrama de Sequência
– Diagrama de Colaboração
• Visão Estrutural (Estática)
– Diagrama de Classes
• Visão da Arquitetura
– Diagrama de Objetos (Implementação)
– Diagrama de
• Visão Comportamental Componentes
(Dinâmica) – Diagrama de Implantação
– Diagrama de Estado – Diagrama de Pacotes
– Diagrama de Atividade
23
24
12
03/09/2008
25
26
13
03/09/2008
27
Registrar Contrato
Adquirir
Suprimentos
Gerente
28
14
03/09/2008
português.
29
Atores: Caixa
30
15
03/09/2008
31
• Generalização
• Inclusão
• Extensão
32
16
03/09/2008
Registrar Contrato
<<extend>>
Vendedor
Cadastrar Cliente
33
<<include>>
<<include>>
Efetivar Saque
34
17
03/09/2008
Matricular Aluno
Atendente
35
Vender
Equipamento
Vendedor
Autorizar
Crédito
Gerente
36
18
03/09/2008
37
Diagrama de Classe
38
19
03/09/2008
• Classes
• Atributos
• Operações
• Relacionamento
39
Aluno
40
20
03/09/2008
• Associação
• Generalização
• Agregação
• Composição
• Papéis (Necessário para ligação de uma classe com ela mesma)
• Multiplicidade
• Navegabilidade (Uni-direcional x Bi-direcional)
• Restrições
41
MeioTransporte
...
Carro Navio
42
21
03/09/2008
43
Carro
1 1
1
1 4 1
44
22
03/09/2008
1..* Alocação *
Divisão Funcionário chefe
alocador alocado
1
subordinado *
Alocação
data
45
46
23
03/09/2008
47
48
24
03/09/2008
49
DE - Elementos
• Estado
• Evento
• Transição
• Ação
• Condição
• Atividade
50
25
03/09/2008
51
52
26
03/09/2008
53
DE - Avançado
54
27
03/09/2008
55
Diagrama de Atividades
56
28
03/09/2008
[cheque aceito]
57
Vender Café
Preparar café
[ficha válida]
Receber ficha Servir café
Devolver ficha
58
29
03/09/2008
Workflow de Pagamentos
Recepção de Controlador de Preparador de Gerente de
Departamento Contabilidade
Compras Empenhos Pagamento Tesouraria
1
A
Compras
Solicitar
Pagamento de [NF Compra
Nota Fiscal Direta] Classificar
(Compra Direta) Empenhar
despesa Preparar Aprovar
pagamento pagamento
2 [NF de Pedido]
[NF de Pedido
Receber 100% antecipado]
Compras Nota Fiscal
Arquivar
Documento
Encaminhar
Nota Fiscal
de Pedido
Analista de Superinten-
Externo Contínuo Tesoureiro
RP dente de RH
Encaminhar
pagamento
Gerar RP
[Contra-retirada]
Pagamento
[Depósitos em cheque]
transmitido
Quitar
pagamento
[Pagamento
Antecipado]
Compras 3
59
60
30
03/09/2008
61
Diagrama de Colaboração
Diagrama de Atividade Janela de
Entrada de
Pedido
um Pedido
uma linha
de
Pedido
um item
em Estoque
criar()
Diagrama de Sequência
* criar()
verifica ()
Janela de uma linha
um item
Entrada de um Pedido de [verfifica = true]
em Estoque
Pedido Pedido retirar_item()
refabricar_item()
criar()
* criar()
[refabricar_item = true]
verifica ()
Janela de uma linha new
um item um Item de
Entrada de um Pedido de [verfifica = true]
em Estoque Refabricação
Pedido Pedido retirar_item()
[verfifica = true]
refabricar_item()
criar()
new um Item de
* criar() Entrega
Objetos Cenário
retirar_item()
refabricar_item()
[verfifica = true]
new um Item de
Entrega
[refabricar_item = true]
new
um Item de
Refabricação
[verfifica = true]
new um Item de
Entrega
Interação
62
31
03/09/2008
• Linha da Vida
• Mensagens
• Informações de Controle
• Auto-delegação
• Condição
• Iteração
63
Janela de
Entrada de :Item_Estoque
Atendente Pedido
Informa dados criar() :Pedido
* criar()
:linha_Pedido
[verifica = true]
retirar_item() Auto-delegação
refabricar_item()
[refabricar_item = true]
criar
:Item_Refabricação
Retorno
[verfifica = true]
criar
data_entrega :Item_Entrega
64
64
32
03/09/2008
65
66
33
03/09/2008
mensagem
1. :tot:= total():Integer
: Loja : Venda
Instância de linha de
Classe ligação
67
Diagrama de componentes
index.html
cliente.html cliente.exe
68
34
03/09/2008
Diagrama de Implantação
entrada de pedido
PC
Fax
Servidor de
aplicação
compra
Impressora
PC
69
Elementos Genéricos
35
03/09/2008
36