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

Slides:



Advertisements
Apresentações semelhantes
Um pouco mais de cardinalidade e Relacionamentos
Advertisements

Análise e Desenvolvimento de Sistemas
Modelagem de Classes do Domínio
Aula 8 Contratos.
O Modelo E-R Definição: Características
O Processo Praxis 3.0 Processos de Software 25/03/2017
Diagrama de Classes continuação.
UML – MODELAÇÃO DA ESTRUTURA Professor Sandro Carvalho.
Modelagem Orientada a Objetos Relacionamentos. Conteúdo n Ligação entre objetos n Associação entre classes n Agregação n Multiplicidade e Papel n Atributo.
UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.
Mapeamento Objeto Relacional
1 DIAGRAMA DE CLASSES PERSPECTIVA CONCEITUAL 2ª PARTE DICAS DEPENDÊNCIAS AVANÇADO AGREGAÇÃO ATRIBUTOS E ASSOCIAÇÕES DERIVADAS ASSOCIAÇÃO TERNÁRIA GENERALIZAÇÃO.
Atividade de Projeto Design
Introdução a diagrama de classes e UML
Diagramas de Classes.
1 - Lafayette B. Melo – Análise e Projeto de Sistemas para a Internet – Noções de Engenharia de Software COINFO – CEFET-PB 9. Modelo conceitual (diagrama.
Engenharia de Requisitos Requisito – sistema Caso de uso - usuário
Introdução Visão Geral do Método.
Aspectos Avançados em Engenharia de Software Aula 3 Fernanda Campos
Contratos Modelagem Funcional.
Geração de Código.
Análise e Projetos de Sistemas UML-Linguagem de Modelagem Unificada Modelo de Dados com UML Diagrama de Classes Professor: Armando Hage.
O.O.H.D.M. Modelagem Conceitual
1 - Lafayette B. Melo – Análise e Projeto de Sistemas para a Internet – COINFO – CEFET-PB 9. Complemento de AOO 9.4 Comportamentos 9.5 Visibilidade 9.6.
Objetivo: compreender e aplicar um modelo conceitual
SQL Server 2012 Introdução a Modelagem de Dados
Modelo Conceitual Descreve a informação que o sistema vai gerenciar
Diagrama de Classes e Colaboração
Introdução UML, Diagrama de Classes e Comunicação/Colabaração
Validação experimental de uma abordagem baseada em busca para projeto de arquitetura de linha de produto de software Thelma Elita Colanzi Adaptação do.
DIAGRAMA DE CLASSE Modelagem de Software
Fase de Elaboração: Fluxo de Análise Análise de Sistemas de Software Prof. Rodrigo Ribeiro.
Profª Daniela TLBD.
Engenharia de Software e Sistemas Danilo Veras e Rebeka Gomes.
Fase de Concepção (Início, Planejamento)
Marcio de Carvalho Victorino
Análise e Projeto de Sistemas
Princípios de Análise e Projeto Orientados a Objetos com UML
Modelagem Visual de Objetos Com UML
UML Diagrama de classes.
© Ricardo Pereira e Silva
Objetivos Apresentar de forma breve a Metodologia de Modelagem Orientada a Objetos (OMT). A partir de um modelo de objetos de um sistema de informação.
Projeto Orientado aos Objetos Prof. Wolley W. Silva
Modelagem Visual de Objetos Com UML
Análise Orientado aos Objetos Prof. Wolley W. Silva
O Processo Unificado (UP)
Modelagem de Entidade/Objetos de Domínio com Diagrama de Classes
POO Aula 03 Projeto OO com UML Eduardo Figueiredo 11 de Março de 2010.
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Laboratório de Programação
Modelando Sistemas em UML
Engenharia de Software e Sistemas
Atividade de Análise Fase de Elaboração. Artefatos Casos de Uso –Expansão dos Casos de Uso Definidos na Fase de Concepção: Formulário Específico –Diagramas.
Fase de Concepção (Início, Planejamento)
Expansão dos Casos de Uso
Modelagem Conceitual Descreve a informação que o sistema vai gerenciar.
Fase de Concepção (Início, Planejamento)
Modelagem Conceitual descreve a informação que o sistema vai gerenciar.
Atividade de Projeto Design. O Que é Projeto OO? É desvendar a caixa-preta de um objeto :Sistema Como o objeto complexo :Sistema deveria ser definido?
Equipe: Bruno Barbosa Felipe Fernandes Waleska Dias.
Modelagem Conceitual descreve a informação que o sistema vai gerenciar.
Relacionamentos UML e Polimorfismo
Modelagem de Sistemas Orientada a Objeto Com UML
UML (Unified Modeling Language) A linguagem unificada de modelagem
Diagrama de Classes Herança Dependências.
Análise e Design de Software Site:
Visão Geral de Orientação a Objetos com UML Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes OO e UML | 2 Objetivos.
Diagrama de Classes Modelagem e Programação Orientada a Objetos Curso Superior de Tecnologia em Sistemas para Internet Prof. Cristiano Stüpp Nunes
Engenharia de Software Orientada a Objetos Professor: Guilherme Timóteo Aula 3: – Modelagem de Classes (parte 2)
Análise e Projeto de Sistemas Análise & modelagem conceitual Prof. Edjandir Corrêa Costa
Transcrição da apresentação:

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 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

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

Controladora de Sistema

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

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 Exemplo: Aluno Está_matriculado_em Curso 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) Conceito associativo Conceitos Independentes: não precisam estar ligados a outros conceitos para fazer sentido Exemplo: Pessoa

Definição de papéis

Multiplicidade de Papel

* 1

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

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

* 1

Sentido de Leitura

Ordenação

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

Composição

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

Agregação (Compartilhada)

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

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

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

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

Generalização (Herança)

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 Transição caracteriza um conceito temporal, que deve ser tratado adequadamente

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

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

Conceito Temporal Transições entre estados das instâncias (dos 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 Pessoa Faixa de Idade

Transição Monotônica

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

Outra 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 Problema: o aspecto temporal não fica claro – em andamento  concluído 0..1

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

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

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

Classes de Especificação

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

Especificação ortogonal

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