Você está na página 1de 45

Conceitos e Aplicaes Bsicas para Modelagem de Dados

Conceitos e Aplicaes Bsicas para Modelagem de Dados


16
Por Alvaro Caetano Pimentel Sobrinho

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

Resumo Este manual uma continuao da proposta de discusso de acesso aberto, iniciada no artigo Open Access Ser ou n!o ser"!, "ue est# dispon$vel no endereo http%&&artigocienti'ico.tebas.(inghost.net&pes"uisadores&)mnu*2+smnu*,+id*29,-., e corresponde / segunda parte do material "ue 'oi disponibili0ado primeiramente no manual #ree Acess O M$S%& na prtica!, tambm no mesmo endereo acima, o "ual apresenta a implementao de uma base de dados 12345. 6este manual sero apresentados os mtodos b#sicos para a modelagem de dados "ue incluem t7picos de abstrao, modelagem l7gica, '$sica e normali0ao. 8lm disso, composto de uma srie de e9erc$cios resolvidos "ue podem ser utili0ados para treinar, e serem discutidos, a cada parte avanada. 8 :ltima parte da proposta de disseminao de conhecimentos ser# a apresentao de uma apostila de uso das 'erramentas ;83E M$S%& 'or(bench e M$S%& %uer$ Bro)ser. Palavras Chave% 1odelagem de dados, 6ormali0ao, 8bstrao

16

