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

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

Programação e Sistemas da Informação Módulo 13 Técnicas de Modelação de Dados.

Apresentações semelhantes


Apresentação em tema: "Programação e Sistemas da Informação Módulo 13 Técnicas de Modelação de Dados."— Transcrição da apresentação:

1 Programação e Sistemas da Informação Módulo 13 Técnicas de Modelação de Dados

2 Partilha de Dados Quando a implantação da Informática nas organizações ocorre de forma gradual, é provável que ocorram alguns problemas. Suponha que uma indústria execute três funções básicas: Vendas: concentra as actividades relativas ao contacto com os clientes, como fornecimento de cotações de preços, vendas e a disponibilidade de produtos. Produção: concentra as actividades relativas à produção propriamente dita, como planeamento da produção, ou seja, dos produtos e controlo do que foi produzido. Compras: concentra as actividades relativas à aquisição de matérias-primas necessárias à produção, como cotações de preços junto a fornecedores, etc.

3 SISTEMA PRODUÇÃO SISTEMA VENDAS SISTEMA DE COMPRAS O que vai PRODUZIR? PRODUTO É preciso saber quais os componentes dos produtos e como são produzidos. O que vai VENDER? PRODUTO É preciso saber o preço do produto, prazo de validade, stock... O que vai COMPRAR? MATÉRIA-PRIMA do PRODUTO É preciso saber que componentes serão adquiridos para fabricar o produto Arquivos ProduçãoArquivos VendasArquivos Compras Partilha de Dados

4 Se cada uma das funções for informatizada de forma separada, pode ocorrer que, para cada uma delas, seja criado um arquivo separado para PRODUTOS. Dados de diferentes aplicações não estão integrados; Dados estão projectados para atender uma aplicação específica. SISTEMA PRODUÇÃO SISTEMA VENDAS SISTEMA DE COMPRAS Arquivos ProduçãoArquivos VendasArquivos Compras Produto

5 Problemas da Falta de Integração de Dados ControladaNão Controlada Redundância Controlada e Não Controlada de Dados Redundância de Dados Redundância de Dados - o mesmo objecto da realidade é armazenado mais de uma vez na base de dados. Ex: Produtos Controlada Redundância Controlada - acontece quando o software tem conhecimento da múltipla representação e garante a sincronia entre as diversas representações. Ou seja, actualiza automaticamente os dados quando necessário. Ex: Sistemas distribuídos - um mesmo dado é armazenado em vários computadores, permitindo acesso rápido a partir de qualquer um deles.

6 Problemas da Falta de Integração de Dados Não Controlada Redundância Não Controlada - acontece quando a responsabilidade pela manutenção da sincronia entre as diversas representações de um dado está com o utilizador. Redundância Não Controlada leva a : Redigitação de Dados - Redigitação de Dados - o mesmo dado é digitado várias vezes no sistema. Este trabalho repetitivo pode levar a erros; Inconsistência dos Dados - Inconsistência dos Dados - os dados podem não representar correctamente a realidade. Imagine que o utilizador alterou o preço de um produto no sistema de compra mas não alterou no sistema de vendas. Dificuldade de extracção de informações - Dificuldade de extracção de informações - os dados projectados para atender uma aplicação específica podem gerar dificuldade para o cruzamento dos dados.

7 Solução PARTILHA DE DADOS A solução para evitar a redundância NÃO CONTROLADA de informações. SISTEMA VENDAS BASE DE DADOS Produtos SISTEMA PRODUÇÃO SISTEMA DE COMPRAS Assim, cada dado é armazenado uma ÚNICA VEZ, sendo acedida pelos vários sistemas que dele necessitam.

8 Partilha de Dados SISTEMA PRODUÇÃO SISTEMA VENDAS SISTEMA DE COMPRAS Arquivos ProduçãoArquivos Vendas Arquivos Compras Produto SISTEMA VENDAS BASE DE DADOS Produto SISTEMA PRODUÇÃO SISTEMA DE COMPRAS

9 BASE DE DADOS É o nome dado ao conjunto de ficheiros integrados que atendem a um conjunto de sistemas Conjunto de dados integrados que tem por objectivo responder a uma comunidade de utilizadores Uma colecção de dados operacionais inter-relacionados. Estes dados são armazenados de forma independente dos programas que os utilizam, servindo assim a múltiplas aplicações de uma organização. (Kort, Henry F.) Base de Dados

