Tópico: Mapeamento Objeto Relacional
CONTEÚDO PROGRAMÁTICO UML Mapeamento Objeto Relacional Orientação a Objetos Diagramas de Classe
PARADIGMA DA ORIENTAÇÃO A OBJETOS Segundo [Bezerra,2007]: O paradigma da orientação a objetos é uma forma de abordar o problema. O termo orientação a objetos significa organizar o mundo real como uma coleção de objetos. Dos objetos nos interessa a sua estrutura de dados e um conjunto de operações que manipulam estes dados. Exemplo: Solicitar uma pizza O paradigma da OO visualiza um sistema de software como uma coleção de agentes [objetos] interconectados. Cada objeto é responsável pela realização de tarefas específicas.
UML UNIFIED MODELING LANGUAGE UML: Unified Modeling Language. É uma linguagem de modelagem unificada e visual usada para modelar sistemas orientados a objetos; Possui diversos diagramas: Classes; Sequência; Caso de uso... É independente de linguagem de programação e processos de desenvolvimento
UML EXEMPLOS DE DIAGRAMAS Figura 1- Diagrama de Caso de Uso. Extraído de: http://upload.wikimedia.org/wikipedia/commons/a/a3/caso_de_uso_cancelar_reserva.gif. Data: 10/09/2009 Figura 3 - Diagrama de Sequência Extraído de: http://www.comp.ita.br/~drikams/images/diagrama-seq.gif. Data 10/09/2009 Figura 2 - Diagrama de Classe Extraído de: http://www.vivaolinux.com.br/artigo/desenvolvendo-aplicacoes-web-2.0-com-java-e- AJAX-(FrameWork-DWR)/?pagina=5. Data: 10/09/2009
CLASSE: CONCEITOS O que é uma Classe? Uma classe é uma entidade descreve um conjunto de objetos com propriedades e comportamentos semelhantes e com relacionamentos comuns com outros objetos Pessoa nome idade getnome() getidade() setnome() setidade() Nome da Classe Atributos Métodos
DIAGRAMA DE CLASSE: CONCEITOS Multiplicidades Associações Multiplicidades: quantidade de objetos aos quais outro objeto pode estar associado. Associações: Representa o relacionamento entre objetos [troca de mensagens].
MULTIPLICIDADES Nome Simbologia Apenas um 1 Zero ou muitos 0..* Um ou muitos 1..* Zero ou um 0..1 Tabela Adaptada de: Bezerra, 2007
MAPEAMENTO OBJETO RELACIONAL: ASSOCIAÇÕES 1:1 Papéis do relacionamento Mapeamento Objeto Relacional Empregado(codigo,cpf, nome) Departamento(id,descricao, localizacao, codigo ) codigo é uma chave estrangeira e referencia empregado
MAPEAMENTO OBJETO RELACIONAL: ASSOCIAÇÕES MUITOS PARA MUITOS Loca Cliente(codigo, nome, telefone) Loca (codigo, id) Fita(id,titulo, tipo ) ou Cliente(codigo, nome, telefone) Loca (num_loca,codigo, id) Fita(id,titulo, tipo ) codigo e id são. chaves primárias e estrangeiras. codigo referencia a tabela cliente e id referencia a tabela fita.
MAPEAMENTO OBJETO RELACIONAL: ASSOCIAÇÕES UM PARA MUITOS Vendedor(codigo, nome, dt_admissao) Pedido(id, desconto, data, codigo) codigo é uma chave estrangeira e referencia a tabela vendedor
MAPEAMENTO OBJETO RELACIONAL: ASSOCIAÇÕES REFLEXIVAS Funcionario(codigo, nome, rg, cpf, codigo_supervisor) codigo_supervisor é uma chave estrangeira e referencia o campo codigo da tabela funcionario
MAPEAMENTO OBJETO RELACIONAL: ASSOCIAÇÕES TERNÁRIAS Cidade(codigo_cidade, nome, uf) Produto (codigo_produto, descricao, tipo) Distribuidor(codigo_distribuidor, nome, contato) Entrega(codigo_entrega, codigo_cidade, codigo_produto, codigo_distribuidor)
MAPEAMENTO OBJETO RELACIONAL: CLASSES ASSOCIATIVAS Projeto(id_projeto, nome, valor) Empregado(id_empregado, nome, cpf) Trabalha(codigo_trabalha, id_projeto, id_empregado, cargahoraria, salario)
MAPEAMENTO OBJETO RELACIONAL: GENERALIZAÇÃO 1ª Forma Cliente(id, telefone, cpf, rg, nome,cnpj, razaosocial) 2ª Forma Fisica(id, telefone, cpf, rg, nome) Juridica(id, telefone, cnpj, razaosocial) 3ª Forma Cliente (id, endereco) Fisica(id, cpf, rg, nome, id_cliente) Juridica(id, cnpj, razaosocial, id_cliente)
Referências Bibliográficas Bezerra, Eduardo. Princípios de análise e projeto de sistemas com UML. Rio de Janeiro: Elsevier, 2007.
Obrigado... www.cruzeirodosul.edu.br Campus Liberdade R. Galvão Bueno, 868 01506-000 São Paulo SP Brasil Tel: (55 11) 3385-3000