Abstract <his manual is a continuation o' proposal open access discussion that began in the article Open Access *o be or not"!, and it corresponds to the second part o' the material that is available 'irst in the manual #ree Access *he M$S%& in the practice! =hich presents the construction o' a 12345 database. >n this manual =ill be presented the basic methods 'or the data modeling that include abstraction topics, logical?ph2sical modeling and normali0ation. 1oreover, is composed o' a series o' e9ercises that can be used to train, and to be argued, to each advanced part. <he last part o' the proposal o' dissemination o' (no=ledge =ill be the presentation o' use o' the tools ;83E M$S%& 'or(bench and M$S%& %uer$ Bro)ser. +e$ 'ords% @ata modeling, 6ormali0ation, 8bstraction

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

<7picos A. >ntroduo 2. ;onceitos B#sicos 2.A 2.2 2.2.D -. D. Bases de @ados 3istemas de Cerenciamento de Bases de @ados 3istemas de Bases de @ados EbFetivos de um 3istema de Bases de @ados

, , , , , . G G G G 9 9 9 A0 A0 AA AA AA AA A2 A2 A2 A2 A2 AAAAAAA16

8bstrao de @ados 1odelos de @ados D.A 1odelo ;onceitual&57gico de @ados D.A.A Ebteno de um 1odelo de @ados D.A.2 1odelo de @ados Baseado em EbFetos D.A.- 1odelo de @ados Baseado em Hegistros D.A.-.A 1odelo de @ados Helacional D.A.-.2 1odelo de @ados em Hede D.A.-.- 1odelo de @ados Iier#r"uico

,.

@e'inio e 1anipulao de @ados ,.A ,.2 ,.@@5 @15 @55

..

JunKes em 3istemas de Bancos de @ados ..A Lsu#rios ..2 8dministrador ..2.A 8dministrao @ados M8@N ..2.2 8dministrao de Bases de @ados M8B@N

G.

1odelo Entidade Helacionamento M1EHN G.A @e'inio G.2 EbFetivo G.- Jases do OroFeto de Bases de @ados G.-.A ;@1 P ;onceptual @ata 1odel G.-.2 5@1 P 5ogical @ata 1odel G.-.- O@1 P Oh2sical @ata 1odel

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

Q. 9.

Entidades e ;onFuntosREntidade Q.A ;omponentes do @iagrama ERH MOeter ;henN% 8tributos 9.A @om$nio de um 8tributo

AAAD AD A, A, A, A. A. AG A9 A9 20 2A 2A 2A 22 22 22, 2G 2Q 2Q -0 -A
16

A0. Helacionamentos AA. HestriKes de 1apeamento M;ardinalidadeN AA.A LmRparaRum AA.2 LmRparaRmuitos AA.- 1uitosRparaRmuitos A2. E9erc$cios A-. OroFeto de ;haves AD. 8utoRHelacionamento A,. 8gregao A.. Cenerali0ao P Especiali0ao A..A <otal e Oarcial A..2 6oRE9clusiva A..- 1:ltipla AG. Helacionamentos de Crau 3uperior a 2 AQ. @ependSncia E9istencial e Entidades Jracas A9. E9erc$cios 20. 6ormali0ao 20.A Orimeira Jorma 6ormal MAJ6N 20.2 3egunda Jorma 6ormal M2J6N 20.- <erceira Jorma 6ormal M-J6N 2A Julho de 2009 22 E9erc$cios 3oluKes 22.A 3oluKes dos e9erc$cios A2.A a A2.G 22.2 3oluKes dos e9erc$cios A9.A a A9.Q 22.- 3oluKes dos e9erc$cios 2A.A a 2A.D
alvaro_pimentel@uol.com.br

--, -9

Conceitos e Aplicaes Bsicas para Modelagem de Dados

>ntroduo
8 importTncia da in'ormao para a tomada de decisKes nas organi0aKes tem impulsionado o desenvolvimento dos sistemas de processamento de in'ormaKes. 8 de'inio de in'ormao pode ser dada, restringindoRse o seu conceito / in'orm#tica, como um dado "ue possui unicidade!, atomicidade! e "ue F# tenha sido tratado, de tal maneira "ue agregue signi'icante e signi'icado representando o obFeto de origem, real ou abstrato. Uale lembrar "ue a ;iSncia da >n'ormao possui uma de'inio mais abrangente de in'ormao, mas para o estudo de bases de dados, neste n$vel, essa mais restrita absolutamente satis'at7ria. 8lgumas 'erramentas pertinentes ao tratamento da in'ormao%
processadores de texto (editorao eletrnica), planilhas (clculos com tabelas de valores), Sistemas de Gerenciamento de Bancos de Dados SGBD

A. ;onceitos B#sicos
2.A Bases de @ados
Lma base de dados pode ser de'inida como uma coleo de dados interRrelacionados representando in'ormaKes sobre um dom$nio espec$'ico.
!xemplos" lista tele#nica, controle do acervo de uma biblioteca, sistema de controle dos recursos humanos de uma empresa$

16

2.2 3istemas de Cerenciamento de Bases de @ados R


3CB@
E 3CB@, do inglSs Database Management System P @B13 P V um software com recursos espec$'icos para 'acilitar a manipulao das in'ormaKes dos bancos de dados e o desenvolvimento de programas aplicativos. 8lm disso permite o arma0enamento de grandes volumes de dados, estruturados em registros e tabelas, com recursos para acesso e processamento das in'ormaKes. E9emplos% Eracle, 12345, 345 3erver, >nterBase, >ngres, Oarado9W, 8ccessW, @BaseW. W Desktop Database Management Systems

2.- 3istemas de Bases de @ados


V um sistema de manuteno de registros por computador, envolvendo "uatro componentes principais%
dados, hard%are, so#t%are e usurios$

Julho de 2009

E sistema de bancos de dados pode ser considerado como uma sala de ar"uivos eletrXnica. E9iste uma srie de mtodos, tcnicas e 'erramentas "ue visam sistemati0ar o desenvolvimento de sistemas de bancos de dados.

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

2.D EbFetivos de um 3istema de Bases de @ados


P >solar os usu#rios dos detalhes mais internos do banco de dados Mabstrao de dadosN. P Orover independSncia de dados /s aplicaKes Mestrutura '$sica de arma0enamento e / estratgia de acessoN.

Uantagens%
P rapide0 na manipulao e no acesso / in'ormao, P reduo do es'oro humano Mdesenvolvimento e utili0aoN, P disponibili0ao da in'ormao no tempo necess#rio, P controle integrado de in'ormaKes distribu$das 'isicamente, P reduo de redundTncia e de inconsistSncia de in'ormaKes, P compartilhamento de dados, P aplicao autom#tica de restriKes de segurana, P reduo de problemas de integridade

2., ;omponentes de um 3istema de Bases de @ados 3CB@

16

Orogramas

Bases de @ados

Lsu#rio

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

2. 8bstrao de @ados
E sistema de bancos de dados deve prover uma viso abstrata de dados para os usu#rios. 8 abstrao se d# em trSs n$veis% 6$vel de viso dos usu#rios

Uiso A

Uiso2

..........

Uiso 6

6$vel do conFunto de usu#rios

;onceitual

16

6$vel de 8rma0enamento

J$sico

6$vel de visKes do usu#rio%

descreve partes do banco de dados, de acordo com as necessidades de cada usu#rio, individualmente.

6$vel ;onceitual&57gico%descreve 6$vel J$sico% n$vel

"uais dados esto&sero arma0enados e seus relacionamentos. 6este n$vel, o banco de dados descrito atravs de estruturas relativamente simples, "ue podem envolver estruturas comple9as no n$vel '$sico. mais bai9o de abstrao. @escreve como os dados esto realmente arma0enados, englobando estruturas comple9as de bai9o n$vel.

-. 1odelo de @ados
V a representao gr#'ica e te9tual de E3<HL<LH83, EOEH8@EHE3 e das HECH83, "ue de'inem os dados, assim como as restriKes de consistSncia e integridade

Estruturas
3o 'ormadas de Hegras MasserKes "ue regulam o 'uncionamento da estruturaN e Eperadores "ue so comandos "ue permitem a manipulao das estruturas segundo um comportamento estabelecido.

D.A 1odelo ;onceitual&57gico de @ados M;@1&5@1N


Julho de 2009
V uma atividade desenvolvida em 'ases variadas do processo metodol7gico de desenvolvimento de sistemas, com a 'inalidade de levantar in'ormaKes MHE4L>3><E3 JL6;>E68>3N para a obteno do modelo de dados.

D.A.A Ebteno de um 1odelo de @ados


@ecomposio 'uncionalY 8n#lise de eventosY 8n#lise das regras de neg7cio
alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

@ecomposio 'uncional M8n#lise da hierar"uia de JunKesROrocessosR8tividadesN


>denti'icao de entidades e9ternas ou de dep7sitos de dados relacionados a cada processo "ue sugere entidades de dados "ue iro compor o modelo Mconceito de EUE6<E tra0ido pela 8n#lise EssencialN

8n#lise de eventos P so 'atos "ue provocam est$mulos para os "uais os sistemas


devero conter processos de reposta.

8n#lise das regras de neg7cio P V o estudo de an#lise dos dados, processos, obFetos e
suas correlaKes. @ivideRse em%

#atos P assero "ue estabelece "ue um obFeto possua determinadas propriedades ou


desempenha determinado papel.
!x$" &'(!)*! emite +,*-., &'(!)*! possui endereo &/ ()+0 atua em )e% 1or2 (su3eito verbo ob3eto)

Restries P so limitaKes colocadas aos 'atos para a diminuio de ocorrSncias v#lidas


na"uele universo
!x$" -m 4!D(D0 deve ser colocado para um &'(!)*! cadastrado

16

Regras de deriva!o P so condiKes colocadas sobre 'atos e "ue podem gerar outros
'atos.
!x$" Se um 4!D(D0 #or e#etuado at5 o dia / ele ser processado no m6s se7uinte$

,ntidade P Hepresentao abstrata de um obFeto do mundo real MOE33E83 5LC8HE3


;E>383N, e podem ser identi'icadas, por similaridade, com an#lise sint#tica nas linguagens naturais% HetTngulo P ;FREntidade MsuFeito & obFeto da sentenaN Elipse P 8tributo MadFetivoN 5osango P ;FRHelacionamento MverboN 5inha P Entidade com Helacionamento e 8tributo a Entidade Madvrbios e adFuntosN

Con-unto.,ntidade P Crupo de entidades "ue possuem caracter$sticas semelhantes


!x$" &on3unto entidade +0.)!&!D0.

Relacionamento P Estrutura "ue indica a associao de elementos de duas ou mais


entidades.

Atributos de relacionamento P @epende de todos os conFuntosRentidade associados


entre si.

Cardinalidade P HestriKes de 1apeamento


LmRparaRum MA%AN% Entidade em 8 associada a uma, e somente uma, entidade em B LmRparaRmuitos MA%6N% Entidade em 8 associada a "ual"uer nZ de entidades em B 1uitosRparaRmuitos M6%6N% Entidade em 8 associada a "ual"uer nZ de entidades em B e viceRversa.

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

D.A.2 1odelo de @ados Baseado em EbFetos


@e'ine a descrio dos dados nos n$veis conceitual&l7gico e de visKes de usu#rios. 6o modelo orientado a obFetos o c7digo e9ecut#vel parte integrante do modelo de dados.
!x$" !ntidade .elacionamento$ rua nome cidade n8mero saldo

&'(!)*!

40SS-(

&0)*,

D.A.- 1odelo de @ados Baseado em Hegistros


P @e'ine a descrio dos dados nos n$veis conceitual&l7gico e de visKes de usu#riosY P E banco de dados estruturado em registros de 'ormatos 'i9os, de diversos tiposY P ;ada tipo de registro tem sua coleo de atributosY P I# linguagens espec$'icas para e9pressar consultas e atuali0aKes no banco de dados.
!x$" 9odelo .elacional, 9odelo :ierr;uico$

16

D.A.-.A

1odelo de @ados Helacional


6o 1odelo Helacional, dados e relacionamentos entre dados so representados por tabelas, cada uma com suas colunas espec$'icas. <anto os dados "uanto os relacionamentos so representados por tabelas. Orescinde de estruturas de $ndice e'icientes e hard=are ade"uado para alcanar desempenho vi#vel em situaKes pr#ticas.
9odelo .elacional *abela &liente

!x$"

c/d .cliente

nome

rua

cidade

0A, 02A 0-G


*abela &onta

8lvaro 1#rio Ciselle

5aura <eles 5aranFeiras >pS

Hio de Janeiro Hio de Janeiro ;ampos do Jordo

*abela &liente &onta

Julho de 2009

nro.conta 900 ,,. .DG Q0A

saldo ,, A.000 ,.-.. A0.,--

c/d .cliente

0A, 02A 02A 0-G 0-G

nro.conta 900 ,,. .DG Q0A .DG

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

16

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

D.A.-.2

1odelo de @ados em Hede


Es dados so representados por coleKes de registros e os relacionamentos por elos.

8lvaro

5aura <eles

Hio de Janeiro

900

,,

1#rio

5aranFeiras

Hio de Janeiro

,,.

A000

16

.DG Ciselle >pS ;ampos do Jordo Q0A

,.-..

A0.,--

D.A.-.-

1odelo de @ados Iier#r"uico


Es dados e relacionamentos so representados por registros e ligaKes, respectivamente. Es registros so organi0ados como coleKes arbitr#rias de #rvores.

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

, @e'inio e 1anipulao de @ados


Es bancos de dados possuem uma estrutura "ue arma0ena as in'ormaKes pertinentes a tabelas, vie=s, registros, de'iniKes de dados e atributos. 8pesar de possu$rem nomes ou identi'icaKes di'erentes, todo 3CB@ possui um es"uema e um subes"uema.

Es"uema do Banco de @ados


E es"uema arma0ena o proFeto geral! MestruturaN do banco de dados e possui as seguintes caracter$sticas% P no muda com 're"[SnciaY P h# um es"uema para cada n$vel de abstrao e um subes"uema para cada viso de usu#rio. 8 construo de um es"uema acontece atravs de uma linguagem apropriada para a trans'ormao de um modelo conceitual&l7gico em um modelo '$sico. 8 transcrio ocorre por meio de uma 'erramenta ;83E P Computer Aided Software Engineer Malgo como% linguagem de construo para au9iliar / computaoN. Esta linguagem conhecida como @@5 P Data Definition Language.

,.A @@5 P 5inguagem de @e'inio de @ados


Oermite especi'icar o es"uema do banco de dados, atravs de um conFunto de de'iniKes de dados. 8 compilao dos comandos em @@5 arma0enada no dicion#rio Mou diret7rioN de dados. 6este ponto so criados os metadados "ue iro compor o es"uema do proFeto "ue estivem em transcrio. Ebs.% 1etadados, por de'inio, so dados "ue de'inem outros dados. 8ssim os comandos compilados so metadados dos comandos originais.

16

,.2 @15 P 5inguagem de 1anipulao de dados


8 manipulao dos dados em uma base acontece atravs de% P recuperao da in'ormao arma0enada, P insero de novas in'ormaKes, P e9cluso de in'ormaKes, P modi'icao de dados arma0enados. Oara "ue os eventos acima seFam poss$veis necess#rio utili0ar uma linguagem apropriada para interagir com a base de tal maneira "ue, atravs da leitura do es"uema, consiga entender o dado e a sua posio na tabela. Esta linguagem conhecida como @15 P Data Manipulation Language P 5inguagem e 1anipulao de @ados "ue permite ao usu#rio acessar ou manipular os dados, vendoRos da 'orma como 'oram de'inidos no n$vel de abstrao mais alto do modelo de dados utili0ado. E processo de interao no @B13 'eito atravs de um conFunto de procedimentos chamado de QUERY Oortanto, uma consulta M !uery!N um conFunto de comandos "ue re"uisitam uma recuperao de in'ormao na base de dados. Oor essa ra0o, a parte de uma @15 "ue envolve recuperao de in'ormao chamada linguagem de consulta.

,.- @55 P Biblioteca de ;omunicao @inTmica


8s !ueries podem ser constru$das diretamente no @B13, ou podem 'a0er uso de uma linguagem de alto n$vel Morientada a obFeto ou noN para e'etuar a interao com a base de dados. 6este caso, alguns programas 'a0em uso de uma @55 P Dynami" Link Library P Biblioteca de ;omunicao @inTmica, "ue instalada no computador, e nada mais do "ue c7digos "ue v#rios aplicativos compartilham e possibilita signi'icativa reduo de mem7ria do computador..

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

. JunKes em 3istemas de Bancos de @ados


@entre as in:meras 'unKes humanas em relao ao uso de uma base de dados duas se destacam na interao com as bases.

..A Lsu#rios
Heali0am operaKes de manipulao de dados. P programadores de aplicaKes, P usu#rios so'isticados, P usu#rios especiali0ados, P usu#rios ingSnuos!.

..2 8dministrador
Oessoa Mou grupoN respons#vel pelo controle do sistema de banco de dados. P 8dministrador de @ados P 8dministrador do 3CB@

16

..2.A 8dministrao de @ados M8@N


P de'inio e atuali0ao do es"uema do banco de dados. P de'inio dos atributos e elementos de dados P de'inio do ;@1

..2.2 8dministrador de Bases de @ados M8B@N


P de'inio da estrutura de arma0enamento e a estratgia Mou mtodoN de acesso, P concesso de autori0ao para acesso a dados, P de'inio de controles de integridade, P de'inio de estratgias para c7pia de segurana e recuperao, P monitoramento do desempenho, P e9ecuo de rotinas de desempenho, P modi'icao da organi0ao '$sica.

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

G 1odelo Entidade Helacionamento M1EHN


G.A @e'inio
1odelo baseado na percepo do mundo real, "ue consiste em um conFunto de obFetos, b#sicos chamados entidades, e nos relacionamentos entre esses obFetos. Entidade% uma representao abstrata de um obFeto do mundo real.
!x$" 0 #ornecedor 4edro, com c<di7o +=

G.2 EbFetivo
Jacilitar o proFeto de bases de dados possibilitando a especi'icao da estrutura l7gica geral do banco de dados

G.- Jases do OroFeto de Bases de @ados


G.-.A ;@1 P ;onceptual @ata 1odel
Hepresenta o modelo de dados conceitual M2Z n$vel de abstraoN "ue ser# e9presso atravs de um @iagrama EntidadeRHelacionamento. 6ormalmente desenvolvido dentro de uma 'erramenta ;83E MEH\>6, 12345 \or(bench, Oo=er @esigner, Hose, etc.N

16

G.-.2 5@1 P 5ogical @ata 1odel


E modelo de dados l7gico a construo l7gica das entidades, atributos e seus relacionamentos. 6este ponto surge a identi'icao da @@5 "ue vai servir para a implementao '$sica do modelo. 8 construo da @@5 ser# autom#tica, se o modelo estiver constru$do em uma 'erramenta ;83E. Em alguns 3CB@s, tal como o @B2 em computadores de grande porte, a gerao da @@5 constru$da manualmente por meio de utilit#rio pr7prio.

G.-.- O@1 P Oh2sical @ata 1odel


8o se e9ecutar a @@5 gerada no 5@1, o 3CB@ cria 'isicamente o modelo l7gico elaborado do ;@1. Essa construo identi'icada como modelo de dados J$sico

Q Entidades e ;onFuntosREntidade
8 estrutura l7gica geral de um banco de dados pode ser e9pressa gra'icamente por um @iagrama EntidadeR Helacionamento

Q.A ;omponentes do @iagrama ERH MOeter ;henN%


Ret0ngulos% representam conFuntosRentidade ,lipses% representam atributos e "uando esto em negrito, signi'icam chave prim#ria P
primary key Mp(N ou chave estrangeira P 1oreign (e$ M'(N &osangos% representam conFuntosRrelacionamento *ri0ngulos% representam especiali0aKes ou generali0aKes de uma entidade &inhas% ligam atributos a conFuntosRentidade e conFuntosRentidade a conFuntosR relacionamento

Julho de 2009

;E@JEH6 'oi escolhida como P+ por"ue s7 h# um c7digo para identi'icar o 'ornecedor


alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

9 8tributos
3o elementos de dados "ue contm as descriKes "ue possibilitam de'inir uma entidade.
!x$"

16
Obs% 6enhum modelo su'icientemente claro se no 'or acompanhado de uma de'inio 'ormal dos elementos e isto 'eito atravs do @icion#rio de @ados. 8o se modelar deveRse sempre ter em mente "ue conceitos, aparentemente, triviais a "uem est# modelando podem no ser para outros pro'issionais. 8ssim, o dicion#rio de dados tem o obFetivo de'inir as "uali'icaKes, compreender e uni'icar conceitos dos dados.

9.A @om$nio de um 8tributo


Es atributos devem ser divididos em grupos de tal maneira "ue possibilite, F# durante a sua de'inio, identi'icar 'atores "ue vo au9iliar na de'inio da base de dados e no desenvolvimento das aplicaKes. <omando como base o e9emplo acima, 'oram de'inidos, a seguir, alguns grupos "ue permitem identi'icar os atributos%

Monovalorado% cada elemento do conFuntoRentidade s7 pode possuir um :nico valor.


!x$" )ome

Composto% di0Rse do atributo "ue 'ormado por um ou mais subRatributos.


!x$" !ndereo

6o e9emplo, poderRseRia, ainda, dividir o endereo em complemento, comercial e


residencial$

Multivalorado% assim de'inido "uando uma :nica entidade tem diversos valores para
este atributo. 4uando est# representado no plural 'acilmente identi'icado, porm, em e mail ou tele#one, por estarem no singular, pode criar d:vidas "uanto / "uali'icao.
!x$" Dependentes

Julho de 2009

Determinante% identi'ica cada entidade de um conFuntoRentidade Mtambm conhecido


com atributo chave% matr>cula, cp#, cnp3N
!x$" &od +unc

Dom2nio% re'ereRse a um conFunto de valores permitidos para o atributo como%

!x$" Sexo ?9, +@ !stado civil ?&,S,D0, S0'*!(.0, D(A0.&(,D0, A(BA0, D!SC-(*,D0@
alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

A0 Helacionamentos
;hamaRse de relacionamento a estrutura "ue indica a associao de elementos de duas ou mais entidades.

Entretanto, em alguns casos, necess#rio "ue os atributos esteFam inseridos em uma entidade de -un!o Mou associativaN para "ue o relacionamento 'i"ue mais bem de'inido. 6este caso, o atributo de relacionamento a"uele "ue permite e'etuar a associao dos conFuntosRentidade.

16

AA HestriKes de 1apeamento M;ardinalidadeN


Es relacionamentos entre as entidades de um 1EH podem ser limitados atravs de valores m$nimos e m#9imos "ue pode haver entre elas. Este limite chamado de cardinalidade "ue um n:mero "ue e9pressa o n:mero de ocorrSncias de determinada entidade em relao / outra. 8 cardinalidade m#9ima, e9prime o n:mero m#9imo de ocorrSncias "ue uma entidade pode assumir ao se relacionar com outra. 8 cardinalidade m$nima, determina o menor valor poss$vel "ue pode haver no relacionamento das entidades. 8s possibilidades de relacionamentos podem ser in'initas, uma ve0 "ue os valores m#9imos e m$nimos so e9pressos atravs de n:meros cardinais. Oorm, e9istem padrKes "ue abrangem grande parte desses limites e so conhecidos como%

AA.A LmRparaRum% um elemento de 8 est# associado a somente um elemento da entidade


B. @a mesma 'orma, uma ocorrSncia de B pode se associar a somente uma ocorrSncia em 8

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

16

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

AA.2 LmRparaRmuitos%

um elemento em 8 est# associado a "ual"uer n:mero de elementos em B, en"uanto uma ocorrSncia em B est# associada somente uma ocorrSncia em 8.

16

AA.- 1uitosRparaRmuitos% Lm elemento em 8 est# associado a "ual"uer n:mero de


elementos em B, e um elemento em B est# associado a "ual"uer n:mero de elementos em 8.

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

E9erc$cios

A2.A. 1odele o relacionamento de um cliente com um banco considerando os atributos M;5>E6<E P cp', nome, idade, endereoY B86;E P c7digo do banco. >gnore a aplicao das 'ormas normais A2.2. 1odele o relacionamento dos atletas com os esportes de competio M8<5E<8 P nome, idade, peso, pa$sY E3OEH<E P tipo, material, localN. >gnore a aplicao das 'ormas normais A2.-. <ranscreva para linguagem l7gica a modelagem conceitual a seguir.
&d&li )n&li &dBnc )mBnc

39
&0)*.,*, B,)&0 !nBnc

