Home | Escopo e Cronograma | Processo | Design/Mockups | Configuração | Arquitetura | Código | Banco de Dados | Qualidade |
---|
Banco de Dados
Descrição
A modelagem, documentação e organização do banco de dados está situada nessa seção.
Sumário
O SGBD
Devido à natureza do sistema envolver veículos aéreos que se deslocarão entre diversas localidades no perímetro urbano, fez-se clara a necessidade da utilização de um Sistema de Gerenciamento de Banco de Dados (SGBD) que comportasse consultas geoespaciais. Dentro os SGBDs que possuem de forma nativa essa funcionalidade destacam-se:
Devido à familiaridade dos integrantes do grupo pela utilização de bancos relacionais, que proporcionam também grande validação e consistência de dados através do uso de constraints e chaves únicas, primárias e estrangeiras, optou-se pela utilização do MYSQL 8 como SGBD.
Modelagem
Esquema Lógico Idealizado
Você poderá atualizar e interagir com este diagrama: Ver Detalhes do Diagrama de Banco
Esquema Lógico Implementado
Devido à alterações no escopo do projeto, as tabelas drones
e historical_positions
não foram implementadas. A primeira seria dedicada para gerência dos drones da plataforma, a segunda para guardar o histórico de posições destes drones, com esse histórico seria possível saber por onde o drone esteve, seja durante uma entrega ou fora dela.
Implementação
A implementação deste banco se deu através do Java Persistence API (JPA). Esta API, realiza o interfaceamento entre a definição das entidades em código com o SGBD. Desta forma, ao passo que estas entidades foram criados em código, coube ao JPA criar as tabelas no banco de dados.
É possível visualizar estas entidades acessando o repositório do backend no caminho: src/main/java/com/apus/drones/apusdronesbackend/model/entity/