Você está na página 1de 37

Modelo de Domnio: Identificando

Conceitos e Relacionamentos Conceitos e Relacionamentos


Prof. Anderson Cavalcanti
UFRN-CT-DCA
Identificao de Conceitos
Segue os seguintes princpios:
Forma incremental
reavaliado e incrementado a cada iterao
Leva em considerao os aspectos do caso de uso em Leva em considerao os aspectos do caso de uso em
considerao
Tarefa: identificar as classes conceituais relacionadas
com o cenrio que est sendo projetado.
Estratgias para Identificar
Conceitos
Primeiro filtro conceitos interessantes e
significativos
Inicialmente prefira pecar pelo excesso
Podem existir conceitos sem atributos Podem existir conceitos sem atributos
Papel comportamental
Lista de Categorias de Classes
Conceituais
Lista de Categorias de Classes
Conceituais
Lista de Categorias de Classes
Conceituais
Lista de Categorias de Classes
Conceituais
Como Construir um Modelo
Conceitual
Passos propostos:
Liste as classes conceituais candidatas, usando a lista
de categorias de classes conceituais
Substantivos que aparecem no caso de uso atual
Desenhe-os em um modelo conceitual Desenhe-os em um modelo conceitual
Acrescente as associaes necessrias, para registrar
os relacionamentos para os quais existe a
necessidade de preservar esta informao
Acrescente os atributos necessrios para completar
os requisitos de informao.
Como Construir um Modelo
Conceitual
Deve-se construir um modelo com o esprito de um
cartgrafo
Usar os nomes existentes no territrio
Excluir as caractersticas irrelevantes
No incluir coisas que no esto l
Engano mais comum: criar um novo conceito ou um Engano mais comum: criar um novo conceito ou um
atributo?
Regra: se o conceito X, no visto simplesmente como um
nmero ou um texto no mundo real, ento X
provavelmente um conceito, e no um atributo
Complemento de regra: em caso de dvida crie um
conceito separado
Modelando o Mundo Irreal
Requer um alto grau de abstrao ;
Existem domnios de problema em que os conceitos
relacionados no so concretos:
Exemplo: protocolo de comunicao;
Ainda assim possvel a criao de um modelo Ainda assim possvel a criao de um modelo
conceitual, basta, portanto um bom conhecimento
terico sobre o domnio em questo;
Exemplo: conceitos relacionados com um dispositivo
de chaveamento em telecomunicaes: Mensagem,
Conexo, Dilogo, Roteamento, Protocolo, etc.
Adicionando Associaes
A busca por associaes entre os conceitos se baseia
nos requisitos de informao dos casos de uso
correntemente em desenvolvimento;
Uma associao um relacionamento entre
conceitos que indica uma conexo com significado e
interesse.
Adicionando Associaes
Critrios para associaes teis:
Necessidade de conhecimento do relacionamento;
Associaes da lista de associaes comuns;
A associao tem a notao de uma linha legando os A associao tem a notao de uma linha legando os
conceitos, podendo conter um nome e
cardinalidade;
Pode ser adicionada uma seta indicando quem deve
ser o conceito dominante que tem o outro como
um atributo.
Lista de Associaes Comuns
Lista de Associaes Comuns
Lista de Associaes Comuns
Lista de Associaes Comuns
Associaes de Alta Prioridade
A uma parte fsica ou lgica de B
A est fsica ou logicamente contido em B
A est registrado em B
Diretrizes para Associaes
Focalizar naquelas associaes para as quais o
conhecimento do relacionamento precisa ser
preservado por algum tempo;
mais importante identificar conceitos que
associaes;
O excesso de associaes pode tornar o modelo
conceitual confuso;
Evitar associaes redundantes ou derivveis.
Diretrizes para Associaes
Cada extremo de uma associao chamado de
papel, podendo ter opcionalmente:
Nome
Expresso de multiplicidade
Navegabilidade
Multiplicidade nos
Relacionamentos
1..*
1..40
5
3,5,8
Multiplicidade nos
Relacionamentos
Pode acontecer associaes mltiplas entre dois
tipos;
Exemplo:
0..1
1
Diretrizes para Associaes
Na anlise, uma associao no uma afirmao
sobre o fluxo de dados;
No implicam que devam ser implementadas;
Forma mais comum de implementar: usar um Forma mais comum de implementar: usar um
atributo que aponta para uma instncia da classe
associada.
Atributos no Modelo Conceitual
preciso identificar os atributos necessrios para
satisfazer os requisitos de informao (o que o
sistema precisa saber) levantados nos casos de uso
atualmente em desenvolvimento;
O significado de um atributo est relacionado com o
contexto deste conceito no mundo real;
Um atributo representa uma caracterstica de um
objeto.
Notao UML para Atributos
Mostrados na segunda seo da caixa que contm o
contexto;
Opcionalmente pode ser mostrado o seu tipo.
Atributos Vlidos
Comumente tipo de dados simples tipos de
dados primitivos Boolean, Date, Number, String
(Text, Time);
O atributo no deve representar um conceito
complexo prefira associao entre conceitos.
Atributos Vlidos
Outros tipos comuns incluem: Endereo, Cor, Entes
Geomtricos (Ponto, Retngulo,...), Nmero de
Telefone, Nmero de Seguridade Social, Cdigo
Universal de Produto (UPC), CEP, tipos enumerados;
Os atributos NO so usados para relacionar
conceitos no modelo conceitual, como a idia de
chave estrangeira na modelagem de banco de
dados relacionais. A implementao do
relacionamento ir garantir esta relao.
Tipos de Atributos No-primitivos
Represente o que inicialmente pode ser considerado um tipo
de dado primitivo (tal como um nmero ou uma string) como
um tipo no-primitivo se:
Ele composto e sees separadas.
Nmero de telefone, nome de pessoa.
Existem operaes que so usualmente associadas a ele, tais Existem operaes que so usualmente associadas a ele, tais
como anlise sinttica ou validao.
CPF, nmero de registro na previdncia social (INSS).
Ele tem outros atributos.
Um preo promocional pode ter uma data de incio e uma data
de fim.
Ele uma quantidade com uma unidade.
Quantia paga tem uma unidade monetria.
Tipos de Atributos No-primitivos
Exemplos de tipos no-primitivos no sistema do PDV:
UPC (nmero e dgitos verificadores)
Quantia (valor e unidade monetria)
Endereo (rua, nmero, bairro, etc.) Endereo (rua, nmero, bairro, etc.)
Esses tipos so valores de dados puros value
objects objetos-valor assim podem ser mostrados
na caixa de atributos, em vez de relacionados por
uma linha de associao.
Tipos de Atributos No-primitivos
As classes que definem os value objects tambm
sero implementadas durante o projeto
Tipos de Atributos No-primitivos
H a possibilidade de representar no modelo
conceitual os tipos no primitivos como caixas de
conceito separadas, isto vai depender do destaque
que voc quiser dar a ele.
Modelando Atributos de
Quantidades e Unidades
Um esquema mais robusto e flexvel, em atributos
como Pagamento e Velocidade, representar alm do
valor a unidade utilizada.
um requisito comum que as unidades necessitem
ser convertidas.
Modelando Atributos de
Quantidades e Unidades
Alguns atributos so claramente exigidos pela leitura de:
Especificao de requisitos;
Casos de uso que esto sendo considerados;
Simplificaes. Esclarecimentos e documentos sobre
suposies assumidas. suposies assumidas.
Exemplo: necessrio registrar a data e a hora de uma
venda o conceito Venda exige os atributos data e hora.
Os atributos no-bvios podem no ser identificados na
fase de anlise, sendo apenas suscitados na fase de
projeto e de construo.
Atributos do Sistema de PDV
Pagamento
quantia a fim de determinar se foi fornecido um
pagamento suficiente e para calcular o troco, deve ser
capturada uma quantia (quantia fornecida).
EspecificacaodeProduto EspecificacaodeProduto
descrio a fim de mostrar a descrio em uma tela ou
em um recibo.
UPC a fim de procurar uma EspecificaodeItem, dado
um UPC fornecido, necessrio relacion-la a um valor de
UPC.
preo a fim de calcular o total da venda e mostrar o
preo da linha de item.
Atributos do Sistema de PDV
Venda
data, hora um recibo um relatrio em papel de
uma venda. Normalmente mostra a data e o instante
da venda.
LinhadeItemdeVenda LinhadeItemdeVenda
quantidade a fim de registrar a quantidade entrada,
quando existir mais de um item em uma linha de item
de venda.
Loja
endereco, nome o recibo requer o nome e o
endereo da loja.
Atributos do Sistema de PDV
Multiplicidade de LinhadeItemdeVenda em relao a
Item:
possvel para um caixa receber um grupo de itens
iguais (6 pacotes de biscoito), entrar o UPC apenas
uma vez e uma quantidade; uma vez e uma quantidade;
Uma LinhadeItemdeVenda individual pode estar
associada a mais de uma instncia de item;
Quantidade capturada pelo atributo quantidade.
Modelo Conceitual do PDV
Referncias
ALLEIXO, F. Notas de aula da disciplina de Anlise e
Projeto Orientado a Objeto, CEFET/RN, 2007.
SCOTT, K. O Processo Unificado Explicado. Ed.
Bookman, 2003.

Você também pode gostar