A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Modelagem Conceitual Descreve a informação que o sistema vai gerenciar.

Apresentações semelhantes


Apresentação em tema: "Modelagem Conceitual Descreve a informação que o sistema vai gerenciar."— Transcrição da apresentação:

1 Modelagem Conceitual Descreve a informação que o sistema vai gerenciar

2 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

3 Onde Está o Modelo Conceitual?

4 Elementos Básicos do Modelo Conceitual Conceitos Atributos Relacionamentos

5 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 ou atributos de conceito Adjetivos: atributos de conceito Verbos: relacionamentos Observar os sinônimos Nem todo substantivo -- ou adjetivo, ou verbo -- tem que ser relevante Alguns substantivos -- ou adjetivos, ou verbos -- podem estar só implícitos no texto

6 Como Encontrar Conceitos e Atributos Um conceito é complexo Definido por Um conjunto de atributos, possivelmente vazio Um conjunto de relacionamentos, possivelmente vazio Um atributo de um conceito existe para compor a definição de um conceito

7

8

9 Controladora de Sistema

10 Relacionamentos e Associações Relacionamento: entre conceitos, complementando a informação que se tem sobre eles em um determinado instante Associação: entre objetos, correspondendo a um relacionamento entre os conceitos respectivos dos objetos

11 Um Relacionamento

12 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 Exemplo: Aluno Está_matriculado_em Curso Verbos, nos casos de uso expandidos

13 Conceitos Dependentes e Independentes Conceitos Dependentes: precisam estar ligados a outros conceitos para fazer sentido Exemplo: Compra (Pessoa Compra Automóvel) Conceito associativo Conceitos Independentes: não precisam estar ligados a outros conceitos para fazer sentido Exemplo: Pessoa

14 Definição de papéis

15 Multiplicidade de Papel

16 * 1

17 Uma Crítica ao Modelo Atributo valorTotal Não poderia ser deduzido do preço das fitas locadas por um empréstimo? Se, ao contrário, multas fossem incluídas, isso não está claro Multa deveria ser um objeto de primeira classe Deveria haver flexibilidade de cobrança Negociar com um cliente (especial) um preço especial Negociar com um cliente (especial) um prazo especial Idem para o prazo

18 Uma Solução para a Crítica Preço passa a ser também atributo de empréstimo Prazo passa a ser também atributo de empréstimo Ver o slide seguinte Entretanto, ainda insiste com valorTotal, que não está bem explicado

19 * 1

20 Sentido de Leitura

21 Ordenação

22 Mais Crítica ao Modelo Empréstimo e ítem de empréstimo poderiam ser melhor explicados via um relacionamento de composição Ver o slide seguinte Lembre-se que a multiplicidade 1 no lado todo pode ficar implícita

23 Composição

24 Relembrando Agregação Ver os três próximos slides

25 Agregação (Compartilhada)

26 Pergunta: No lado do losango, a multiplicidade é sempre ‘*’? Resposta: Não (ver slide seguinte)

27 Agregação O caso de uso Devolver Fitas começa a ser contemplado: desenvolvimento incremental do modelo conceitual

28 Conceito Devolução? Ele deve ser necessário, porque devoluções podem ser feitas com atraso E aí tem multa... Multa poderia ser um conceito, relacionado com devolução

29 Organização de 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

30 Generalização (Herança)

31 Não use generalização se...

32

33 As especializações (subclasses) não estiverem em exclusão mútua Não pode haver transição de uma subclasse para outra Transição caracteriza um conceito temporal, que deve ser tratado adequadamente

34 Inadequação de Exclusão Mútua Considere modelar Cliente e Funcionário como subclasses de Pessoa Dois objetos diferentes Em comum, a parte Pessoa Parte Pessoa repetida em cada objeto Redundância deve ser evitada Seja minimalista e completo! Conclusão: Modelar Cliente e Funcionário como subclasses de Pessoa é uma má decisão de modelagem

35 Conceitos Associativos Note que, agora, a parte Pessoa é única, ou não redundante

36 Conceito Temporal Transições entre estados das instâncias (dos objetos) de um conceito

37 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

38 Transição Estável Os diferentes estados de um objeto podem ser determinados através de um simples atributo Pessoa Faixa de Idade

39 Transição Monotônica

40 Uma Forma Inconveniente de Representar Estados: com Herança Você já sabe o porquê: redundância

41 Outra Forma Inconveniente de Representar Estados: com Restrições

42 Forma Mais Eficaz para Modelar Estados com Transição Monotônica Pagamento

43 Transição Não-Monotônica Problema: o aspecto temporal não fica claro – em andamento  concluído 0..1

44 Uma solução melhor... O aspecto temporal está bem modelado

45 Uma solução melhor... (2) :ItemDeEmprestimo :EstadoDeItemDeEmprestimoEmAndamento :EstadoDeItemDeEmprestimoConcluido :Fita estaEm apareceEm apareceuEm Observe: :EstadoDeItemEmprestimo é vazio, logo, não há redundância!

46 Outra Crítica do Primeiro Incremento do Modelo Uma fita tem n cópias Solução O que é comum a todas as cópias é sua especificação

47 Classes de Especificação

48 Cadeia de Classes de Especificação Problema: repetição de gênero

49 Especificação ortogonal

50 Projeto Milestone #3 Conclusão do Modelo Conceitual do Sistema Diagrama de Seqüência de Operações (DSO) para cada caso de uso Contratos das Operações de cada DSO Prazo: 05/09


Carregar ppt "Modelagem Conceitual Descreve a informação que o sistema vai gerenciar."

Apresentações semelhantes


Anúncios Google