&'(!)*!

!n&li

A2.D. 1ostre como o diagrama abai9o pode ser representado por relacionamentos bin#rios.

A2.,. 1odi'i"ue o diagrama abai9o para especi'icar o seguinte% aN Lm curso no pode estar va0io, isto , deve possuir alguma disciplina em seu curr$culo. bN Lm aluno pode 'a0er mais de um curso.

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

A2.. ;onstrua um diagrama ERH para um hospital com um conFunto de pacientes e um conFunto de mdicos. Hegistros de diversos testes reali0ados so associados a cada paciente.

39

A2.G ;onstrua um diagrama ERH para uma companhia de seguros de autom7veis com um conFunto de clientes, onde cada um possui certo n:mero de carros. ;ada carro tem um n:mero de acidentes associados a ele.

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

A2 OroFeto de ;haves

Chave% um conFunto de um ou mais atributos "ue, tomados coletivamente, possibilita


identi'icar uma :nica ocorrSncia no na entidade 3ntegridade de ,ntidade% 6enhum atributo "ue participe da chave de um conFuntoRentidade deve aceitar valores nulos. A

8spectos Helevantes
8 "uesto 'undamental do proFeto de chaves redu0ir ao m#9imo os e'eitos de redundTncia. 8 alterao dos valores de campos constituintes da chave prim#ria ou a remoo de uma entidade de um conFuntoR entidade pode ocasionar problemas de integridade re'erencial.

