Modelo Entidade Relacionamento - Locadora de Veículos

Por Luiz Euzébio Dos Santos Neto | 08/06/2017 | Tecnologia

 

1. Introdução

1.1 História

Igualmente a muitas tecnologias na computação industrial, os fundamentos de bancos de dados relacionais surgiram na empresa IBM, nas décadas de 1960 e 1970, através de pesquisas de funções de automação de escritório. Foi durante um período da história na qual empresas descobriram que estava muito custoso empregar um número
grande de pessoas para fazer trabalhos como armazenar e indexar (organizar) arquivos. Por este motivo, valia a pena os esforços e investimentos em pesquisar um meio mais barato e ter uma solução mecânica eficiente.
Em 1970 um pesquisador da IBM - Ted Codd - publicou o primeiro artigo sobre bancos de dados relacionais. Este artigo tratava sobre o uso de cálculo e álgebra relacional para permitir que usuários não técnicos armazenassem e recuperassem grande quantidade de informações. Codd visionava um sistema onde o usuário seria capaz de acessar as informações através de comandos em inglês, onde as informações estariam armazenadas em tabelas.
Devido à natureza técnica deste artigo e a relativa complicação matemática, o significado e proposição do artigo não foram prontamente realizados. Entretanto, ele levou a IBM a montar um grupo de pesquisa conhecido como System R (Sistema R).
O projeto do Sistema R era criar um sistema de banco de dados relacional o qual eventualmente se tornaria um produto. Eventualmente o Sistema R evoluiu para SQL/DS, o qual posteriormente tornou-se o DB2. A linguagem criada pelo grupo do Sistema R foi a Structured Query Language (SQL) - Linguagem de Consulta Estruturada). Esta linguagem tornou-se um padrão na indústria para bancos de dados relacionais e hoje em dia é um padrão ISO (International Organization for Standardization). A ISSO é a Organização Internacional de Padronização.

1.2 Conceitos Fundamentais de Banco de Dados

Um banco de dados “É uma coleção de dados inter-relacionados, representando informações sobre um domínio específico” (Korth, H.F. e Silberschatz, 1994), ou seja, sempre que for possível agrupar informações que se relacionam e tratam de um mesmo assunto, posso dizer que tenho um banco de dados.
Podemos exemplificar situações clássicas como uma lista telefônica, um catálogo de CDs ou um sistema de controle de RH de uma empresa.
Já um sistema de gerenciamento de banco de dados (SGBD) é um software que possui recursos capazes de manipular as informações do banco de dados e interagir com o usuário. Exemplos de SGBDs são: Oracle, SQL Server, DB2, PostgreSQL, MySQL, o próprio Access ou Paradox, entre outros.
Podemos conceituar um sistema de banco de dados como o conjunto de quatro componentes básicos: dados, hardware, software e usuários. “Sistema de bancos de dados pode ser considerado como uma sala de arquivos eletrônica”. (Date, C.J., 1991).Os objetivos de um sistema de banco de dados são o de isolar o usuário dos detalhes internos do banco de dados (promover a abstração de dados) e promover a independência dos dados em relação às aplicações, ou seja, tornar independente da aplicação, a estratégia de acesso e a forma de armazenamento.

1.3 Abstração de dados

O sistema de banco de dados deve garantir uma visão totalmente abstrata do banco de dados para o usuário, ou seja, para o usuário do banco de dados pouco importa qual unidade de armazenamento está sendo usada para guardar seus dados, contanto que os mesmos estejam disponíveis no momento necessário.
Esta abstração se dá em três níveis:
 Nível de visão do usuário: as partes do banco de dados que o usuário tem acesso de acordo com a necessidade individual de cada usuário ou grupo de usuários;
 Nível conceitual: define quais os dados que estão armazenados e qual o relacionamento entre eles;
 Nível físico: é o nível mais baixo de abstração, em que define efetivamente de que maneira os dados estão armazenados.

1.4 Projeto de banco de dados

Todo bom sistema de banco de dados deve apresentar um projeto, que visa a organização das informações e utilização de técnicas para que o futuro sistema obtenha boa performance e também facilite infinitamente as manutenções que venham a acontecer.
O projeto de banco de dados se dá em duas fases:
 Modelagem conceitual;
 Projeto lógico.

1.4.1 Modelo conceitual

É a descrição do BD de maneira independente ao SGBD, ou seja, define quais os dados que aparecerão no BD, mas sem se importar com a implementação que se dará ao BD. Desta forma, há uma abstração em nível de SGBD.

1.4.2 Modelo lógico

Descreve o BD no nível do SGBD, ou seja, depende do tipo particular de SGBD que será usado. Não podemos confundir com o Software que será usado. O tipo de SGBD que o modelo lógico trata é se o mesmo é relacional, orientado a objetos, hierárquico, etc.

1.5 Modelo Entidade Relacionamento (MER)

O Modelo Entidade-Relacionamento tem o objetivo de representar as estruturas de dados da forma mais próxima do mundo real dos negócios.
Existem três conceitos no Modelo Entidade Relacionamento: Entidade, Atributo e Relacionamento.

Entende-se que Entidade são objetos, as características dos objetos são os Atributos, e a relação entre os objetos são os relacionamentos.

1.5.1 Entidade

Uma entidade serve tanto para depósito quanto para recuperação de dados. Ela representa substantivos, concretos ou abstratos. Exemplo: Na figura 1, todos as pessoas físicas de um determinado cadastro de uma empresa podem ser armazenados em uma entidade chamada Pessoa Física.
Todos as pessoas da Entidade Pessoa Física podem ter um identificador único.
Assim como a Entidade é conhecida por Tabela, o identificador seria a chave primária.
Exemplo:
Figura 1: exemplo de entidade

1.5.2 Atributo

Toda entidade possui atributos, ou seja, características que informam sobre a entidade.

[...]

Artigo completo: