Construir um modelo de dados é uma arte e uma enorme responsabilidade … Não subestime esta etapa do projeto de desenvolvimento de software.
Um pesquisador australiano chamado Daniel L. Moody diz que as mudanças no banco de dados podem custar 33 vezes mais do que construir um modelo correto.
Não forneça apenas um código executável funcionando, eu sei que você quer ir além… Você deseja entregar aplicativos bem-sucedidos, e um dos erros que impedem que você alcance esse objetivo é não modelar seu banco de dados!
Um enorme conjunto de linhas de código não é o suficiente para ter uma ótima aplicação … E sabendo disso tenho certeza que você vai me ouvir, e irá criar um modelo de dados antes de começar a codificar sua aplicação.
E você sabe por que é tão importante criar o modelo? Os dados são o principal ativo da empresa, e você, como parte dela, também é responsável por eles. Os erros mais terríveis para um aplicativo são aqueles que não têm uma mensagem de erro! Por exemplo, quando dados inconsistentes são salvos em BD.
Este artigo é o terceiro de uma série de quatro, onde eu quero alertá-lo sobre 3 erros que os desenvolvedores iniciantes cometem que impedem a criação de ótimas aplicações. O primeiro erro é não escolher o banco de dados, o segundo é não modelar seus dados. E neste artigo falaremos sobre o modelo de dados querido e odiado.
Modelagem de dados
A modelagem de dados é uma atividade que pode ser realizada em vários estágios do desenvolvimento do sistema.
O objetivo da modelagem de dados é coletar e documentar informações para a obtenção de estruturas de dados que nos conduzam ao projeto do banco de dados.
Depois de identificar os objetos que fazem parte do modelo, suas características, suas relações com outros objetos e seu comportamento, podemos aplicar uma das técnicas de modelagem de dados.
Mais importante do que as técnicas de modelagem é compreender os conceitos que estão sendo modelados. Então, se você não entendeu, não modele!
O que é um modelo de dados?
É uma representação gráfica e textual das estruturas e regras que definem os dados.
Você precisará entender a realidade que será modelada. E como você entende se muitas vezes você não recebe a documentação adequada?
Você precisará:
- Observar – entrevistas, reuniões, questionários, análise de documentos aliados ao conhecimento e experiência que você adquire com o tempo e os desafios do dia-dia;
- Compreender os conceitos: este é o core do processo de modelagem! Muitos desenvolvedores acham difícil modelar os dados porque não entendem os conceitos corretamente. Nesta fase, você deve identificar, conceituar (sim meus amigos! É indispensável explicar cada “peça” do seu modelo de dados. Não confie na sua memória!), compreender e assimilar o objeto observado.
- Representar objetos: aplicação de técnicas de modelagem, são elas que garantem a compreensão do seu modelo e visam simplificar sua construção.
- Verificar a fidelidade do modelo e falta de fidelidade também: detectar falhas e anomalias assim como as suas causas. Tais causas podem ser devidas a conceitos mal formados, pontos de vista equivocados, concepção defeituosa ou aplicação incorreta da técnica de representação.
- Validar: procure aprovação para o seu modelo. Para que este item seja alcançado, é necessário a participação de vários profissionais da área técnica: arquiteto de dados, administradores de banco de dados, arquitetos de sistemas são papéis indispensáveis.
Modelo conceitual
É o modelo de nível mais alto, é uma descrição dos dados independentemente da implementação. Nesta etapa da modelagem são descritos quais dados são importantes para a realidade modelada, mas não são descritos como esses dados são armazenados.
“Momento do conselho da Dani” … Você nem sempre precisará de um grande rigor formal nesta etapa! Eu aconselho você a entender bem o modelo antes de formaliza-lo. Faça os seus rabiscos, esboços e desenhos, use-os para representar seu entendimento inicial. Discuta com os profissionais envolvidos. Não tenha retrabalho! Formalize o modelo quando você tiver compreendido o que deve modelas, nada se tiver dúvidas.!!!
Modelo lógico
É aquele em que objetos, suas características e relacionamentos têm representação de acordo com as regras e limitações de algum tipo de técnica. Essa representação é independente dos dispositivos físicos de armazenamento e dos significados das estruturas de dados.
Modelo físico
É aquele onde a representação de objetos é feita sob o foco da implementação de estruturas em um determinado tipo de banco de dados.
Para construir este modelo, você precisará da ajuda do DBA, que é o profissional responsável pela administração do banco de dados.
Conclusão
Construir o modelo de dados para o seu aplicativo não é uma tarefa secundária e não deve ser visto como tal. Nesta fase, você precisará entender e documentar a realidade observada, ter contato com muitas pessoas e assim terá uma contribuição importante na criação de sua aplicação.
Este é apenas o início da nossa jornada, é importante que você tenha entendido:
O que é o modelo de dados?
Por que modelar o banco de dados?
Quais são os níveis de abstração do modelo de dados?
Teremos outras postagens focadas neste assunto. Estou certa de que você adquirirá mais e mais conhecimento e criará aplicativos cada vez mais incríveis!
Se você gostou, compartilhe este post! Se você tiver dúvidas, fale comigo.