Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/juliannalencar/modelagem_bd_relacional
Este projeto envolve a modelagem de banco de dados para a AuraBella, uma empresa fictícia de cosméticos e bem-estar. Foi proposto como parte da trilha de dados do programa Desenvolve 2024, uma iniciativa gratuita do Grupo Boticário para formação e inclusão de talentos em tecnologia.
https://github.com/juliannalencar/modelagem_bd_relacional
brmodelo modelagem-de-dados modelo-conceitual modelo-fisico modelo-logico sql-power-arch
Last synced: about 2 months ago
JSON representation
Este projeto envolve a modelagem de banco de dados para a AuraBella, uma empresa fictícia de cosméticos e bem-estar. Foi proposto como parte da trilha de dados do programa Desenvolve 2024, uma iniciativa gratuita do Grupo Boticário para formação e inclusão de talentos em tecnologia.
- Host: GitHub
- URL: https://github.com/juliannalencar/modelagem_bd_relacional
- Owner: juliannalencar
- Created: 2024-04-26T21:01:11.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-04-26T21:59:11.000Z (8 months ago)
- Last Synced: 2024-04-26T22:23:26.893Z (8 months ago)
- Topics: brmodelo, modelagem-de-dados, modelo-conceitual, modelo-fisico, modelo-logico, sql-power-arch
- Homepage:
- Size: 3.5 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Modelagem Banco de Dados Relacional - AuraBella
Este projeto educacional foi desenvolvido durante a trilha de Dados do programa Desenvolve 2024, focando na criação de um banco de dados relacional para processos de ***vendas***, ***gestão de estoque*** e ***pontuação de clientes*** na **AuraBella**, uma empresa fictícia do setor de cosméticos. Será aberta uma nova franquia que precisa de um sistema robusto para gerenciamento de processos e armazenamento de dados. Durante este projeto, foi desenvolvido os modelos *conceitual*, *lógico* e *físico* deste banco de dados relacional.## Fluxo de Processos na AuraBella
A distribuição de produtos da AuraBella para as franquias é feita por Centros de Distribuição (CD). Após o recebimento das mercadorias, estas são registradas no estoque através de um processo de entrada, utilizando documentos como notas fiscais para detalhar os itens recebidos. O estoque é então atualizado para refletir os novos itens.Os processos de compra e de acumulação de pontos estão diretamente associados aos clientes, que precisam estar cadastrados no sistema com todas as informações relevantes. Cada compra deve ser associada a um cliente específico e a pelo menos um produto.
Quando uma compra é concluída, pontos são atribuídos ao cliente, que podem ser usados como desconto em futuras compras dentro de um prazo determinado. Simultaneamente, o sistema atualiza o estoque para reduzir as quantidades dos itens vendidos.
## Modelo Conceitual
A análise do fluxo de processos permitiu identifucar as entidades e atributos essenciais para a estruturação do banco de dados. O **modelo conceitual** apresentado a seguir ilustra essas abstraçòes, delineando as entidades, seus atributos e as relações entre eles.
![Modelo Conceitual](https://i.imgur.com/dmgcykp.png)## Descrição de Entidades
Nessa etapa, é possível entender um pouco melhor cada entidade e como elas se relacionam.* __CENTRO_DISTRIBUICAO__:
Descreve o Centro de Distribução (CD) responsável por realizar a entrega de produtos. Estará diretamente relacionada as entradas de produtos.
* __ENTRADA__:
Descreve a entrada de produtos, sendo a parte identificadora da entrada, contendo as informações da entrega, como: número do documento de entrega (nota fiscal ou semelhante), data, CD e valor total da entrada. Toda entrada deve estar vinculada a um centro de distribuição.* __ITEM_ENTRADA__:
Esta entidade descreve separadamente cada item listado em uma determinada entrada. Portanto, cada ocorrência deve obrigatoriamente estar vinculado a uma entrada e um produto.* __PRODUTO__:
Descreve os produtos, sendo que cada produto deve estar vinculado a uma categoria.* __CATEGORIA__:
Descreve as categorias as quais os produtos serão vinculados. É separada em **grupo** e **subgrupo**, sendo o grupo uma característica mais geral e o subgrupo uma característica mais específica.
__Exemplo__:
_Grupo_ -> Perfumaria
_Subgrupo_ -> Perfumaria Feminina, Perfumaria Masculina, Perfumaria Infantil* __CLIENTE__:
Descreve os clientes, que serão vinculados as compras e também as pontuações.* __COMPRA__:
Descreve as compras realizadas pelos clientes, portanto, a mesma deve estar vinculada a um cliente e também as pontuações, uma vez que a compra pode gerar uma pontuação. É o descritivo mais geral do processo, possuindo informações como cliente que realizou a compra, data, valor total e desconto (se aplicável).* __ITEM_COMPRA__:
Descreve separadamente cada item listado em uma determinada compra, deve obrigatoriamente estar vinculado a uma compra e um produto.* __PONTUACAO__:
Descreve as pontuações vinculadas a cada cliente a partir de suas respectivas compras, a pontuação está vinculada tanto ao cliente, quanto a compra que gerou essa pontuação.
Também registra o tipo de movimentação realizada sobre os pontos, tendo em vista que os pontos podem ser gerados e descontados em outras compras, bem como a data de movimentação de cada pontuação.* __ESTOQUE__:
Descreve o estoque, listando os produtos em estoque e suas respectivas quantidades, deve estar relacionado a produtos.## Modelo Lógico
Baseado no modelo conceitual, desenvolvemos o __modelo lógico__, que transforma entidades em tabelas e atributos em campos. Conforme práticas de normalização, os atributos compostos do modelo conceitual são distribuídos em tabelas distintas para simplificar a estrutura e evitar a superlotação de campos em uma única tabela, como ilustrado na imagem abaixo.
![Modelo Lógico](https://i.imgur.com/BX0olvL.png)## Modelo Físico
Finalizando, apresentamos o __modelo físico__ abaixo. Este modelo detalha os tipos de dados para cada coluna, estabelece as relações entre as tabelas e especifica as chaves primárias e estrangeiras de cada tabela.
![Modelo Físico](https://i.imgur.com/tC5GlZd.png)## Ferramentas utilizadas
* [BrModel](http://www.sis4.com/brModelo/#google_vignette): Desenvolvimento dos modelos conceitual e lógico.
* [SQL Power Architect](https://dbmstools.com/tools/sql-power-architect): Desenvolvimento do modelo físico.## Autora
__Julianna Dantas Alencar Reis__
[![LinkedIn](https://img.shields.io/badge/linkedin-%230077B5.svg?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/juliannalencar/)