SlideShare uma empresa Scribd logo
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

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
Vinicius Buffolo
 
Sistemas de Informação
Sistemas de InformaçãoSistemas de Informação
Sistemas de Informação
Mauricio Uriona Maldonado PhD
 
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Leinylson Fontinele
 
Banco de Dados - Conceitos Básicos
Banco de Dados - Conceitos BásicosBanco de Dados - Conceitos Básicos
Banco de Dados - Conceitos Básicos
Adriano Leite da Silva
 
Banco de dados
Banco de dadosBanco de dados
Banco de dados
Albert Belchior
 
Modelagem De Banco De Dados
Modelagem De Banco De DadosModelagem De Banco De Dados
Modelagem De Banco De Dados
mgoberto
 
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
Cris Fidelix
 
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER
Vitor Hugo Melo Araújo
 
Modelagem de Dados
Modelagem de DadosModelagem de Dados
Modelagem de Dados
Roberto Grande
 
Aula 7 banco de dados
Aula 7   banco de dadosAula 7   banco de dados
Aula 7 banco de dados
Jorge Ávila Miranda
 
Banco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro BancoBanco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro Banco
Leinylson Fontinele
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
Gleydson Sousa
 
Mer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoMer - Modelo Entidade Relacionamento
Mer - Modelo Entidade Relacionamento
Rademaker Siena
 
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
Henrique Nunweiler
 
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
 
Banco de dados de Loja
Banco de dados de LojaBanco de dados de Loja
Banco de dados de Loja
Leinylson Fontinele
 
Introdução ao desenvolvimento Web
Introdução ao desenvolvimento WebIntrodução ao desenvolvimento Web
Introdução ao desenvolvimento Web
Sérgio Souza Costa
 
Banco de dados - Mapeamento MER - Relacional
Banco de dados - Mapeamento MER - RelacionalBanco de dados - Mapeamento MER - Relacional
Banco de dados - Mapeamento MER - Relacional
Daniel Brandão
 
Introdução a Bancos de Dados
Introdução a Bancos de DadosIntrodução a Bancos de Dados
Introdução a Bancos de Dados
Ricardo Flores Zago, PMP, MSc
 
Aula 2 - Introdução a Banco de Dados
Aula 2 - Introdução a Banco de DadosAula 2 - Introdução a Banco de Dados
Aula 2 - Introdução a Banco de Dados
Vitor Hugo Melo Araújo
 

Mais procurados (20)

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
 
Sistemas de Informação
Sistemas de InformaçãoSistemas de Informação
Sistemas de Informação
 
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
 
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
Banco de dadosBanco de dados
Banco de dados
 
Modelagem De Banco De Dados
Modelagem De Banco De DadosModelagem De Banco De Dados
Modelagem De Banco De Dados
 
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
 
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER
 
Modelagem de Dados
Modelagem de DadosModelagem de Dados
Modelagem de Dados
 
Aula 7 banco de dados
Aula 7   banco de dadosAula 7   banco de dados
Aula 7 banco de dados
 
Banco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro BancoBanco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro Banco
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
 
Mer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoMer - Modelo Entidade Relacionamento
Mer - Modelo Entidade Relacionamento
 
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
 
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)
 
Banco de dados de Loja
Banco de dados de LojaBanco de dados de Loja
Banco de dados de Loja
 
Introdução ao desenvolvimento Web
Introdução ao desenvolvimento WebIntrodução ao desenvolvimento Web
Introdução ao desenvolvimento Web
 
Banco de dados - Mapeamento MER - Relacional
Banco de dados - Mapeamento MER - RelacionalBanco de dados - Mapeamento MER - Relacional
Banco de dados - Mapeamento MER - Relacional
 
Introdução a Bancos de Dados
Introdução a Bancos de DadosIntrodução a Bancos de Dados
Introdução a Bancos de Dados
 
Aula 2 - Introdução a Banco de Dados
Aula 2 - Introdução a Banco de DadosAula 2 - Introdução a Banco de Dados
Aula 2 - Introdução a 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-basico
Amadeo Santos
 
Banco de Dados _ Modelagem Conceitual.pdf
Banco de Dados _ Modelagem Conceitual.pdfBanco de Dados _ Modelagem Conceitual.pdf
Banco de Dados _ Modelagem Conceitual.pdf
PauloVictor415128
 
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
Carlos Melo
 
Artc 1249307788 43
Artc 1249307788 43Artc 1249307788 43
Artc 1249307788 43
Bruno Bsantos
 
Banco de dados aula 2
Banco de dados   aula 2Banco de dados   aula 2
Banco de dados aula 2
danitrani
 
Banco de dados aula 2
Banco de dados  aula 2Banco de dados  aula 2
Banco de dados aula 2
Albert Belchior
 
Modelos de dados
Modelos de dadosModelos de dados
Modelos de dados
aeasantos
 
Data Warehouse - Modelagem
Data Warehouse - ModelagemData Warehouse - Modelagem
Data Warehouse - Modelagem
Rudson Kiyoshi Souza Carvalho
 
Livro banco de_dados_volume_02
Livro banco de_dados_volume_02Livro banco de_dados_volume_02
Livro banco de_dados_volume_02
CLEAN LOURENÇO
 
Sistema de Base de Dados1.ppt
Sistema de Base de Dados1.pptSistema de Base de Dados1.ppt
Sistema de Base de Dados1.ppt
hhuu6
 
Banco de Dados - Aula 02
Banco de Dados - Aula 02Banco de Dados - Aula 02
Banco de Dados - Aula 02
Willian Carvalho
 
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 Fidelix
Cris 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
Cris Fidelix
 
Modelagem Dados - Introdução à Conceitos
Modelagem Dados - Introdução à ConceitosModelagem Dados - Introdução à Conceitos
Modelagem Dados - Introdução à Conceitos
paulocoob
 
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
Rangel Javier
 
Novo microsoft office power point presentation
Novo microsoft office power point presentationNovo microsoft office power point presentation
Novo microsoft office power point presentation
machadocarla
 
Aula04 3
Aula04 3Aula04 3
Aula04 3
igorsanches11
 
Apostila de Banco dados
Apostila de Banco dadosApostila de Banco dados
Apostila de Banco dados
Fernando Palma
 
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
RADILSON RIPARDO DE FRETIAS
 

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
 
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
 
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
 

Mais de Fabrício Lopes Sanchez

Azure Lab Services
Azure Lab ServicesAzure Lab Services
Azure Lab Services
Fabrício Lopes Sanchez
 
Projetando aplicações para a nuvem
Projetando aplicações para a nuvemProjetando aplicações para a nuvem
Projetando aplicações para a nuvem
Fabrício Lopes Sanchez
 
Microserviços na vida real
Microserviços na vida realMicroserviços na vida real
Microserviços na vida real
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 Azure
Fabrício Lopes Sanchez
 
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
Fabrí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.0
Fabrício Lopes Sanchez
 
Docker para devs .NET
Docker para devs .NETDocker para devs .NET
Docker para devs .NET
Fabrício Lopes Sanchez
 
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
Fabrí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
 
O Futuro do ASP.NET (vNext)
O Futuro do ASP.NET (vNext)O Futuro do ASP.NET (vNext)
O Futuro do ASP.NET (vNext)
Fabrício Lopes Sanchez
 
A Nova Web
A Nova WebA 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
Fabrício Lopes Sanchez
 
SSI 2012 - Computação em Nuvem
SSI 2012 - Computação em NuvemSSI 2012 - Computação em Nuvem
SSI 2012 - Computação em Nuvem
Fabrí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 Azure
Fabrí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
 
Web Dev Camp
Web Dev CampWeb Dev Camp
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentais
Fabrí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 WebMatrix
Fabrí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 WebMatrix
Fabrí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 MVC
Fabrí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