10 O que muda com o aparecimento das Bases de Dados, ou seja, com a partilha dos Dados? Acesso por múltiplos programas - Acesso por múltiplos programas - pode haver mais de uma equipa de desenvolvimento envolvida no desenvolvimento de uma aplicação Os programas devem garantir a Restrição de Integridade - Os programas devem garantir a Restrição de Integridade - ou seja, garantir a veracidade e a correcção dos dados. Ex: Um aluno não pode estar matriculado em dois cursos A BD pode ser acedida concorrentemente por múlti- plos utilizadores - A BD pode ser acedida concorrentemente por múlti- plos utilizadores - os programas devem implementar o controlo de acesso concorrente

11 Base de Dados Restrições de Acesso - Restrições de Acesso - nem todos os utilizadores podem aceder a qualquer informação. O programa deve implementar o controlo de acesso, ou seja, quem tem permissão para aceder a quê Dados são de importância vital e não podem ser perdi- dos - Dados são de importância vital e não podem ser perdi- dos - mecanismos simples como cópias de backup não são suficientes. Caso haja uma falha, a base de dados deve ser recuperada rapidamente. Os programas devem implementar mecanismos de tolerância a falhas Estruturas de dados mais complexas - Estruturas de dados mais complexas - os arquivos devem ser projectados para atender a diferentes necessidades dos sistemas, portanto, há que se tomar bastante cuidado na fase de definição dos DADOS.

12 Sistema de Gestão de Base de Dados SGBD SGBD Software que incorpora as funções de definição, recuperação e alteração de dados numa base de dados Aplicação SGBD Base de Dados Software que serve para armazenar e aceder a dados numa base de dados

13 Sistema de Gestão de Base de Dados Independência de dados - Independência de dados - SGBD oferece isolamento das aplicações em relação aos dados, ou seja, altera- ções no modelo de dados (estrutura) afeta pouco as aplicações Abstracção de dados - Abstracção de dados - aplicações não se preocupam com detalhes físicos de implementação (localização no meio de armazenamento, existência de índices, caminhos de acesso..) Controlo de segurança - Controlo de segurança - que utilizador pode fazer o quê sobre qual dado Tolerância a falhas - Tolerância a falhas - recuperação em caso de falha imperceptível ao utilizador Controlo a acesso concorrente - Controlo a acesso concorrente - muitos utilizadores acedem à base de dados ao mesmo tempo

14 Projeto de Base de Dados - Aplicação Onde vou aplicar isto? Quando estudamos as metodologias de desenvolvimento de sistemas, estudamos análise de requisitos e definimos o que é necessário ser executado, que rotinas devem ser desenvolvidas para atender às necessidades do cliente, isto é, quais as informações que o cliente necessita para ter sucesso no seu negócio. Porém, para obter estas informações, é preciso definir quais são os dados que devem ser armazenados na base de dados para que, posteriormente, possamos devolver ao cliente, as informações que satisfaçam as exigências definidas por ele, ou seja, as necessidades de informação do negócio.

15 Abordagem Entidade-Relacionamento Modelagem ConceptualProjecto Conceptual A primeira etapa do projecto de uma base de dados é a construção de um modelo conceptual, a chamada Modelagem Conceptual ou Projecto Conceptual. Modelagem ou Projecto Conceptual A Modelagem ou Projecto Conceptual tem por objectivo obter uma descrição abstrata, independente de implementação em computador, dos dados que serão armazenados na base de dados. Projecto CONCEPTUAL Projecto CONCEPTUAL Projecto LÓGICO Projecto LÓGICO Projecto FÍSICO Projecto FÍSICO

16 Abordagem Entidade-Relacionamento Dentre as técnicas mais difundidas e utilizadas para a modelagem conceptual dos dados destacam-se: –a Abordagem Entidade-Relacionamento, definida por Peter Chen em 1976, e que segue a metodologia de desenvolvimento Estruturado de Sistemas –a UML (Unified Modeling Language), que é uma metodologia de desenvolvimento Orientada a Objectos Ainda não existe uma Base de Dados totalmente Orientada a Objectos. A UML é uma excelente metodologia porém, até este momento, depara-se com um grande problema: Ainda não existe uma Base de Dados totalmente Orientada a Objectos.