!ntidade +ornecedor" &0D +0.) !ntidade 4roduto" &0D4.0D .elacionamento 4edido"&0D +0.) e &0D 4.0D

A- 8utoRHelacionamento
Lm auto.relacionamento acontece "uando os elementos de uma entidade se relacionam com eles mesmos. Eu seFa, um item de uma entidade se relaciona com outro item Mou com o mesmoN dessa mesma entidade. 8pesar de parecer algo di'$cil de acontecer h# casos, bem comuns, "ue identi'icam este tipo de relao. Oor e9emplo, uma ocorrSncia da entidade Juncion#rio, Cerencia e Cerenciada por si pr7pria. 8ssim se d#, ainda, na classe 1ilitar em "ue o E'icial um 3oldado. Este autoRrelacionamento tambm conhecido como R,&AC3O4AM,4*O R,C5RS36O ou R,C5RS363DAD,7 Lm 'ator importante a ser observado "ue as relaKes entre os elementos pode ser A%6 ou 6%6, e possui as mesmas caracter$sticas de um relacionamento bin#rio Mrelao entre duas entidadesN. E relacionamento recursivo deve ser, sempre, entendido e representado nos dois sentidos ME1OHEC8@E CEHE6;>8 e V CEHE6;>8@EN 8 implementao de um autoRrelacionamento, atravs de um 345, 'eita da seguinte 'orma Mconsidere "ue a tabela JL6;>E68H>E prRe9istente e o E1OHEC8@E 'oi promovido a CEHE6<EN%

