Vous êtes sur la page 1sur 6

Banco de Dados 10 passos para a criao de um modelo conceitual de banco de dados Jos Ferreira Prata

Introduo Existem notaes e denominaes diferentes para designar os componentes de modelo conceitual, principalmente no que se refere ao tipo de orientao do banco de dados, seja relacional, objeto-relacional ou orientado a objetos. O nosso foco ser o modelo relacional. A correta identificao, principalmente das entidades e seus respectivos relacionamentos dependente da capacidade de cada pessoa. Como a experincia s obtida atravs do tempo e dos trabalhos realizados, durante esse perodo de aprendizado os projetos podem ter seus custos aumentados pelas correes de erros ou mesmo ter sua qualidade comprometida de forma irreversvel. Como contornar esta essa dificuldade? Acredito que a resposta esteja em uma das melhores prticas da qualidade de software, que o estabelecimento de um processo padro que oriente e aprimore continuamente o desenvolvimento. importante frisar que todo projeto de banco de dados deve comear sempre com requisitos bem descritos, que traduzam de forma adequada as necessidades e medidas de qualidade esperadas pelo cliente. Estes requisitos aliados a boas prticas de desenvolvimento aumentaro de forma considervel a probabilidade de o produto desenvolvido ter a qualidade desejada. Antes de iniciar as consideraes sobre nosso processo de elaborao do modelo conceitual necessrio termos conhecimento do seguinte: Substantivos que designam algum (fornecedor, cliente, funcionrio, aluno); documentos (nota fiscal, pedido, conta corrente, estoque) ou ainda coisas (peas, produtos) representam objetos do mundo real que podem vir a fazer parte do modelo conceitual. Vale ressaltar aqui, que nem todos os objetos citados nos requisitos faro parte do modelo e para separ-los, podemos utilizar algumas regras simples das quais falaremos mais adiante. Verbos e preposies por sua vez servem para que identifiquemos o relacionamento entre as entidades, pois demonstram as ligaes existentes entre elas. Por exemplo, quando lemos em um texto a frase Listar empregados por departamento conclumos que a entidade empregado tem um tipo de relacionamento que podemos chamar de trabalha no com a entidade departamento. A seguir apresentaremos um exemplo que servir para demonstrar a sequncia de utilizao dos dez passos e depois iremos resolver dois exerccios tentando aplicar as regras apresentadas neste texto.

1/6

Banco de Dados
Exemplo Um pequeno pas resolveu informatizar a sua nica delegacia de polcia para criar um banco de dados onde criminosos sero fichados, as vtimas tambm sero cadastradas e todas as armas apreendidas com os criminosos devero ser fichadas para que no sejam reutilizadas. Mesmo as chamadas armas brancas tais como facas, porretes, etc., recebero um nmero de identificao. As armas quando for o caso, ficaro relacionadas ao crime cometido para possvel utilizao no julgamento do criminoso. O banco de dados alm de fornecer dados pessoais de criminosos, de vtimas e de armas, tambm deve possibilitar saber quais crimes determinados criminoso cometeu, que crimes determinada vtima sofreu e quais criminosos a atacaram em cada crime. Mensalmente sero emitidos relatrios e estatsticas de acordo com a solicitao do chefe da delegacia. Todo registro de crime dever ter o visto do chefe da delegacia. Roteiro para elaborao do modelo conceitual 1) Identificando todos os substantivos que designam objetos. Leia o texto e grife todos os substantivos que designam objetos do mundo real, tais como pessoas, coisas, documentos, controles, sistemas, etc. Considere o substantivo apenas uma vez, mesmo que ele aparea vrias vezes. Elimine tambm aqueles substantivos que mesmo com denominaes diferentes representam o mesmo objeto. Faa uma lista dos objetos grifados, pois ser atravs deles que sero identificadas as entidades que faro parte do modelo conceitual. Resultado: pas, crime, delegacia de polcia, banco de dados, criminosos, vtimas, armas, relatrios, estatsticas, chefe da delegacia, visto do chefe, julgamento, nmero de identificao. Observem que registro de crime no foi listado, pois equivalente a crime. 2) Descartando substantivos que como entidade teriam apenas uma ocorrncia. Agora faa uma das seguintes perguntas: se esse substantivo for transformado em entidade ser um conjunto de apenas uma ocorrncia? ou Caso essa entidade venha a se transformar em tabela ter apenas uma linha? Caso a resposta seja afirmativa descarte esse substantivo. Resposta: delegacia de polcia. 3) Descartando substantivos que servem apenas para entendimento do problema. Mesmo substantivos que designam objetos podem servir apenas para entendimento do problema e, neste caso, no devem fazer parte do modelo conceitual como entidades. Para identific-las faa a seguinte pergunta: preciso guardar informaes sobre esse objeto? Caso a resposta seja negativa, esse substantivo deve ser descartado. Resultado: banco de dados, pas e chefe de delegacia.

