Documente Academic
Documente Profesional
Documente Cultură
Modelagem de Classes
Prof. David Zanetti
Introduo
Funcionalidades de um Software OO colaboraes (comunicao)
entre objetos.
Projeto (Especificao)
Venda
Pagamento -data:Date
1 Pago-por 1
-hora:Time
-quantia: Currency
+getTotal():Currency
+getValor(): Currency
Classes
Descrevem objetos atravs de atributos e operaes.
Atributos correspondem s informaes que um objeto armazena.
Operaes correspondem s aes que um objeto sabe realizar.
Exemplos:
Multiplicidades
Representam a informao dos limites inferior e superior da
quantidade de objetos aos quais outro objeto pode se associar.
Exemplo
Pode haver um cliente que esteja associado a vrios pedidos.
Pode haver um cliente que no esteja associado a pedido algum.
Um pedido est associado a um, e somente um, cliente.
Exemplo
Uma corrida est associada a, no mnimo, dois velocistas
Uma corrida est associada a, no mximo, seis velocistas.
Um velocista pode estar associado a vrias corridas.
Conectividade
A conectividade corresponde ao tipo de associao entre duas
classes: muitos para muitos, um para muitos e um para um.
Caractersticas:
So assimtricas, no sentido de que, se um objeto A parte de
um objeto B, o objeto B no pode ser parte do objeto A.
Propagam comportamento, no sentido de que um
comportamento que se aplica a um todo automaticamente se
aplica s suas partes.
As partes so normalmente criadas e destrudas pelo todo. Na
classe do objeto todo, so definidas operaes para adicionar e
remover as partes
Agregaes e Composies
Y parte de X?
Exemplos
23
Agregao X Composio
Propriedades:
Assimetria: Se A herda de B, ento B no pode herdar de A
Transitividade: Uma classe em uma hierarquia herda propriedades e relacionamentos de
todos os seus ancestrais
Generalizaes e Especializaes
Herana de Associaes
herana simples
Formato Exemplo
nomeClasse Pedido
produto20 : Produto
nome = "Caderno M"
descrio = "Caderno em espiral tamanho mdio"
preoUnitrio = 4,50
desconto = 15
item1 : ItemPedido
quantidade = 6
Pedido1 : Pedido produto12 : Produto
dataItemPedido
Produto
=Pedido
13/09/2002 nome = "Caneta ESF"
hora = 10:00am item2 : ItemPedido descrio = "Caneta esferogrfica 5mm"
quantidade = 20 preoUnitrio = 1,20
desconto = 2
Antnio : Empregado
Aline
Empregado
: Empregado
Jos : Empregado Lucas : Empregado
Maria : Empregado
Tcnicas para identificao de
classes
Identificao de Classes
Papis desempenhados por seres humanos. Por exemplo, professores, alunos, empregados,
clientes, etc.
Eventos, ou seja, ocorrncias em uma data e em uma hora particulares. Por exemplo,
reunies, pedidos, aterrisagens, aulas, etc.
Lugares: reas reservadas para pessoas ou coisas. Por exemplo: escritrios, filiais, locais de
pouso, salas de aula, etc.
Caractersticas
Normalmente armazenam informaes persistentes.
Vrias instncias da mesma entidade existindo no sistema.
Participam de vrios casos de uso e tm ciclo de vida longo.
Exemplo:
Um objeto Pedido participa dos casos de uso Realizar Pedido e Atualizar Estoque.
Este objeto pode existir por diversos anos ou mesmo tanto quanto o prprio sistema.
Objetos de Fronteira
Realizam a comunicao do sistema com os atores.
traduzem os eventos gerados por um ator em eventos relevantes ao sistema eventos de
sistema.
tambm so responsveis por apresentar os resultados de uma interao dos objetos em algo
inteligvel pelo ator.