Modelagem Conceitual
descreve a informação que o
sistema vai gerenciar
Modelo Conceitual
artefato do domínio do problema e não
do domínio da solução
não deve ser confundido com a
arquitetura do software
Onde Está o Modelo
Conceitual?
Elementos Básicos do Modelo
Conceitual
Conceitos
Atributos
Relacionamentos
Como Encontrar Conceitos e
Atributos
Verificar o texto dos casos de uso expandidos
Selecionar termos que representam
informação transmitida do e para o sistema
Substantivos: conceitos
Adjetivos: atributos de conceito
Verbos: relacionamentos
Agrupar sinônimos
Caso de Uso: Emprestar Fitas
Tratamento de Exceções:
Fluxo Principal:
3a. O cliente não possui cadastro.
1. O cliente chega ao balcão com as fitas
que deseja locar.
3a.1 O cliente deve informar seus dados para cadastro.
2. O cliente informa seu nome e entrega
as fitas ao funcionário.
3a.3 Retorna ao fluxo principal no passo 3.
3. O funcionário registra o nome do
cliente e inicia a locação.
4. O funcionário registra cada uma das
fitas.
5. O funcionário finaliza a locação,
devolve as fitas ao cliente e lhe informa a
data de devolução e o valor total da
locação.
6. O cliente vai embora com as fitas.
3a.2 O funcionário registra o cadastro.
3b. O cliente possui pendências no cadastro (locação anterior não
foi paga).
3b.1 O cliente paga seu débito.
3b.2 O funcionário registra a quitação do débito, eliminando
assim a pendência.
3b.3 Retorna ao passo 3.
4a. Uma fita está reservada para outro cliente.
4a.1 O funcionário informa que a fita não está disponível para
locação.
4a.2 Prossegue a locação do passo 4 sem incluir a fita
reservada.
4b. Uma fita está danificada.
4b.1 O funcionário informa que a fita está danificada.
4b.2 O funcionário registra que a fita está danificada.
4b.2 O funcionário verifica se existe outra fita disponível com o
mesmo filme.
4b.3 Se existir, o funcionário substitui a fita e segue no passo 4,
senão segue do passo 4 sem incluir a fita danificada.
Controladora de Sistema
Relacionamentos
Relacionamento: relação estática que pode
existir entre dois conceitos complexos,
complementando a informação que se tem
sobre eles em um determinado instante, ou
referenciando informação associativa nova
Associações entre objetos dos conceitos
Operação: ato de transformar a informação,
passando de um estado para outro,
mudando, por exemplo, a configuração das
associações, destruindo e/ou criando novas
associações ou objetos, ou modificando o
valor dos atributos
Um Relacionamento
Como encontrar relacionamentos
procure observar cada conceito complexo e
se pergunte se a informação representada
por ele é completa
se não for, deve-se criar um relacionamento
entre este conceito e outro(s) conceito(s) de
forma a complementar a informação
necessária para que o conceito faça sentido
Verbos, nos casos de uso expandidos
Conceitos Dependentes e
Independentes
Conceitos Dependentes: precisam estar
ligados a outros conceitos para fazer sentido
Exemplo: Compra (Pessoa Compra Automóvel)
Conceitos Independentes: não precisam estar
ligados a outros conceitos para fazer sentido
Exemplo: Pessoa
Definição de papéis
Multiplicidade de Papel
1
*
1
*
Sentido de Leitura
Ordenação
Composição
Agregação Compartilhada
Agregação Compartilhada
Organização dos Conceitos
Estrutural: representando relações de generalização
estrutural de conceitos, como por exemplo, Pessoa,
generalizando Homem e Mulher
Associativa: representando relações de papéis
associativos entre conceitos, como, por exemplo,
Pessoa, podendo representar junto a uma empresa o
papel de Cliente ou Funcionário
Temporal: representando relações entre estados de
um conceito e o conceito em si, como, por exemplo,
Pessoa e os estados: Criança, Jovem, Adulto e
Idoso
Onde Generalização (Herança)
Pode Ser Usada
Não use generalização se...
Não use generalização se...
Não use generalização se...
As especializações (subclasses) não
estiverem em exclusão mútua
Não pode haver transição de uma
subclasse para outra
Conceitos de Associação
Conceito Temporal
Transições entre estados das instâncias
(objetos) de um conceito
Tipos de Transição
Transição estável: os diferentes estados de
um objeto não afetam sua estrutura, mas
apenas, possivelmente valores de atributos
Transição monotônica: o objeto passa de um
estado para outro e à medida que muda de
estado vai *ganhando* novos atributos ou
associações
Transição não-monotônica: o objeto *perde*
atributos ou associações à medida que muda
de estado, e ainda *ganha* como para
transições monotônicas
Transição Estável
os diferentes estados de um objeto
podem ser determinados através de um
simples atributo
Transição Monotônica
Forma Inconveniente de
Representar Estados com Herança
Forma Inconveniente de
Representar Estados com Restrições
Forma Mais Eficaz para
Modelar Estados com
Transição Monotônica
Pagamento
Transição Não-Monotônica
0..1
0..1
Problema: o aspecto temporal não
fica claro
Uma solução melhor ...
O aspecto temporal
está
bem modelado
Classes de Especificação
Cadeia de Classes de
Especificação
Problema: repetição de gênero
Especificação ortogonal
Projeto
Milestone #2
Expansão dos Casos de Uso
Modelagem Conceitual Completa
Diagramas de Seqüência do Sistema
Contratos das Operações do Sistema
Prazo: 15/10/2006
Download

4-ModelagemConceitual