2/6

Banco de Dados
4) Descartando objetos que so referncia a uma futura aplicao. Em um projeto de banco de dados relacional no existe no modelo conceitual preocupaes com os programas que acessaro ou manipularo os dados. Assim, citaes a telas relatrios, estatsticas, clculos e tudo aquilo que signifique manipulao dos dados no deve ser considerado entidade. Resultado: relatrios e estatsticas. 5) Descartando substantivos que se transformados em entidades teriam apenas um atributo. Para isso, faa a seguinte pergunta: se essa entidade vier a ser uma tabela, quantas colunas teria? Se a resposta for apenas uma, verifique a qual outra entidade esse atributo dever pertencer. Resultado: visto do chefe, numero de identificao. Este substantivo na realidade dever ser um atributo de uma possvel entidade crime, mas no uma entidade independente. 6) Listando os substantivos que se tornaro entidades Depois destas etapas temos a lista de substantivos que se tornaro as entidades do nosso modelo conceitual. Resultado: crime, criminoso, vtima e arma. 7) Identificando os relacionamentos fsicos e definindo seus tipos atravs de verbos ou preposies que demonstrem relaes de dependncia ou existncia entre as entidades. Normalmente no prprio texto identificamos as relaes atravs de verbos ou preposies. Algumas poucas vezes essas relaes esto ocultas e precisaremos fazer uma anlise mais apurada do texto, porm isso no a regra. Tipos de relacionamentos so representados no desenho do modelo ER no formato de losangos e seus nomes devem representar da melhor forma possvel qual a ligao entre as entidades. O nome do relacionamento geralmente o verbo que melhor representa a ligao entre as entidades. Efetuando novamente a leitura dos requisitos: Resultado: arma usada crime, criminoso comete crime, criminoso ataca vtima, vtima sofre crime. 8) Estabelecendo o grau de relacionamento entre as entidades. O grau de relacionamento entre entidades demonstra o tipo de ligao fsica entre elas. Ligaes fsicas que futuramente iro permitir uma adequada extrao dos dados armazenados no banco de dados. O grau de relacionamento mais comum aquele chamado de grau dois ou binrio, assim chamado por representar a ligao entre duas entidades. Existem ainda casos onde podem ocorrer outros tipos de relacionamentos de grau trs, tambm chamado de ternrio, que ocorrem nos casos onde uma entidade se relaciona com o agrupamento de duas entidades ao invs de se relacionar com cada uma delas isoladamente.

3/6

