Se
os profissionais responsáveis pela modelagem seguirem as recomendações
apresentadas neste artigo, é possível que o modelo de dados seja criado com
características e detalhes que o tornem adequado para atender os requisitos de
armazenamento de dados de acordo com os cenários do projeto.
Uma importante definição de qualidade (no contexto de desenvolvimento) diz que para obter um software com qualidade é preciso que ele atenda os requisitos. Apesar de esta afirmação ser verdadeira, ela deixa de lado alguns detalhes do processo de produção de software, especialmente atitudes e comportamentos que podem ajudar a modelagem durante o ciclo de desenvolvimento.
O desenvolvimento de software é composto de diversas etapas importantes que demandam algumas habilidades do desenvolvedor. Dentre as principais habilidades necessárias, a modelagem assume um papel central para completar as etapas e atividades do processo de desenvolvimento que envolve compreensão e representação de aspectos do mundo real relevantes para o software. De forma geral, a modelagem vai transformar a realidade em algum tipo de artefato de software que será utilizado durante o processo de desenvolvimento.
Do ponto de vista técnico, existem diferentes formas de modelagem que devem ser realizadas durante a criação de um sistema computacional ou mesmo de um banco de dados. Este artigo se concentrará em recomendações e sugestões de atitudes que podem auxiliar o profissional que precisa criar e manter um modelo de dados.
Desta forma o conteúdo apresentado neste artigo segue a linha de recomendações e sugestões de melhores práticas para os profissionais que precisam criar modelos de dados conceituais que futuramente serão implementados em um SGBD.
A partir das recomendações, dicas, sugestões e observações discutidas neste artigo o leitor poderá não só compreender melhor como realizar uma tarefa de modelagem, mas também se capacitar para lidar com diferentes situações e contextos que necessitam de técnicas adequadas para a criação de um modelo de dados.
As recomendações deste artigo se concentram em atitudes como observação, abstração, organização, adaptação, flexibilidade e outros aspectos conceituais e técnicos.
Apesar das seções a seguir se concentrarem em como lidar com modelos de dados, as recomendações são gerais e podem ser utilizadas em qualquer tipo de modelagem. O leitor que seguir o que for apresentado terá uma grande chance de produzir modelos melhores e, em linhas gerais, contribuir para a criação de um software de melhor qualidade.
Seja um bom observador
Toda modelagem requer a observação de um cenário ou situação. Contudo, nem sempre esta observação acontece in loco, ou seja, o modelador não está fisicamente presente para ver o que está acontecendo e obter informações para a modelagem. Isso acontece por vários motivos, mas mesmo nestas situações é importante contar com a habilidade de um bom observador, seja analisando logs de entrevista ou visualizando gravações de operações do dia a dia.
Saber observar bem antes de modelar quer dizer que é preciso ter paciência para esperar que certos eventos ocorram, conseguir compreender o que está acontecendo, analisar a situação, identificar quais são os recursos necessários e o que está acontecendo como um todo. Algumas pessoas gostam de utilizar o termo “olho clínico” para identificar profissionais que sabem observar exatamente o que está acontecendo e facilmente identificar os problemas e as soluções.
Para que um modelador obtenha a habilidade de “olho clínico” são precisos diversos fatores, mas podemos destacar a capacidade de detectar padrões rapidamente, de aprender novos conceitos somente com base na observação e, principalmente, de saber observar muito mais do que falar.
Saiba fazer perguntas e ouvir as respostas
É comum surgirem dúvidas durante uma sessão de modelagem seja por falta de conhecimento do domínio ou por algum conceito que não ficou devidamente esclarecido. Neste momento o modelador deve pensar e formular uma pergunta adequada para que ele consiga obter a informação necessária para seguir adiante na modelagem.
Contudo, durante as conversas com usuários e especialistas em domínio é comum que uma pergunta relativamente simples como “Esta entidade faz X ou faz Y?” leve a respostas prolixas por parte de quem detém o conhecimento. Neste momento o modelador deve ser capaz de identificar que o rumo da resposta está fugindo do escopo da pergunta e, se for o caso, interromper a pessoa que está respondendo.
De forma oposta, o modelador deve exercer sua capacidade de
agir como uma esponja: absorver o máximo de informação relevante possível e
ouvir com calma e paciênci ...