Julho de 2009

alter table +-)&(0),.(0 add constraint !94.D!94.D+E #orei7n 2eF (G!.!)*!) re#erences +-)&(0),.(0 (!94.!G,D0)G )ote ;ue a constraint !94.D!94.D+E relaciona a coluna G!.!)*! como uma chave estran7eira (+orei7n EeF) da coluna !94.!G,D0 na tabela +-)&(0),.(0=

Esta de'inio 'oi inserida no endereo http%&&pt.=i(ipedia.org&=i(i&8utoRrelacionamento


alvaro_pimentel@uol.com.br

39

Conceitos e Aplicaes Bsicas para Modelagem de Dados

AD 8gregao

Lma limitao do 1EH no poder e9pressar relacionamentos entre relacionamentos. 8gregao uma abstrao atravs da "ual os relacionamentos so tratados como entidades de n$vel superior. 8bai9o se observa a e9istSncia de dois relacionamentos distintos entre as entidades JL6;>E68H>E e OHEJE<E.

39
2

8pesar de parecer assustador, a soluo simples e possibilita uma leitura mais clara do novo diagrama "ue ser# desenhado 8p7s a agregao, uma nova entidade M"ue pode ser rotulada&nomeadaN representada contendo as entidades JL6;>E68H>ER<H8B85I8ROHEJE<E.

;om esta soluo, a limitao inicial de no poder relacionar <H8B85I8 e L<>5>]8 'icou 'acilmente resolvida.

Julho de 2009

>magens das bru9as dispon$vel em% http%&&===.'otosearch.com.br&'otosRimagens&bru9as.html


alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

A, Cenerali0ao P Especiali0ao

E9istem casos em "ue uma entidade pode ser dividida em categorias, possuindo alm dos atributos comuns, alguns espec$'icos para cada categoria. Oor e9emplo, considerando a entidade 1V@>;E, podeRse atestar "ue todos os mdicos so, basicamente, cl$nicos gerais, mas cada um possui uma especialidade pr7pria como cardiologista, pneumologista, etc. 8 essa classi'icao Mou particionamentoN d#Rse o nome de especiali8a!o, "ue nada mais do "ue a identi'icao de uma caracter$stica pr7pria de obFetos com propriedades similares.

39 A

@entro deste modelo podeRse, ainda, considerar a e9istSncia de outros tipos de especiali0ao

A..A <otal e Oarcial

A..2 6oRE9clusiva

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

A..- 1:ltipla

39
= ) &0)*.,*, +-)&(0)H.(0 = ) &.(, D!4!)D!)*!S
alvaro_pimentel@uol.com.br

6E<8% <odos os tipos de especiali0aKes indicam "ue a entidade resultante herdar# caracter$sticas da entidade origem. @esta maneira, ao resultado apresentado, di0Rse "ue este possui uma IEH86^8, cuFo conceito 'a0 parte da EH>E6<8^_E 8 EBJE<E. 8ssim sendo, correto a'irmar "ue, nos itens anteriores, h# IEH86^8 <E<85, O8H;>85, 6_ER E`;5L3>U8 e 1a5<>O58.

A. @ependSncia E9istencial e Entidades Jracas


8 depend9ncia e:istencial ocorre "uando a e9istSncia de uma determinada entidade est# condicionada / e9istSncia da outra entidade relacionada a ela.

D!4,.*,9!)*0

Lma entidade 1raca no possui uma identidade pr7pria. 8ssim sendo, sua chave prim#ria composta pela chave estrangeira proveniente da entidade origem concatenada a um identi'icador de si mesma M"ue pode repetir para di'erentes instTncias da entidade donaN.

Julho de 2009

+-)&(0)H.(0

Conceitos e Aplicaes Bsicas para Modelagem de Dados

AG Helacionamentos de Crau 3uperior a 2


&0.D+0.) C-,)*(D,D! &0D4.0I

+0.)!&!D0.

+0.)!&!

4.0I!*0

4!J,

&0D4!J,

Helacionamentos de Crau 3uperior a 2 McontN


O8H<E 2
&0.D+0.) C-,)*(D,D! &0D4.0I

+0.)!&!D0.

+0.)!&!

4.0I!*0

40D! +0.)!&!.

4!J,

-S,

Julho de 2009

&0D4!J,

alvaro_pimentel@uol.com.br

O8H<E A

39

Conceitos e Aplicaes Bsicas para Modelagem de Dados

O8H<E -

&0.D+0.)

C-,)*(D,D!

&0D4.0I

39
+0.)!&! 4.0I!*0 4!J, &0D4!J,
alvaro_pimentel@uol.com.br

+0.)!&!D0.

5M PO5CO MA3S SOBR, C;A6,S Lma chave chamada de prim#ria Mprimar$ (e$ < p(= "uando um atributo dado :nico e obrigat7rio em uma tabela. Oor e9emplo, tomandoRse como base o ;E@JEH6 da tabela JEH6E;E@EH acima '#cil observar "ue se trata de um atributo "ue representa um :nico 'ornecedor, tal como o ;C;. 6o caso de uma tabela OE33E8 poderia ser o ;OJ, o HC ou a ;arteira de Iabilitao. 6otaRse, ento, "ue a escolha de uma chave deve signi'icar um atributo "ue no possua elementos "ue impossibilitem, ou minimi0em erros de digitao. Oortanto, no se deve escolher como chave atributos "ue contenham tamanhos vari#veis ou com 'ormatos al'anumricos tal como nome, endereo ou descrio, por e9emplo. 4uando h# a e9istSncia de um relacionamento de uma entidade 'orte com uma 'raca, obrigatoriamente a chave da tabela 'orte > inclu2da na 'raca. Essa chave na tabela 'raca chamada de chave estrangeira M1oreign (e$ P 1(N como ocorre nos relacionamentos umRparaRmuitos MA%6N. 4uando se trata, porm, de um relacionamento muitosRparaRmuitos M6%6N necess#ria a criao de uma tabela associativa "ue, neste caso, ser# a entidade 'raca. 8ssim, nesta nova entidade sero colocadas, como chaves estrangeiras M1(N, as chaves prim#rias Mp(N das tabelas de origem. 8 colocao de uma chave estrangeira sempre um indicativo de "ue uma entidade dependente de outra por uma ra0o "ual"uer. Es motivos "ue determinam a necessidade de criao de uma chave M"uer seFa p( ou '(N esto, na maioria das ve0es, associados a regras de neg7cio identi'icadas no levantamento dos re"uisitos. Em outros casos so para resolver problemas de per'ormance "ue so identi'icados ap7s a implementao das bases de dados ou dos sistemas. Oortanto, as chaves sempre esto associadas a melhorias de acesso a base de dados.

