Many a times ER models are created by the data team and are not shared outside of the data team generally for the lack of tools licenses, since its not feasible for the entire team to purchase licenses for the ER modelling tools such as Erwin Data Modeller or Er Studio
How
In an agile development environment as the requirements are evolving over the duration of the project, the database design is being evolved along with the business requirements. While the database design is being changed the data team generally maintains a data model, its share this data model with the rest of the development team for better collaboration and knowledge sharing.
The data team working with the developers change the database using migration scripts, while doing the changes to the database the data model can be updated to ensure both are synchronized. The step to update the data model may seem redundant or unnecessary sometimes, but maintaining a data model provides an easy way to communicate about the database design and allows the entire team to find entities(tables) and attributes(columns) and how they related to each other. This allows the team to use the database without creating duplicate attributes and use them where available.
Version control data model
Along with the database change scripts and other scripts about the database, the data team should also be putting data models under version control, this allows the whole team access to the data model, see changes being made and be able to view the data model and understand how the tables and columns are related, what all tables and columns are already available to be used. [[ermodel]] .Data model version controlled along with the rest of the database artifacts image::chapter4/ERModel.png[]
Publish ER Models on project wiki
Many a times, it not possible to buy licenses to ER modelling tools for the entire team, in this scenario the data team can start publishing data model printouts, generally this was done using large printouts pinned to walls, these large printouts get out of date immediately after they are printed and mislead the team.
It is better to publish pdf versions of the ER model on the internal project wiki and kept up to date whenever changes happen, this allows for the entire team to have a view at the data model and kept abreast with the changes happening in the data model. The same wiki based data models can help downstream consumers of the database to understand the data model and use it in an effective way
Shown above is an example of a project wiki page where the data team split the data model into smaller subject areas and saved the model as pdf files and can be viewed by the whole team. This page also shows the last date the data model pdf’s where updated so that the team is aware when the last update happened.wha