In information system design, data modeling is the analysis and design of the information in the system, concentrating on the logical entities and the logical dependencies among these entities. Data modeling is an abstraction activity in that the details of the values of individual data observations are ignored in favor of the structure, relationships, names and formats of the data of interest, although a list of valid values is frequently recorded. The resulting data model defines not only the data's structure, but also its semantics.
While data analysis is a common term for data modeling, the activity actually has more in common with the ideas and methods of synthesis than it does with taking things apart (the original meaning of analysis). Data modeling strives to bring the data structures of interest together into a cohesive, inseparable, whole by eliminating unnecessary data redundancies and by relating data structures with relationships.
The process of developing the data model involves analyzing the kinds of data that that will generally fit into the information system, and the relationships between different data elements within that system. Then the modeler must come up with representations of data models that guide the software development process. In the early phases of a software development project, emphasis will be on the design of a conceptual data model. This can be detailed into a logical data model sometimes called a functional data model. In later stages, this model may be translated into physical data model.
A different approach is through the use of adaptive systems such as artificial neural networks that can autonomously create implicit models of data.
Several techniques have been developed for the design of a data models. While these methodologies guide data modelers in their work, two different people using the same methodology will often come up with very different results. Most notable are:
- RM/T
- Bachman diagrams
- Business rules or business rules approach
- Entity-relationship diagrams
- Object Role Modeling (ORM) or Nijssen's Information Analysis Method (NIAM)
- Object-relationship modeling
- Artificial neural networks
See also
External links
- Data Modelling Tools from DatabaseAnswers.com
- Article Database Modelling in UML from Methods & Tools
- Data Modelling Dictionary