Julho de 2009

Conceitos e Aplicaes Bsicas para Modelagem de Dados

A9 E9erc$cios

A9.A% 1odele o relacionamento entre um 5ote e um Oroduto considerando "ue o Oroduto re'ereRse a materiais de 'arm#cia e pode ser subdividido em, pelo menos, duas entidades. ;rie os atributos "ue considerar pertinente assim como as cardinalidades apropriadas. A9.2% Especiali0e a entidade Ue$culo em, pelo menos, seis entidades relacionadas. A9.-% 1odele o relacionamento entre Empregado e @epartamento considerando "ue o empregado pode ser dividido em Cerente, 3ecret#ria e Engenheiro. Oara cada relacionamento do @EH de'ina atributos "uando poss$vel. @e'ina os atributos identi'icadores ou chaves A9.D% ;onsidere agora "ue a secret#ria, do e9erc$cio -, use um 8plicativo "ue pode ser subdividido em trSs itens. E Engenheiro participa de um OroFeto, e ambos utili0am a entidade 1#"uina A9.,% @o e9erc$cio D considere "ue um Jornecedor se relaciona com um 5ote e com um Jabricante. Este, por sua ve0, est# relacionado com o Oroduto. E'etue a alterao no modelo para "ue ele atenda aos novos re"uisitos. A9..% Lma empresa desenvolve proFetos de grande porte. Esta empresa est# organi0ada em departamentos, sendo "ue cada proFeto sempre coordenado por um departamento. Es departamentos possuem empregados "ue podem ser che'es. Embora um empregado pertena sempre a um departamento, ele pode ser alocado a proFetos de outros departamentos. Es 'uncion#rios possuem nome, data de nascimento e cp'. Es respons#veis pelo proFeto so os che'es de departamento ao "ual o proFeto est# alocado. <odo proFeto possui uma #rea Mengenharia, urbanismo, etc.N e per$odo de1inido de tempo. A9.G% @e acordo com o @EH abai9o um 8nalista ou 1dico no podem ser gerentes. Oor "uS) 4ual a alterao necess#ria para tornar isso poss$vel)

39
alvaro_pimentel@uol.com.br

Julho de 2009

Conceitos e Aplicaes Bsicas para Modelagem de Dados

A9.Q% Lma organi0ao "ue atua no ramo de vendas de materiais de construo deseFa montar um banco de dados para emisso de 'aturas em suas loFas, gerenciando a comisso de cada empregado. 3abeRse "ue% aN 8 empresa possui diversas loFasY bN Lm empregado pertence sempre a uma loFaY cN Lma nota 'iscal composta de dados genricos Mn:mero da nota 'iscal, nome do cliente, data de emisso, valor total da 6ota 'iscal, nome do empregado respons#vel pela vendaN e dados do detalhe da venda Mnome do material vendido, "uantidade deste material, valor unit#rio, valor total do item de material vendidoN. .

39 A

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

20 6ormali0aoE processo de normali8a!o pode ser visto como o processo no "ual so eliminados es"uemas de relaKes MtabelasN no satis'at7rios, decompondoRos, atravs da separao de seus atributos em es"uemas de relaKes menos comple9as, mas "ue satis'aam as propriedades deseFadas. Oor "ue 6ormali0ar ) AZN 1inimi0ar de redundTncias e inconsistSnciasY 2ZN Jacilitar manipulaKes do Banco de @adosY -ZN Jacilitar manuteno do 3istema de >n'ormaKes E processo de normali0ao como 'oi proposto inicialmente por ;odd condu0 um es"uema de relao atravs de uma bateria de testes para certi'icar se o mesmo est# na ?@, A@ e B@ #ormas 4ormais. Oara "ue se compreenda melhor suponha "ue haFa uma entidade #uncionrios "ue arma0ene as in'ormaKes dos 'uncion#rios de uma empresa e "ue o resultado '$sico 'inal seFa a tabela mostrada abai9o. A

8o se observar a tabela vSRse "ue ela so're das seguintes anomalias% Anomalia de ,:clus!o < 3e o 'uncion#rio de c7digo igual a - 'or e9clu$do, o 3etor ser# e9clu$do tambm. Anomalia de Altera!o P 3e o nome do 3etor 3uporte mudar para 8poio ser# obrigat7rio a alterao, deste nome, em todos os registros da tabela. Anomalia de 3nclus!o < 3e um novo 'uncion#rio 'or contratado para o 3etor 3uporte ser# obrigat7ria a alterao da "uantidade de 'uncion#rios no campo < 4uantidadeJuncionarios < em todas as ocorrSncias "ue houver o setor de nome 3LOEH<E.

Oara poder resolver o dilema acima necess#rio 4ORMA&3CAR a entidade. Oara isto aplicaRse as 1ormas normais como ser# estudado a seguir%

Julho de 2009

Es conceitos de 6ormali0ao e Jormas 6ormais 'oram baseados na literatura disponibili0ada no endereo http%&&leiteFr.'iles.=ordpress.com&200Q&09&modelagem.pd'
alvaro_pimentel@uol.com.br

39

Conceitos e Aplicaes Bsicas para Modelagem de Dados

20.A Orimeira Jorma 6ormal MAJ6N


Lma relao est# na AJ6 se todos os dom$nios b#sicos contiverem valores :nicos Mno contiver grupos repetitivosN. Oara atingir esta 'orma normal necess#rio eliminar as redundTncias da base MtautologiaN e os grupos de repetio. >sso signi'ica di0er "ue todos os atributos de uma tabela devem ser atDmicos Mindivis$veisN, ou seFa, no so permitidos atributos multivalorados, atributos compostos ou, ainda, atributos multivalorados compostos. aN >denti'icar "ual elemento , potencialmente, a chave prim#ria da entidadeY bN >denti'icar o grupo repetitivo e e9clu$Rlo da entidadeY cN ;riar uma nova entidade com a chave prim#ria da entidade anterior e o grupo repetitivo. 8 chave prim#ria da nova entidade ser# obtida pela concatenao da chave prim#ria da entidade inicial e a do grupo repetitivo.
!x$

39
)o normaliKada )ormaliKada usando a primeira #orma normal (=+))

20.2 3egunda Jorma 6ormal M2J6N


