Data Modeling is a technique used in the Data Analysis phase of the Software Development Life Cycle. It is used by system analysts or designers to build a picture (or model) of the data used within an existing or proposed system, based on information gathered from users. The normal data modeling process involves the analyst gathering information from users about the data used in their normal business activities (i.e. their system).
This information is presented in the form of "structural statements" or "business rules". It enables the data structure to be described in concise terms which the users can easily understand. The users are then able to review and verify the data model. For example, consider a company which manufactures a variety of different engineering products (screws, bolts, etc.). Some of the business rules which apply to their customer order processing system might be as follows:
Each of these statements can be interpreted as describing the associations between two or more items, for example, Customer and Order. Some of the descriptions in the business rules simply state that elements belong to entities (as attributes). For example, a customer has a name, an address and a telephone number. Other statements describe how entities can be identified. For example, a product is known by its product code. A third group of statements describes the relationships between entities. For example, a customer may place many orders.
The items described will fall into two categories. Those items which are basic data items and cannot be subdivided (for example, Telephone Number) are known as elements. The other type of item is actually a group of data elements and is known as an entity (for example, Customer or Product).
The initial stages of data modeling identify the data elements, to group them into entities, and to show how each occurrence of an entity can be uniquely identified. It is very important to ensure that data elements are correctly grouped into entities and the techniques used for this purpose are generally known as Data 1.1.12 Normalization.
Once entities and elements have been defined within the model, relationships between entities are introduced. A relationship shows how to use data, given an occurrence or record from one entity, to access one or more occurrences in a second entity. For example, for a specific order, how it is possible to identify the customer who placed that order.
Review the following: