SlideShare uma empresa Scribd logo
1 de 12
Modelagem de Dados

Prof. Ms. Fabricio Lopes Sanchez
Tópicos
• Modelagem de dados? O que é?
• Os três pilares da modelagem de dados
  – Modelagem conceitual
  – Modelagem lógica
  – Modelagem física
• Um exemplo?
• Porque é importante?
• Conclusões
Modelagem de dados: o que é?


Modelagem de dados é o processo
anterior a construção do banco de
dados em um software.
Modelagem de dados: o que é?
O processo de construção de um software pode
ser subdivido em três grandes etapas...




 Levantamento       Modelagem
                                    Implementação
 de requisitos e    dos dados
                                     do sistema em
 documentação
                                    uma linguagem
Modelagem de dados: o que é?
O processo de construção de um software pode
ser subdivido em três grandes etapas...




 Levantamento       Modelagem
                                    Implementação
 de requisitos e    dos dados
                                     do sistema em
 documentação
                                    uma linguagem
Etapas do processo de modelagem
                               Modelagem
  Determina a forma
 (conceitual) como os
dados estarão dispostos                    Determina as estruturas
      no banco.                              físicas do banco de
                                                  dados e das
                                             informações em sí.
      Modelo
     Conceitual                                  Modelo
                                                  Físico

Determina a lógica dos
dados dentro da estrutura        Modelo
do banco. A principal figura     Lógico
aqui é o MER/DER.
Um exemplo...
Imagine que uma clínica médica deseja um
pequeno sistema para controlar o fluxo de seus
médicos. Levando-se em consideração que o os
requisitos já foram estabelecidos, modele os
dados e construa o banco de dados.


                       IFSP Centro
                       Médico
1ª. Etapa: Modelo conceitual
MEDICOS = *CodigoMedico (número), Nome (texto), CRM
(número), Email (texto), DataAdmissão (Data), #CodigoEspecialidade
(numero)

ESPECIALIDADES = *CodigoEspecialidade (numero), Especialidade
(texto), Descrição (texto grande)

Alguns conceitos presentes...
• Entidade: é o elemento conceitual que representa algo do mundo real no futuro
  software. (Exemplos: MEDICOS, ESPECIALIDADES)
• Atributo: é o elemento que traz uma característica relevante ao modelo da
  entidade no sistema. (Exemplos: Nome, Email, CodigoMedico, etc.)
• Chaves (primária ou estrangeira): decora determinado(s) atributo(s) com recursos
  adicionais. Chave primária possui a característica de tornar o registro único. Chave
  estrangeira possui a capacidade de interligar entidades.
• Relacionamento: é o compartilhamento de dados entre entidades.
2ª. Etapa: Modelo lógico
MEDICOS = *CodigoMedico (número), Nome (texto), CRM
(número), Email (texto), DataAdmissão (Data), #CodigoEspecialidade
(numero)

ESPECIALIDADES = *CodigoEspecialidade (numero), Especialidade
(texto), Descrição (texto grande)

CodigoEspecialidade


                 MÉDICOS                       ESPECIALIDADES



CodigoMedico                                             CodigoEspecialidade

                      Diagrama Entidade Relacionamento
3ª. Etapa: Modelo Físico
CREATE DATABASE BD_ClinicaIFSP

CREATE TABLE MEDICOS (
        CodigoMedico int not null,
        Nome varchar(20) not null,
        CRM int not null,
        Email varchar(30) not null,
        DataAdmissao Datetime not null,
        CodigoEspecialidade int not null,
        PRIMARY KEY(CodigoMedico)
);

CREATE TABLE ESPECIALIDADES (
        CodigoEspecialidade int not null,
        Especialidade varchar(30) not null,
        Descricao text null
);

ALTER TABLE MEDICOS
ADD CONSTRAINT fk_medicos_especialidades
FOREIGN KEY(CodigoEspecialidade)
REFERENCES ESPECIALIDADES(CodigoEspecialidade)
Porque é importante saber?


     Porque a modelagem errada
fatalmente implicará em um banco de
 dados com problema, que implicará
  em uma aplicação com problema.
Conclusões...
• Modelagem de dados é um dos mais
  importantes processos no desenvolvimento de
  aplicações
• Se um sistema começa pela base de dados, na
  verdade ele começa na modelagem
• Conhecer todos os aspectos da modelagem de
  dados implicará no bom ou mal
  funcionamento do software

Mais conteúdo relacionado

Mais procurados

Aula 1 - Introdução ao Conteúdo de Banco de Dados
Aula 1 - Introdução ao Conteúdo de Banco de DadosAula 1 - Introdução ao Conteúdo de Banco de Dados
Aula 1 - Introdução ao Conteúdo de Banco de DadosHenrique Nunweiler
 
Introdução a modelagem de dados - Banco de Dados
Introdução a modelagem de dados - Banco de DadosIntrodução a modelagem de dados - Banco de Dados
Introdução a modelagem de dados - Banco de Dadosinfo_cimol
 
Banco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DERBanco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DERRangel Javier
 
5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix
5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix
5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane FidelixCris Fidelix
 
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)Leinylson Fontinele
 
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)Janynne Gomes
 
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)Leinylson Fontinele
 
Banco de Dados - Part01
Banco de Dados - Part01Banco de Dados - Part01
Banco de Dados - Part01Rangel Javier
 
Treinamento PowerBI
Treinamento  PowerBITreinamento  PowerBI
Treinamento PowerBItiaquarius
 
Conceitos de Banco de dados e SGBD
Conceitos de Banco de dados e SGBDConceitos de Banco de dados e SGBD
Conceitos de Banco de dados e SGBDVinicius Buffolo
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Leinylson Fontinele
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dadosvini_campos
 

Mais procurados (20)

Aula 6 - Cardinalidade
Aula 6 - CardinalidadeAula 6 - Cardinalidade
Aula 6 - Cardinalidade
 
Aula 1 - Introdução ao Conteúdo de Banco de Dados
Aula 1 - Introdução ao Conteúdo de Banco de DadosAula 1 - Introdução ao Conteúdo de Banco de Dados
Aula 1 - Introdução ao Conteúdo de Banco de Dados
 
Introdução a modelagem de dados - Banco de Dados
Introdução a modelagem de dados - Banco de DadosIntrodução a modelagem de dados - Banco de Dados
Introdução a modelagem de dados - Banco de Dados
 
Banco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DERBanco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DER
 
5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix
5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix
5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix
 
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
 
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)Aula 4  - Diagrama Entidade Relacionamento (com exercício no final)
Aula 4 - Diagrama Entidade Relacionamento (com exercício no final)
 
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
 
Banco de Dados - Conceitos Básicos
Banco de Dados - Conceitos BásicosBanco de Dados - Conceitos Básicos
Banco de Dados - Conceitos Básicos
 
Banco de Dados - Part01
Banco de Dados - Part01Banco de Dados - Part01
Banco de Dados - Part01
 
Banco de dados
Banco de dadosBanco de dados
Banco de dados
 
Modelagem de Dados
Modelagem de DadosModelagem de Dados
Modelagem de Dados
 
Treinamento PowerBI
Treinamento  PowerBITreinamento  PowerBI
Treinamento PowerBI
 
Modelagem de dados
Modelagem de dados Modelagem de dados
Modelagem de dados
 
Banco de dados
Banco de dadosBanco de dados
Banco de dados
 
Conceitos de Banco de dados e SGBD
Conceitos de Banco de dados e SGBDConceitos de Banco de dados e SGBD
Conceitos de Banco de dados e SGBD
 
Aula 2 banco de dados
Aula 2   banco de dadosAula 2   banco de dados
Aula 2 banco de dados
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dados
 
Aula 4 banco de dados
Aula 4   banco de dados Aula 4   banco de dados
Aula 4 banco de dados
 

Semelhante a Modelagem de dados

01 banco de dados-basico
01 banco de dados-basico01 banco de dados-basico
01 banco de dados-basicoAmadeo Santos
 
Banco de Dados _ Modelagem Conceitual.pdf
Banco de Dados _ Modelagem Conceitual.pdfBanco de Dados _ Modelagem Conceitual.pdf
Banco de Dados _ Modelagem Conceitual.pdfPauloVictor415128
 
Concepcao de banco_de_dados-aula_1
Concepcao de banco_de_dados-aula_1Concepcao de banco_de_dados-aula_1
Concepcao de banco_de_dados-aula_1Carlos Melo
 
Banco de dados aula 2
Banco de dados   aula 2Banco de dados   aula 2
Banco de dados aula 2danitrani
 
Modelos de dados
Modelos de dadosModelos de dados
Modelos de dadosaeasantos
 
Livro banco de_dados_volume_02
Livro banco de_dados_volume_02Livro banco de_dados_volume_02
Livro banco de_dados_volume_02CLEAN LOURENÇO
 
Sistema de Base de Dados1.ppt
Sistema de Base de Dados1.pptSistema de Base de Dados1.ppt
Sistema de Base de Dados1.ppthhuu6
 
Banco dados i prof ivan (acesse www.portalgsti.com.br)
Banco dados i prof ivan (acesse  www.portalgsti.com.br)Banco dados i prof ivan (acesse  www.portalgsti.com.br)
Banco dados i prof ivan (acesse www.portalgsti.com.br)Andre Sidou
 
Apresentação de Tecnologia da Informação - Prof.ª Cristiane Fidelix
Apresentação de Tecnologia da Informação - Prof.ª Cristiane FidelixApresentação de Tecnologia da Informação - Prof.ª Cristiane Fidelix
Apresentação de Tecnologia da Informação - Prof.ª Cristiane FidelixCris Fidelix
 
Apresentação de Tecnologia da Informação - Prof.ª Cristiane Fidelix
Apresentação de Tecnologia da Informação - Prof.ª Cristiane FidelixApresentação de Tecnologia da Informação - Prof.ª Cristiane Fidelix
Apresentação de Tecnologia da Informação - Prof.ª Cristiane FidelixCris Fidelix
 
Modelagem Dados - Introdução à Conceitos
Modelagem Dados - Introdução à ConceitosModelagem Dados - Introdução à Conceitos
Modelagem Dados - Introdução à Conceitospaulocoob
 
Novo microsoft office power point presentation
Novo microsoft office power point presentationNovo microsoft office power point presentation
Novo microsoft office power point presentationmachadocarla
 
Apostila de Banco dados
Apostila de Banco dadosApostila de Banco dados
Apostila de Banco dadosFernando Palma
 

Semelhante a Modelagem de dados (20)

01 banco de dados-basico
01 banco de dados-basico01 banco de dados-basico
01 banco de dados-basico
 
Banco de Dados _ Modelagem Conceitual.pdf
Banco de Dados _ Modelagem Conceitual.pdfBanco de Dados _ Modelagem Conceitual.pdf
Banco de Dados _ Modelagem Conceitual.pdf
 
Concepcao de banco_de_dados-aula_1
Concepcao de banco_de_dados-aula_1Concepcao de banco_de_dados-aula_1
Concepcao de banco_de_dados-aula_1
 
Artc 1249307788 43
Artc 1249307788 43Artc 1249307788 43
Artc 1249307788 43
 
Banco de dados aula 2
Banco de dados   aula 2Banco de dados   aula 2
Banco de dados aula 2
 
Banco de dados aula 2
Banco de dados  aula 2Banco de dados  aula 2
Banco de dados aula 2
 
Modelos de dados
Modelos de dadosModelos de dados
Modelos de dados
 
Data Warehouse - Modelagem
Data Warehouse - ModelagemData Warehouse - Modelagem
Data Warehouse - Modelagem
 
Livro banco de_dados_volume_02
Livro banco de_dados_volume_02Livro banco de_dados_volume_02
Livro banco de_dados_volume_02
 
Sistema de Base de Dados1.ppt
Sistema de Base de Dados1.pptSistema de Base de Dados1.ppt
Sistema de Base de Dados1.ppt
 
Banco de Dados - Aula 02
Banco de Dados - Aula 02Banco de Dados - Aula 02
Banco de Dados - Aula 02
 
Banco dados i prof ivan (acesse www.portalgsti.com.br)
Banco dados i prof ivan (acesse  www.portalgsti.com.br)Banco dados i prof ivan (acesse  www.portalgsti.com.br)
Banco dados i prof ivan (acesse www.portalgsti.com.br)
 
Apresentação de Tecnologia da Informação - Prof.ª Cristiane Fidelix
Apresentação de Tecnologia da Informação - Prof.ª Cristiane FidelixApresentação de Tecnologia da Informação - Prof.ª Cristiane Fidelix
Apresentação de Tecnologia da Informação - Prof.ª Cristiane Fidelix
 
Apresentação de Tecnologia da Informação - Prof.ª Cristiane Fidelix
Apresentação de Tecnologia da Informação - Prof.ª Cristiane FidelixApresentação de Tecnologia da Informação - Prof.ª Cristiane Fidelix
Apresentação de Tecnologia da Informação - Prof.ª Cristiane Fidelix
 
Modelagem Dados - Introdução à Conceitos
Modelagem Dados - Introdução à ConceitosModelagem Dados - Introdução à Conceitos
Modelagem Dados - Introdução à Conceitos
 
Novo microsoft office power point presentation
Novo microsoft office power point presentationNovo microsoft office power point presentation
Novo microsoft office power point presentation
 
Aula04 3
Aula04 3Aula04 3
Aula04 3
 
Apostila de Banco dados
Apostila de Banco dadosApostila de Banco dados
Apostila de Banco dados
 
Apostila de banco de dados da ucg
Apostila de banco de dados da ucgApostila de banco de dados da ucg
Apostila de banco de dados da ucg
 
Sql - introdução
Sql -  introduçãoSql -  introdução
Sql - introdução
 

Mais de Fabrício Lopes Sanchez

QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o AzureQCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o AzureFabrício Lopes Sanchez
 
Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0Fabrício Lopes Sanchez
 
Por que Cloud Services é o melhor dos mundos?
Por que Cloud Services é o melhor dos mundos? Por que Cloud Services é o melhor dos mundos?
Por que Cloud Services é o melhor dos mundos? Fabrício Lopes Sanchez
 
Windows Azure: computação em nuvem no melhor estilo self-service
Windows Azure: computação em nuvem no melhor estilo self-serviceWindows Azure: computação em nuvem no melhor estilo self-service
Windows Azure: computação em nuvem no melhor estilo self-serviceFabrício Lopes Sanchez
 
Desenvolvimento de aplicações para Windows Azure
Desenvolvimento de aplicações para Windows AzureDesenvolvimento de aplicações para Windows Azure
Desenvolvimento de aplicações para Windows AzureFabrício Lopes Sanchez
 
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Fabrício Lopes Sanchez
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisFabrício Lopes Sanchez
 
Interop Day 2011 - Construindo aplicações web com WebMatrix
Interop Day 2011 - Construindo aplicações web com WebMatrixInterop Day 2011 - Construindo aplicações web com WebMatrix
Interop Day 2011 - Construindo aplicações web com WebMatrixFabrício Lopes Sanchez
 
QS24 - REST e SOAP com Razor e WebMatrix
QS24 - REST e SOAP com Razor e WebMatrixQS24 - REST e SOAP com Razor e WebMatrix
QS24 - REST e SOAP com Razor e WebMatrixFabrício Lopes Sanchez
 
Conhecendo o NuGet e utilizando com ASP.NET MVC
Conhecendo o NuGet e utilizando com ASP.NET MVCConhecendo o NuGet e utilizando com ASP.NET MVC
Conhecendo o NuGet e utilizando com ASP.NET MVCFabrício Lopes Sanchez
 

Mais de Fabrício Lopes Sanchez (20)

Azure Lab Services
Azure Lab ServicesAzure Lab Services
Azure Lab Services
 
Projetando aplicações para a nuvem
Projetando aplicações para a nuvemProjetando aplicações para a nuvem
Projetando aplicações para a nuvem
 
Microserviços na vida real
Microserviços na vida realMicroserviços na vida real
Microserviços na vida real
 
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o AzureQCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
 
Soluções de IoT no Microsoft Azure
Soluções de IoT no Microsoft AzureSoluções de IoT no Microsoft Azure
Soluções de IoT no Microsoft Azure
 
Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0
 
Docker para devs .NET
Docker para devs .NETDocker para devs .NET
Docker para devs .NET
 
ASP.NET 5, MVC 6 e além
ASP.NET 5, MVC 6 e alémASP.NET 5, MVC 6 e além
ASP.NET 5, MVC 6 e além
 
Por que Cloud Services é o melhor dos mundos?
Por que Cloud Services é o melhor dos mundos? Por que Cloud Services é o melhor dos mundos?
Por que Cloud Services é o melhor dos mundos?
 
O Futuro do ASP.NET (vNext)
O Futuro do ASP.NET (vNext)O Futuro do ASP.NET (vNext)
O Futuro do ASP.NET (vNext)
 
A Nova Web
A Nova WebA Nova Web
A Nova Web
 
Windows Azure: computação em nuvem no melhor estilo self-service
Windows Azure: computação em nuvem no melhor estilo self-serviceWindows Azure: computação em nuvem no melhor estilo self-service
Windows Azure: computação em nuvem no melhor estilo self-service
 
SSI 2012 - Computação em Nuvem
SSI 2012 - Computação em NuvemSSI 2012 - Computação em Nuvem
SSI 2012 - Computação em Nuvem
 
Desenvolvimento de aplicações para Windows Azure
Desenvolvimento de aplicações para Windows AzureDesenvolvimento de aplicações para Windows Azure
Desenvolvimento de aplicações para Windows Azure
 
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
 
Web Dev Camp
Web Dev CampWeb Dev Camp
Web Dev Camp
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentais
 
Interop Day 2011 - Construindo aplicações web com WebMatrix
Interop Day 2011 - Construindo aplicações web com WebMatrixInterop Day 2011 - Construindo aplicações web com WebMatrix
Interop Day 2011 - Construindo aplicações web com WebMatrix
 
QS24 - REST e SOAP com Razor e WebMatrix
QS24 - REST e SOAP com Razor e WebMatrixQS24 - REST e SOAP com Razor e WebMatrix
QS24 - REST e SOAP com Razor e WebMatrix
 
Conhecendo o NuGet e utilizando com ASP.NET MVC
Conhecendo o NuGet e utilizando com ASP.NET MVCConhecendo o NuGet e utilizando com ASP.NET MVC
Conhecendo o NuGet e utilizando com ASP.NET MVC
 

Modelagem de dados

  • 1. Modelagem de Dados Prof. Ms. Fabricio Lopes Sanchez
  • 2. Tópicos • Modelagem de dados? O que é? • Os três pilares da modelagem de dados – Modelagem conceitual – Modelagem lógica – Modelagem física • Um exemplo? • Porque é importante? • Conclusões
  • 3. Modelagem de dados: o que é? Modelagem de dados é o processo anterior a construção do banco de dados em um software.
  • 4. Modelagem de dados: o que é? O processo de construção de um software pode ser subdivido em três grandes etapas... Levantamento Modelagem Implementação de requisitos e dos dados do sistema em documentação uma linguagem
  • 5. Modelagem de dados: o que é? O processo de construção de um software pode ser subdivido em três grandes etapas... Levantamento Modelagem Implementação de requisitos e dos dados do sistema em documentação uma linguagem
  • 6. Etapas do processo de modelagem Modelagem Determina a forma (conceitual) como os dados estarão dispostos Determina as estruturas no banco. físicas do banco de dados e das informações em sí. Modelo Conceitual Modelo Físico Determina a lógica dos dados dentro da estrutura Modelo do banco. A principal figura Lógico aqui é o MER/DER.
  • 7. Um exemplo... Imagine que uma clínica médica deseja um pequeno sistema para controlar o fluxo de seus médicos. Levando-se em consideração que o os requisitos já foram estabelecidos, modele os dados e construa o banco de dados. IFSP Centro Médico
  • 8. 1ª. Etapa: Modelo conceitual MEDICOS = *CodigoMedico (número), Nome (texto), CRM (número), Email (texto), DataAdmissão (Data), #CodigoEspecialidade (numero) ESPECIALIDADES = *CodigoEspecialidade (numero), Especialidade (texto), Descrição (texto grande) Alguns conceitos presentes... • Entidade: é o elemento conceitual que representa algo do mundo real no futuro software. (Exemplos: MEDICOS, ESPECIALIDADES) • Atributo: é o elemento que traz uma característica relevante ao modelo da entidade no sistema. (Exemplos: Nome, Email, CodigoMedico, etc.) • Chaves (primária ou estrangeira): decora determinado(s) atributo(s) com recursos adicionais. Chave primária possui a característica de tornar o registro único. Chave estrangeira possui a capacidade de interligar entidades. • Relacionamento: é o compartilhamento de dados entre entidades.
  • 9. 2ª. Etapa: Modelo lógico MEDICOS = *CodigoMedico (número), Nome (texto), CRM (número), Email (texto), DataAdmissão (Data), #CodigoEspecialidade (numero) ESPECIALIDADES = *CodigoEspecialidade (numero), Especialidade (texto), Descrição (texto grande) CodigoEspecialidade MÉDICOS ESPECIALIDADES CodigoMedico CodigoEspecialidade Diagrama Entidade Relacionamento
  • 10. 3ª. Etapa: Modelo Físico CREATE DATABASE BD_ClinicaIFSP CREATE TABLE MEDICOS ( CodigoMedico int not null, Nome varchar(20) not null, CRM int not null, Email varchar(30) not null, DataAdmissao Datetime not null, CodigoEspecialidade int not null, PRIMARY KEY(CodigoMedico) ); CREATE TABLE ESPECIALIDADES ( CodigoEspecialidade int not null, Especialidade varchar(30) not null, Descricao text null ); ALTER TABLE MEDICOS ADD CONSTRAINT fk_medicos_especialidades FOREIGN KEY(CodigoEspecialidade) REFERENCES ESPECIALIDADES(CodigoEspecialidade)
  • 11. Porque é importante saber? Porque a modelagem errada fatalmente implicará em um banco de dados com problema, que implicará em uma aplicação com problema.
  • 12. Conclusões... • Modelagem de dados é um dos mais importantes processos no desenvolvimento de aplicações • Se um sistema começa pela base de dados, na verdade ele começa na modelagem • Conhecer todos os aspectos da modelagem de dados implicará no bom ou mal funcionamento do software