Lma relao H est# na 2J6 se, e somente se, ela estiver na AJ6 e todos os atributos noRchave 'orem totalmente dependentes da chave prim#ria. aN 8plicaRse conceito da dependSncia 'uncional para identi'icar os atributos "ue no so 'uncionalmente dependentes de toda a chave prim#ria. bN Hemover da entidade todos esses atributos identi'icados e criar uma nova entidade com eles. 8 dependSncia 'uncional ` b total se a remoo de um atributo 8 do componente `, implica "ue a dependSncia 'uncional dei9a de e9istir. 8 dependSncia 'uncional ` b parcial se e9istir um atributo 8 no componente ` "ue pode ser removido e a dependSncia no dei9a de e9istir.

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

;onsiderandoRse, agora, as entidades% ArEuivo de 4otas #iscais M6um. 6J, 3rie, ;7digo do ;liente, 6ome do cliente, Endereo do cliente, <otal Ceral da 6otaN A

ArEuivo de 6endas M6um. 6J, ;7digo da 1ercadoria, @escrio da 1ercadoria, 4uantidade vendida, Oreo de venda e <otal da vendaN E resultado ap7s a aplicao da segunda 'orma normal M2J6N ser#% ArEuivo de 4otas #iscais M6um. 6J, 3rie, ;7digo do ;liente, 6ome do cliente, Endereo do cliente, <otal Ceral da 6otaN ArEuivo de 6endas M6um. 6J, ;7digo da 1ercadoria, 4uantidade vendida e <otal da UendaN ArEuivo de Mercadorias M;7digo da 1ercadoria, @escrio da 1ercadoria, Oreo de vendaN

;omo resultado notaRse um desdobramento do ArEuivo de 6endas em duas estruturas P 6endas e Mercadoria Mo ar"uivo de 6otas Jiscais, no 'oi alterado, por no possuir chave compostaN% Orimeira estrutura MArEuivo de 6endasN% ;ontm os elementos originais, sendo e9clu$dos os dados "ue so dependentes apenas do campo ;7digo da 1ercadoria. 3egunda estrutura MArEuivo de MercadoriasN% ;ontm os elementos "ue so identi'icados apenas pelo ;7digo da 1ercadoria, ou seFa, independentemente da 6ota Jiscal, a descrio e o preo de venda sero constantes.

Julho de 2009

alvaro_pimentel@uol.com.br

39

Conceitos e Aplicaes Bsicas para Modelagem de Dados

20.- <erceira Jorma 6ormal M-J6N.


Lma relao H est# na -J6 se estiver na 2J6 e se no houver dependSncia transitiva entre atributos no chave. Em outras palavras, se cada atributo 'or 'uncionalmente dependente apenas dos atributos componentes da chave prim#ria ou se todos os seus atributos no chave 'orem independentes entre si. A

aN 8plicaRse conceito da dependSncia transitiva para identi'icar todos os atributos "ue so 'uncionalmente dependentes de outros atributos no chaveY bN HemovSRlos e criar uma nova entidade com os mesmos. 8 dependSncia 'uncional F G em uma tabela * transitiva se e9istir um conFunto de atributos C "ue no um subconFunto de chaves de * e cuFas dependSncias F C, C G, so v#lidas.

,strutura na segunda 1orma normal HA#4= ArEuivo de 4otas #iscais M6um. 6J, 3rie, @ata emisso, ;7digo do ;liente, 6ome do cliente, Endereo do cliente, <otal Ceral da 6otaN 8r"uivo de Uendas M6um. 6J, ;7digo da 1ercadoria, 4uantidade vendida e <otal da venda desta mercadoriaN 8r"uivo de 1ercadorias M;7digo da 1ercadoria, @escrio da 1ercadoria, Oreo de vendaN ,strutura na terceira 1orma normal HB#4= ArEuivo de 4otas #iscais M6um. 6J, 3rie, @ata emisso, ;7digo do ;liente e <otal Ceral da 6otaN ArEuivo de 6endas M6um. 6J, ;7digo da 1ercadoria, 4uantidade vendida e <otal da venda desta mercadoriaN ArEuivo de Mercadorias M;7digo da 1ercadoria, @escrio da 1ercadoria, Oreo de vendaN ArEuivo de Clientes M;7digo do ;liente, 6ome do cliente, Endereo do clienteN OodeRse perceber "ue ocorreu um desdobramento da tabela de 4otas #iscais, por ser a :nica "ue possu$a campos "ue no eram dependentes da chave principal M6um. 6JN. Es elementos 6ome e Endereo no se alteram independente do "ue ocorra com a 6ota Jiscal.

Julho de 2009

alvaro_pimentel@uol.com.br

39

Conceitos e Aplicaes Bsicas para Modelagem de Dados

2A E9erc$cios
2A.A. ;onsiderando a e9istSncia de trSs tabelas MJL6;>E6cH>E, @EOE6@E6<E, ;LH3EN normali0eRas de acordo com o "ue 'oi desenvolvido #54C3O4IR3O R18<Hd;L58 @E JL6;>E6cH>E R6E1E @E JL6;>E6cH>E R@8<8 @E 683;>1E6<E C5RSO R;e@>CE @E ;LH3E R6E1E @E ;LH3E R86E @E ;LH3E D,P,4D,4*, R;e@>CE @E @EOE6@E6<E R6E1E @E @EOE6@E6<E A

P Hegras do neg7cio MH6N% H6A. Lm 'uncion#rio pode ter mais de um dependente H62. Lm 'uncion#rio pode 'a0er mais de um curso

2A.2 >magine "ue seFa necess#rio desenvolver um sistema para cadastro de clientes e 'oi recebida, do cliente, uma lista com os dados "ue devero compor o sistema, com base nela normali0e a estrutura de dados de acordo com as 'ormas normais estudadas. 8 t$tulo de treinamento considere o tratamento das in'ormaKes como um pe"ueno dicion#rio de dados, em "ue sero descritos os atributos pertinentes aos elementos. 5ista de in'ormaKes "ue devero compor o sistema cadastro de clientes% 6ome do dado @escrio 4ome 6ome do cliente pessoa '$sica 4ome do Pai 4ome da M!e ,ndereo *ele1one? *ele1oneA 4Jmero do #a: 4Jmero do Celular *ele1one do trabalho Data de 4ascimento 4aturalidade 4acionalidade ,ndereo correspond9ncia 4ome do 1ilho ? idade do 1ilho ? 4ome do 1ilho A idade do 1ilho A 4ome do 1ilho B idade do 1ilho B 4ome do 1ilho K idade do 1ilho K
alvaro_pimentel@uol.com.br

<ipo <amanho Ebrigat7rio ;har D, 3im

Julho de 2009

39

Conceitos e Aplicaes Bsicas para Modelagem de Dados

4ome do CDn-uge 4Jmero do CP# 4Jmero identidade

39
alvaro_pimentel@uol.com.br