Banco de Dados
9) Estabelecendo a razo da cardinalidade do relacionamento entre as entidades. A razo da cardinalidade demonstra quantas ocorrncias de uma entidade esto relacionados a uma ocorrncia de uma outra entidade. Esse relacionamento depende das regras de negcio, ou seja, a forma de operar da organizao. Porm, mesmo conhecendo o negcio, muitas vezes nos confundimos com tais um pra l e muitos pra c ou muitos pra l e muitos pra c. Conforme ser demonstrado nos resultados descritos a seguir, sugerimos visualizar sempre os dois lados do relacionamento. Por exemplo, se observarmos que um criminoso ataca muitas vtimas, tambm devemos observar que uma vtima pode ser atacada por muitos criminosos. Vamos destacar esta anlise entre criminosos e vtimas organizando-a da seguinte forma: . Um criminoso ATACA Muitas Vtimas. Passamos a seguir para o outro lado do relacionamento: . Uma vtima pode ser ATACADA por Muitos Criminosos. Consideramos ento s as duas ltimas palavras das duas frases encontramos: . Muitas Vtimas Muitos Criminosos A seguir temos a anlise completa do nosso problema Resultado: Uma Arma PODE SER USADA em Muitos Crimes Um crime PODE TER Muitas Armas Ento Muitos Crimes: - Muitas Armas Um criminoso PODE COMETER Muitos Crimes Um Crime PODE SER COMETIDO POR Muitos Criminosos Ento: Muitos Criminosos Muitos Crimes Um criminoso ATACA Muitas Vtimas Uma Vtima PODE SER ATACADA POR Muitos Criminosos Ento: Muitos Criminosos Muitas Vtimas Uma vtima PODE SOFRER Muitos Crimes Um Crime PODE TER Muitas Vtimas Ento: Muitos Crimes Muitas Vtimas

4/6

Banco de Dados
10) Identificando os atributos de cada entidade Todo objeto tem suas propriedades e h a necessidade de consider-las na definio do modelo conceitual. Propriedades equivalem a caractersticas do objeto. Por exemplo, uma pessoa tem como caractersticas a altura, peso, cor, etc. Um fornecedor tem o CNPJ, razo social, endereo, etc. Um estudante tem o nmero de matrcula, o nome, etc. Seguindo nosso processo teremos o seguinte resultado: Criminoso = {rg, nome, endereo} Vtima = Crime = Arma = {rg, nome, endereo} {nmero_bo, descrio, local, data, visto_chefe} {nmero, descrio} Modelo conceitual Exemplo

rg

nome

endereo M Ataca M

rg

nome Vtima

endereo

Criminoso

M nmero_bo M Comete Crime data local M Sofre

descrio M Usada

visto_chefe

M nmero descrio

Arma

5/6

Banco de Dados

Exerccios: 1) Uma escola deseja disponibilizar em uma intranet as notas de seus alunos por matria e por bimestre, sendo que em semestre sempre ter duas notas bimestrais e a mdia final do semestre ser calculada pelo sistema. Na pgina, o aluno poder visualizar o cdigo da matria, a descrio da matria, bimestre, nota e no final do semestre a respectiva mdia final. Tambm poder consultar quais matrias cursa no semestre, e respectivos professores. O professor pode visualizar quais matrias leciona em cada curso e lanar as notas de cada aluno. A escola tambm deseja extrair relatrios ou pesquisas sobre as matrias que o aluno cursa e vice-versa e ainda quais professores lecionam que matria. Para que no haja confuso entre matrias com o mesmo nome, mas em cursos e contedos diferentes, as matrias possuiro um cdigo prprio que as distinguiro por curso. 2) Uma empresa de informtica presta consultoria para vrios clientes desenvolvendo projetos de sistemas envolvendo banco de dados. Cada filial dessa consultoria possui seus prprios clientes, no podendo uma filial prestar servios cliente da outra. Podem, porm, os funcionrios de uma filial serem utilizados por outra quando isso for necessrio. Como em casa de ferreiro o espeto de pau, a consultoria no dispe de um sistema que aponte: que funcionrios esto alocados em qual projeto; horas de funcionrio em cada projeto; qual projeto pertence a qual cliente; a qual filial o cliente est vinculado e o total de horas de cada projeto.

6/6

Vous aimerez peut-être aussi