Professor Osiel Marlon  2.2.2 Modelagem de Dados  “Após extrairmos dos requisitos os objetos da aplicação, precisaremos separar e classificar suas características,

May 6, 2018 | Author: Anonymous | Category: Documents
Report this link


Description

Slide 1 Professor Osiel Marlon  2.2.2 Modelagem de Dados  “Após extrairmos dos requisitos os objetos da aplicação, precisaremos separar e classificar suas características, modelando, por conseguinte, as classes do sistema” 2.2 MODELAGEM DE SISTEMAS COM UML Slide 2 Professor Osiel Marlon Conhecendo os Diagramas da UML  Diagrama de Classes. Abrange as Fases de Análise e Projeto. Modelagem de classes e seus relacionamentos. Slide 3 FeapaProfessor Osiel Marlon Conhecendo os Diagramas da UML  Diagrama de Classes. Conta Corrente. Correntista. Lançamento Analisando os casos de uso, podemos identificar classes e atributos. Slide 4 Professor Osiel Marlon Conhecendo os Diagramas da UML  Diagrama de Classes. Conta Corrente. Correntista. Lançamento Vamos modelar as classes e atributos ? Slide 5 Professor Osiel Marlon Conhecendo os Diagramas da UML  Diagrama de Classes. Conta Corrente. Correntista. Lançamento ContaCorrente numero agencia dataAbertura senha... abrirConta() bloquearConta() validarSenha(senha)... Correntista nome cpf endereco dataNascimento... cadastrar()... Lancamento data tipo valor numDocumento... lancar() listarLancamen tos(periodo)... Primeira abstração: Atributos Modelagem evolui: Operações Slide 6 FeapaProfessor Osiel Marlon Conhecendo os Diagramas da UML  Diagrama de Classes ContaCorrente numero agencia dataAbertura senha... abrirConta() bloquearConta() validarSenha(senha)... Correntista nome cpf endereco dataNascimento... cadastrar()... Lancamento data tipo valor numDocumento... lancar() listarLancamen tos(periodo)... As classes não vivem sozinhas... precisamos estabelecer seus relacionamentos !!! Slide 7 FeapaProfessor Osiel Marlon Conhecendo os Diagramas da UML  Diagrama de Classes ContaCorrenteCorrentista Lancamento Relacionamento de Associação Relacionamento de Agregação Nas abstrações de níveis mais baixos, não precisamos trabalhar com todos os elementos. Slide 8 FeapaProfessor Osiel Marlon Diagrama de Classes  Um diagrama de classes representa as abstrações importantes do sistema (classes) e suas ligações (generalização, associação, agregação e composição),  Modela como os dados são manipulados e armazenados pelos programas de acordo com os conceitos de orientação a objetos  Notação baseia-se no DER de Peter Chen. 2.2 MODELAGEM DE SISTEMAS COM UML Slide 9 FeapaProfessor Osiel Marlon Classes  Descrevem um conjunto de objetos similares com os mesmos atributos,relacionamentos, operações e semântica.  Classes podem ser;  elementos lógicos e físicos do sistema  listas e tabelas,  substantivos do enunciado.  Toda classe deve ter um nome distinto das outras classes 2.2 MODELAGEM DE SISTEMAS COM UML Slide 10 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 11 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Visibilidade  Podemos utilizar marcações de acesso para especificar o tipo de acesso permitido aos atributos e operações de uma classe.  Os tipos de visibilidade mais usados pela UML são:  + ou Público : atributos e operações são vistos e utilizados pela classe onde estão declarados, inclusive pelas suas instâncias e por outras classes e seus objetos. Slide 12 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML # ou Protegido : atributos e operações são vistos e utilizados dentro da classe onde estão declarados e pelas classes descendentes (subclasses). - ou Privado : atributos e operações são vistos e utilizados somente pela classe onde estão declarados e pelas instâncias desta classe. ~ ou Package : atributos e operações são vistos e utilizados por elementos que estejam declarados no mesmo pacote no qual está inserida a classe. Slide 13 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 14 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Relacionamentos  As classes dentro do contexto da modelagem de um sistema, na sua maioria, não trabalham sozinhas.  Elas colaboram umas com as outras por meio de relacionamentos  A comunicação entre classes define a responsabilidade que cada uma terá no contexto do sistema, assim como atributos e operações. Slide 15 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Em um diagrama de classes encontramos três tipos de relacionamentos,são eles:  Associações (Agregação e Composição).  Generalização (Herança).  Dependências. Slide 16 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 17 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Associação  É um relacionamento que nos permite especificar quais objetos de uma determinada classe relacionam-se com objetos de outra classe.  Por exemplo: em um sistema acadêmico, disciplinas são cursadas por alunos.  As associações podem ter um nome para descrever a origem do relacionamento.  Um triângulo preenchido, indica a direção em que o nome deve ser lido. Slide 18 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 19 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Multiplicidade  É a cardinalidade de uma associação.  Procura especificar a quantidade de objetos que podem ser ligados no relacionamento  Por exemplo, um (1), um ou mais (1..*) Slide 20 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 21 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Pode existir um vendedor associado a vários pedidos; ou um vendedor que não esteja associado a algum pedido; e um pedido está associado a um, e somente, um vendedor Slide 22 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Associação reflexiva (auto-associação)  Ocorre quando houver relacionamento de uma classe consigo própria. Slide 23 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Associação binária e n-ária  Uma associação binária ocorre quando houver duas classes envolvidas na associação.  Uma associação n-ária ocorre quando houver mais de duas classes envolvidas na associação ligadas através de um losango, o qual realiza a conexão entre elas. Slide 24 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 25 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Associação e Papéis  “ Papel (role): colocada nas extremidades do caminho da associação, indica o papel representado pela classe na associação” Slide 26 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Associação com Atributos  O objetivo principal desta associação é permitir o acréscimo de propriedades a uma associação  Vincula-se uma classe que contenha atributos, operações e outras associações.  É representada através de uma linha tracejada para unir associação às suas propriedades. Slide 27 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 28 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Nota Importante: nem todas as linguagens de programação e sistemas de banco de dados orientados a objeto suportam este conceito.  Tendo em vista que esta associação é pertinente ao modelo conceitual de Análise, e poderá ser substituída por associações binárias Slide 29 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 30 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Agregação  “A agregação corresponde a um caso particular da associação (apenas associações binárias), utilizada para expressar um relacionamento todo-parte”  É uma maneira especial de associação entre o todo e suas partes, indicando que o todo é formado de partes. Slide 31 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Mouse Slide 32 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 33 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 34 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Composição  É um tipo de agregação “mais forte”, havendo coincidência da vida das partes.  Uma vez criada a parte, ela viverá e morrerá com o todo, o qual é responsável pelo gerenciamento da criação e destruição das partes.  A remoção do todo implica na remoção das partes, bem como o acesso às partes é restrito ao todo. Slide 35 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Slide 36 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Agregação X Composição Composição é um tipo especial de agregação – Semanticamente equivalente a um atributo Slide 37 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 38 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Generalização/ Especialização  Representa um relacionamento entre um elemento mais geral (superclasse) e um mais específico (subclasse).  Também conhecida como herança por ser do tipo “é um”,  Por exemplo, o cliente pode ser do tipo pessoa física ou jurídica. Slide 39 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Slide 40 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  As subclasses herdam os atributos, operações e relacionamentos da superclasse, Slide 41 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Slide 42 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Dependências  São relações de uso. Cada dependência indica que mudanças em um elemento servidor) podem afetar outro elemento (o cliente).  Para isso, uma relação de dependência entre classes estabelece que os objetos de uma classe usem serviços dos objetos de outra classe. Slide 43 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 44  Uma estação ferroviária é composta por 1 ou mais linhas ferroviárias.  Em uma linha ferroviária podem estar estacionados diversos recursos ferroviários.  Recursos ferroviários são vagões, locomotivas ou trens.  Um trem é formado por vagões e locomotivas.  Uma estação ferroviária tem uma sigla e uma descrição (que não precisa obrigatoriamente possuir um valor).  Uma linha ferroviária tem um número (que a diferencia de outra linha dentro da mesma estação), uma extensão em metros e uma descrição (que não precisa obrigatoriamente ter um valor).  Um vagão é descrito por um número de série, tipo, capacidade de carga (valor default igual a 3000 ton), comprimento entre esteiras e comprimento dos engates (um único valor correspondendo aos dois lados).  Uma locomotiva é descrita por um número de série, capacidade de tração e comprimento. Um trem é descrito por um prefixo (ex: NAG1010) e data/hora de formação. Slide 45 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Exercícios  De acordo com as informações abaixo construa um Diagrama de Classes:  Considere um Sistema de Gestão Acadêmica que possui alunos, professores, cursos, disciplinas e turmas.  Cada aluno está matriculado em um curso na universidade e possui um registro das disciplinas já cursadas com suas notas. As disciplinas têm professores ministrantes em várias turmas.  Todo curso possui um professor como coordenador. Slide 46 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Slide 47 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Construa um diagrama de classes com base no contexto a seguir:  Um cliente deseja alugar um veículo de uma Companhia de Aluguel, para isso é necessário formalizar um contrato de aluguel. O veículo pode ser de três tipos: Caminão, Carro de Passeio, Motocicleta Slide 48 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Motocicleta Slide 49 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Diagramas de objetos  Mostram uma fotografia de um Sistema Orientado a Objetos em execução, onde objetos são mostrados, com seus respectivos valores de atributos e as ligações existentes entre eles.  São úteis para a modelagem de estruturas de dados complexas, garantindo assim, um melhor entendimento acerca do problema. Slide 50 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML Slide 51 FeapaProfessor Osiel Marlon Slide 52 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Seja o Diagrama de Classes a seguir. Desenhe dois possíveis Diagramas de Objetos. Slide 53 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Pretende-se criar uma base de dados para a gestão da informação referente a uma dada biblioteca. Depois de um estudo preliminar, apurou-se que a informação relevante a este problema se podia sintetizar nos seguintes requisitos.  Uma publicação (artigo, livro, revista,...) é caracterizada por um número, um nome, um ano, uma editora, uma cota e um estado, que pode ser: “em conferência”, “reservada”, “disponível”, “consultada” ou “requisitada. Slide 54 FeapaProfessor Osiel Marlon 2.2 MODELAGEM DE SISTEMAS COM UML  Cada autor é caracterizado por um número e pelo seu nome. Aos autores de nacionalidade portuguesa é atribuído um dado código pela Sociedade Portuguesa de Autores (SPA). No caso de uma publicação ser escrita por mais do que um autor conhece-se a ordem pela qual aparecem os nomes destes na referida publicação. A cada publicação pode corresponder um conjunto de ‘palavras-chave’, permitindo-se assim uma seleção das primeiras por assunto.  Para cada requisição de uma dada publicação, é importante conhecer, para além da identificação do requisitante, o número da requisição, a data de requisição e a data de entrega dessa publicação. Cada requisitante é caracterizado por um nome, pelo número do seu bilhete de identidade, pela sua morada e telefone. Pretende-se poder pesquisar os requisitantes e os autores pelo seu último nome.


Comments

Copyright © 2025 UPDOCS Inc.