Think data modeling is just for the geeks? Think again! Even if deep down in the IT layers data models can make Egyptian hieroglyphs look like a Dr. Seuss book by comparison (like ‘The Cat in the Hat’ – a classic!), everybody should know a little about data modeling. The reason is that a data model is a record of how the information in an enterprise is recorded and manipulated. If your data model is not good, meaning that it does not reflect reality, your information processing will be faulty and your business decisions likely to be wonky. Therefore, business people and technical people must work together to produce clear data models of good quality.
What does a data model do?A data model is typically a diagram that shows relationships between different data. When business people need software to perform a certain function, the data model is a representation of the business need that business people and IT engineers can discuss together. It bridges the gap between the two worlds by showing how different data are related: for example, ‘Customer Order’ is linked to ‘Shipping’ and then to ‘Billing, but also to ‘Warehouse Inventory’ that in turn is linked to ‘Production’. Depending on the system concerned, a data model can be more or less complex. However, a good data model means a solid start to making a satisfactory IT system.
Recognized as good development practiceModern software development standards take business priorities into account. The American Standard IEEE 1074-1995 for example specifies the following three documents to help keep business goals and technical activities connected:
- Systems requirement specification (overall/business oriented)
- Software requirements specification (what the software will do, but not how)
- Software description document (how the software does its job).
- Relational Model. Already close to the design of the software itself, this model specifies data and relationships using pre-defined graphical symbols
- Graph Model. Based on graph theory with its nodes and edges. Again, already close to the IT design itself
- Hierarchical Model. Looks like the organizational charts commonly used by HR. Closer to the business point of view, although IT colleagues may need more detail.
- Network Model. Similar to the Hierarchical Model, with multiple links between entities to give more detail on relationships.
- Dimensional Model. An extension of the Relational Model where the data are also labeled with additional information to help understand business impact.
- Object Relational Model. A newer model with a technical bias, now finding a niche in engineering and scientific sectors.