| [Home](home) | [Arquitetura](arquitetura) |**Banco de Dados** | [Configuração](configuracao) | [Gerenciamento do Projeto](Gerenciamento_projeto) | [Instalação](instalacao) | [Materiais de Estudo](Materiais_estudo) | [Mockups](mockups) | [Requisitos](requisitos) | [Reuniões](reunioes) | [Sprints](sprints) | | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | # Página do Banco de Dados

## Universo de discurso do Projeto DTool O objetivo do projeto é armazenar o tempo que os papeis envolvidos nas atividades de uma determinada tecnologia levam para executá-las as e possibilitar a exportação destes dados para fins de análise. Cada hospital pode trabalhar com tecnologias diferentes e cada tecnologia também pode ter diferentes papeis e atividades envolvidas. Cada funcionário do hospital desempenha um papel e estes papeis também variam de um hospital para o outro, assim como podem variar as atividades que executam. É necessário que a aplicação liste para o funcionário somente as atividades que são relacionadas ao seu papel, sendo que não é necessário armazenar informações pessoais do funcionário. Também é necessário que sejam listados somente os papeis envolvidos numa tecnologia: o AVC é um exemplo de tecnologia e uma de suas atividades é a realização de consultas, esta que pode ser desempenhada por diferentes papeis (médico intensivista, médico radiologista, médico radiologista e etc.) e cada um destes papeis pode levar um tempo diferente para realizar a consulta. É possível que uma atividade tenha uma nome longo e também um nome curto resumido, para facilitar a visualização. Não é necessário relacionar os dados por pacientes e nem consistir os dados dos pacientes, para fins de privacidade, mesmo que deva ser possível o funcionário cadastrar atividades relacionadas aos pacientes no aplicativo, apenas para sua organização das atividades que executa. Ao final, deve ser possível obter a mediana de tempo levado para a execução de atividades de um mesmo papel do hospital em questão, assim como o tempo mínimo e máximo. ----------------------- ## Diagrama Conceitual O modelo conceitual de dados tem como sua principal finalidade capturar os requisitos de informação e regras de negócio sob o ponto de vista de negócio, normalmente é o primeiro modelo a ser desenvolvido já que ele não depende de fatores tecnológicos. Ele é construído da seguinte maneira, são levantados as entidades, os atributos dessas entidades e após termos isso é realizado o relacionamento entre essas entidades. Abaixo está o diagrama conceitual do nosso aplicativo: ![Diagramas-ModeloConceitual__3_](uploads/96be79965eae443cce420632989ecbe7/Diagramas-ModeloConceitual__3_.png) ## Diagrama Lógico O modelo lógico é desenvolvido levando em consideração o que foi modelado no conceitual, nele já levamos em conta algumas limitações e implementamos recursos como adequação e nomenclatura, ele é implementado da seguinte maneira as entidades do modelo relacional passam a ser tabelas e os atributos passam a ser colunas dessas tabelas, também definimos nele as chaves primárias e chaves estrangeiras de cada tabela. Abaixo está o diagrama físico do nosso aplicativo: ![Diagramas-ModeloLógico](uploads/03947392d1d5c2d05a04316e37b300c5/Diagramas-ModeloLógico.png) ## Diagrama Físico O modelo físico é onde fazemos a modelagem física do nosso banco de dados, nele além de ser modelado seguindo o que foi definido nos diagramas anteriores também levamos em consideração a tecnologia escolhida. A implementação dele é bem-parecida com a do modelo lógico, o que adicionamos a mais é a definição dos tipos de dados de cada coluna e o tamanho. ![Diagramas-Modelo_Físico](uploads/dc72485748c640cb740aba4b5666d335/Diagramas-Modelo_Físico.png) * o Collections(Entities) * o ScriptSQL