Data Models - sammanthp007/Linux-Kernel-Development GitHub Wiki
Data modeling
The process of creating a specific data model for a determined problem domain.
Data model
A representation, usually graphic, of a complex “real-world” data structure. Data models are used in the database design phase of the Database Life Cycle.
Business Rules
Brief, precise, and unambiguous description of policy, procedure, and principle
Why Business Rules
- Help standardize company’s view of data
- Communications tool between users and designers
- Allow designer to:
- Understand the nature, role, scope of data, and business processes
- Develop appropriate relationship participation rules and constraints
- Create an accurate data model
Translating Business Rules into Data Model Components
- Nouns translate into entities
- Verbs translate into relationships among entities
- Relationships are bidirectional
- Questions to identify the relationship type
- How many instances of B are related to one instance of A?
- How many instances of A are related to one instance of B?
Naming convention
- Entity names
- Required to: Be descriptive of the objects in the business environment
- Use terminology that is familiar to the users
- Attribute name - Required to be descriptive of the data represented by the attribute
Schema
Whole database as seen by database administrator
Subschema
Portion of a database as seen by application program.
Data Definition Language, Data Manipulation Language
Relational Database Model
- Performs basic functions provided by the hierarchical and network DBMS systems
- Makes the relational data model easier to understand and implement
- Hides the complexities of the relational model from the user