17 Abordagem Entidade-Relacionamento Mapeamento Objecto- Relacional Para solucionar tal problema, a UML utiliza um procedimento denominado Mapeamento Objecto- Relacional, de forma a permitir que as estruturas definidas no modelo Orientado a Objectos possam ser implementadas numa Base de Dados Relacional. O Mapeamento, portanto, transforma (converte) o Diagrama de Classes num Modelo Entidade- Relacionamento (ER). Daí a necessidade de se conhecer o conceito de ER.

18 MODELO ENTIDADE-RELACIONAMENTO Peter Chen, ao formular a proposta do modelo E-R baseou-se na compreensão da realidade em que se situava o problema e não na visão de um sistema de aplicação. CHEN preocupou-se em destacar a importância de reconhecer os objectos (coisas) que compõem a realidade, independentemente de se preocupar com formas de tratamento da informação, procedimentos, programas, etc Estes objectos ele classificou em dois grupos: ENTIDADE e RELACIONAMENTO

19 FazContém O facto acima pode acontecer em qualquer realidade. Ele deve, portanto, ser retratado através de elementos básicos que compõem o Modelo ER. PEDIDO CLIENTE PRODUTO Abordagem ENTIDADE-RELACIONAMENTO

20 PSI – Módulo 13 Modelo E-R Procura simular a realidade: esta é vista como um conjunto de entidades, interagindo umas com as outras, através de um conjunto de associações ou relações.

21 PSI – Módulo 13 Etapas do Modelo E-R Etapa 1 – Diagramas E-R: Análise das necessidades de informação e elaboração do Modelo E-R. Etapa 2 – Tabelas não Normalizadas: Transformação do Diagrama E-R num conjunto de Tabelas Etapa 3 – Tabelas Normalizadas: Normalização das Tabelas

22 MODELO ER Os componentes básicos do Modelo ER são:ENTIDADESRELACIONAMENTOSATRIBUTOS

23 PSI – Módulo 13 Modelo E-R Entidade: Objectos ou conceitos que possuem um conjunto de características comuns, compostas ou caracterizadas por um conjunto de atributos. Corresponde a uma tabela de uma Base de Dados. O número de atributos de uma entidade chama-se grau de relação

24 Modelo ER: ENTIDADE ENTIDADE Conjunto de objectos da realidade modelada sobre os quais se deseja manter informações na Base de Dados (Heuser). Considera-se objecto qualquer coisa perceptível ou manipulável. É uma coisa ou um objecto no mundo real que pode ser identificada de forma única em relação aos outros objectos;

25 Modelo ER: ENTIDADE ENTIDADE Uma ENTIDADE é uma representação de um CONJUNTO DE DADOS do negócio, um conjunto de informações com as mesmas características; as suas instâncias (ocorrências), são as representações destes dados. É representada através de um rectângulo, com o nome da entidade em seu interior CLIENTE PRODUTO FUNCIONÁRIO NOTA FISCAL NOTA FISCAL ORDEM DE PRODUÇÃO ORDEM DE PRODUÇÃO

26 Modelo ER: ENTIDADE Exemplo: CLIENTE O rectângulo CLIENTE representa o conjunto de todas as pessoas sobre as quais se deseja manter informações na BD. Este objecto particular (um dos clientes) é chamado de OCORRÊNCIA de uma entidade, neste caso CLIENTE.

27 Modelo ER: ENTIDADE As instâncias (ocorrências) de uma entidade não são representadas no DER mas são semanticamente interpretadas no mesmo, ou seja, ao visualizar uma entidade, devemos entendê-la como uma tabela de dados, onde cada linha representa uma instância da mesma. FUNCIONÁRIO MatrículaNome Data Admissão 4456 João Carlos da Silva 29/04/ Sílvia de Oliveira 30/02/ Carla Martinez 14/04/92

28 Modelo ER: ENTIDADE Exemplo: Quais são as coisas que vocês conseguem identificar nos LABORATÓRIOS de INFORMÁTICA? Computadores Mesas Pessoas Quadro Canetas

29 Modelo ER: ENTIDADE PERGUNTA 1 !! Todas estas coisas identificadas deveriam ter os seus dados armazenados, caso nós quiséssemos desenvolver um Sistema para Controlar os Equipamentos dos Laboratórios de Informática? NÃO!!! Pois se quero controlar equipamentos, a entidade PESSOA, por exemplo, não teria importância alguma no contexto