2A.- ;onsidere o desenvolvimento de um modelo l7gico "ue representa a situao a seguir% E @epartamento de Uendas da >nd:stria Bele0a 5tda, ap7s estudos de mercado, veri'icou "ue para atingir seus obFetivos seria necess#rio ad"uirir uma 'rota de ve$culos pr7prios para motori0ar seus vendedores. E mercado consumidor 'oi dividido em regiKes de vendaY 'oram estabelecidos percursos de entrega abrangendo pontos estratgicos dessas regiKes e vendedores 'oram designados para cobrir estes percursos. @eve ser constru$do um sistema para administrao do novo modelo de vendas adotado pela empresa. 8p7s entrevistas com o gerente da #rea, 'oram obtidas as seguintes in'ormaKes% R cada regio identi'icada por um c7digoY R uma regio composta de v#rios pontos estratgicosY R as regiKes no tSm pontos estratgicos em comumY R o vendedor tem a responsabilidade de cobrir uma regioY R uma regio pode ser coberta por v#rios vendedoresY R a cada dia, um ve$culo 'ica sob responsabilidade de um vendedorY R um vendedor pode vender "uais"uer itens ativos da tabela de produtosY R o vendedor respons#vel pela identi'icao de cada cliente consumidor na nota 'iscalY R a nota 'iscal contendo identi'icao do vendedor, itens e "uantidades vendidas e9igida para comprovao da venda

2A.D @e acordo com as regras estudadas normali0e as estruturas abai9o. fRela!o de Programadores P 6umero da 1atr$cula P 6ome do Orogramador P 3etor P 6$vel M A,2,-N P @escrio do 6$vel M A R J:nior, 2 R Oleno, - R 3eniorN P Programas P ;odigo do Orograma P 6ome do Orograma P <empo Estimado P 6$vel de @i'iculdade M A, 2 ou - N P @escrio da @i'iculdade M J#cil, 1dio, @i'$cilN Regras do neg/cio R Lm programa pode ser 'eito por mais de um OrogramadorY R Lm programador pode 'a0er um ou mais programasY R E 6$vel de di'iculdade do programa depende do tempo estimado para a elaborao do mesmoY

Julho de 2009

Conceitos e Aplicaes Bsicas para Modelagem de Dados

22 3oluKes

8s respostas apresentadas representam apenas uma das soluKes poss$veis. Em se tratando de modelagem de dados o caso certo o "ue atende a uma especi'icao dentro dos padrKes estabelecidos. Em muitos casos necess#rio desnormali0ar um modelo para melhorar o acesso a uma base e, com isso, melhorar a per'ormance do processo de busca. 5ma solu!o do ?A7?

39
alvaro_pimentel@uol.com.br

8s soluKes A2.A, A2.2 e A2., representam um modelo "ue no contempla os conceitos de normali0ao, entretanto, como treinamento inicial, importante entender como se constr7i um relacionamento e de "ue maneira podeRse, ento, melhorar o particionamento dos dados 5ma solu!o do ?A7A

5ma solu!o do ?A7B <8BE58 ;5>E6<E M;d;li Mp(N, 6n;li, En;liN <8BE58 B86;EM;dBnc Mp(N, 6mBnc, EnBncN 5ma solu!o do ?A7K

Julho de 2009

Conceitos e Aplicaes Bsicas para Modelagem de Dados

5ma solu!o do ?A7L

39
alvaro_pimentel@uol.com.br

5ma solu!o do ?A7M

5ma solu!o do ?A7N

Julho de 2009

Conceitos e Aplicaes Bsicas para Modelagem de Dados

5ma solu!o do ?O7?

39
alvaro_pimentel@uol.com.br

5ma solu!o do ?O7A

5ma solu!o do ?O7B

Julho de 2009

Conceitos e Aplicaes Bsicas para Modelagem de Dados

5ma solu!o do ?O7K

39
alvaro_pimentel@uol.com.br

5ma solu!o do ?O7L

Julho de 2009

Conceitos e Aplicaes Bsicas para Modelagem de Dados

5ma solu!o do ?O7M

39
alvaro_pimentel@uol.com.br

5ma solu!o do ?O7N

Julho de 2009

Conceitos e Aplicaes Bsicas para Modelagem de Dados

5ma solu!o do ?O7P

39

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

E modelos abai9o 'oram desenvolvidos no software gratuito 12345 \or(bench 5ma solu!o do A?7?

39 A

;omo 'oi e9plicado no t7pico A2.-, toda ve0 "ue 'or identi'icado um relacionamento n%n sempre ser# necess#ria a criao de um tabela e9tra para representar o relacionamento. 6este caso um a 'uncion#rio pode se inscrever em muitos MnN cursos e, por sua ve0 um curso pode possuir muitos MnN 'uncion#rios. 8ssim, 'oi criada tabela associativa Mou FunoN Curso do #uncionrio para evitar a redundTncia de dados nas tabelas origens.

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

5ma solu!o A?7A

39
alvaro_pimentel@uol.com.br

8tualmente F# poss$vel, legalmente, um indiv$duo possuir pais de mesmo se9o. Oor esta ra0o, a #ilia!o uma tabela associativa M"ue representa a paternidade&maternidadeN de *utor com a tabela Cliente. <alve0 'osse interessante criar uma tabela "ue identi'icasse o tipo do dependente, o tipo do tele'one e o tipo do endereo. 6o entanto a diviso dessas tabelas pode in'luenciar em um es'oro e9tra considerando os valores "ue podem ser assumidos por elas.

Julho de 2009

Conceitos e Aplicaes Bsicas para Modelagem de Dados

5ma solu!o A?7B

39 8 tabela 5so 6e2culo representa uma Funo dos ve$culos "ue podem ser utili0ados pelos vendedores. V importante notar "ue sua e9istSncia s7 acontecer# se as tabelas pai e9istirem.

Julho de 2009

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados

5ma solu!o A?7K

39 8 tabela Programador Programa associativa pelas mesmas ra0Kes apresentadas nas soluKes anteriores. V poss$vel "ue seFam encontradas soluKes melhores "ue as apresentadas anteriormente. ;abe lembrar "ue modelagem de dados como a construo de conhecimento "ue vai se edi'icando com o tempo. Haramente se constr7i uma modelagem "ue no so'ra alteraKes, ou "ue no contenha e"u$vocos, e isso 'a0 parte do processo de desenvolvimento de um modelo de bases de dados. E9ercitar o "ue vai tra0er e9periSncia e mais habilidade no tratamento dos dados. 6o pr79imo manual ser# tratada a instalao, a modelagem e o manuseio de uma base de dados 12345 atravs da 'erramenta ;83E 12345 \or(bench e 12345 4uer2 Bro=ser. 8 instalao do 12345 est# na apostila #ree Acess O M$S%& na prtica! dispon$vel no endereo http%&&artigocienti'ico.tebas.(inghost.net&pes"uisadores&)mnu*2+smnu*,+id*29,-.

Julho de 2009

8lvaro ;aetano Oimentel 3obrinho @outorando em ;iSncia da >n'ormao LJHJ&>B>;<, 1estre em <ecnologia da >n'ormao L6E38, Jormado em <elecomunicaKes L6E38, 8dministrador de bases de dados Eracle, @b2 e >dms e

alvaro_pimentel@uol.com.br

Conceitos e Aplicaes Bsicas para Modelagem de Dados


@ocente em 3istemas de >n'ormao

39

Julho de 2009

alvaro_pimentel@uol.com.br