30 Modelo ER: ENTIDADE PERGUNTA 2!! Se ao invés do caso anterior, nós quiséssemos desenvolver um sistema para controlar não somente os Equipamentos existentes mas também a Utilização dos Laboratórios ? Neste caso temos que lembrar que quem utiliza, ou seja, as PESSOAS são de interesse do sistema

31 Modelo ER: PROPRIEDADES Além de especificar as entidades, ou seja, os objectos sobre os quais se deseja manter informações, o MER deve permitir a especificação das PROPRIEDADES destas entidades. Estas propriedades são : Participar num Relacionamento Ter um ATRIBUTO

32 Modelo ER: RELACIONAMENTO RELACIONAMENTO Conjunto de associações entre entidades DEPARTAMENTO PESSOA LOTAÇÃO Um conjunto de objectos classificados como pessoa (Entidade PESSOA) ; Um conjunto de objectos classificados como departamento (Entidade DEPARTAMENTO); Um conjunto de ASSOCIAÇÕES, cada uma ligando um departamento a uma pessoa (relacionamento LOTAÇÃO);

33 Modelo ER: RELACIONAMENTO No nosso dia-a-dia convivemos com os mais variados tipos de entidades (objectos reais), que são descritos por uma série de atributos (características) e que expressam uma realidade de existência. Estas entidades do dia-a-dia estão relacionadas de forma a mostrar a realidade com um conteúdo lógico As pessoas Moram em Apartamentos; Os apartamentos Formam Condomínios; Os condomínios Localizam-se em Ruas ou Avenidas; As Avenidas e Ruas Estão numa Cidade

34 Modelo ER: RELACIONAMENTO RELACIONAMENTO Assim como ocorre com as entidades, temos as ocorrências ou instâncias de relacionamentos. Isto pode ser melhor observado através do Diagrama de Ocorrências.

35 PSI – Módulo 13 Modelo E-R Representação das Entidade e Atributos AutomóvelLivros Automovel (Marca, Modelo, Ano, Cor, Cilindrada, Nº quilómetros) Livro (Título, Nº Páginas, Anos, Autor, Língua)

36 PSI – Módulo 13 Modelo E-R Relacionamentos entre entidades Relações unárias Relações binárias Relações ternárias Empregados R Clientes R Contas RealizadoresFilmes Actores R

37 Um para Um – 1:1 Uma entidade em A está associada no máximo a uma entidade em B, e uma entidade em B está associada a no máximo uma entidade em A. a1a2a3a4a1a2a3a4 b1 b2 b3 b 4

38 PSI – Módulo 13 Modelo E-R Relação Binária 1:1 (Um para Um) Leitura: 1 Professor lecciona uma e uma só Disciplina 1 Disciplina é leccionada por um e um só Professor

39 PSI – Módulo 13 Modelo E-R Relação Binária 1:1 (Um para Um)

40 Um para muitos – 1:N Uma entidade em A está associada a várias entidades em B. Uma entidade em B, entretanto, deve estar associada no máximo a uma entidade em A. a1a2a1a2 b1 b2 b3 b 4

41 PSI – Módulo 13 Modelo E-R Relação Binária 1:N (Um para Vários) Leitura: Num Departamento trabalham vários Empregados 1 Empregado trabalha num e num só Departamento

42 PSI – Módulo 13 Modelo E-R Relação Binária 1:N (Um para Vários)

43 PSI – Módulo 13 Modelo E-R Relação Binária 1:N (Um para Vários)

44 Muitos para muitos – N:N ou M:N Uma entidade em A está associada a qualquer número de entidades em B e uma entidade em B está associada a um número qualquer de entidades em A. a1a2a3a4a1a2a3a4 b1 b2 b3 b 4

45 PSI – Módulo 13 Leitura: 1 Autor escreve vários Livros 1 Livro é escrito por vários Autores Modelo E-R Relação Binária N:N (Vários para Vários)

46 PSI – Módulo 13 Modelo E-R Relação Binária N:N (Vários para Vários)

47 PSI – Módulo 13 Modelo E-R Relação Binária N:N (Vários para Vários)


Carregar ppt "Programação e Sistemas da Informação Módulo 13 Técnicas de Modelação de Dados."

Apresentações semelhantes


Anúncios Google