Data modeling is the process of creating a Model or the skeleton of Data by applying a data model theory to create an instance. A data model theory is a formal data model description. When data modeling happens we are structuring and organizing data according to its organization wide requirement. These data structures are then typically implemented in a database management system. In addition to defining and organizing the data, data modeling will impose (implicitly or explicitly) constraints or limitations on the data placed within the structure. Managing large quantities of structured and unstructured data is a primary function of information systems which is spreading across the organization in a heterogeneous landscape. Data models describe structured data for storage in data management systems such as relational databases. They typically do not describe unstructured data, such as word processing documents, email messages, pictures, or video.
A data model describes the structure of the data within a given domain for a particular organization and, by implication, the underlying structure of that domain itself. This means that a data model in fact specifies a dedicated grammar for a dedicated artificial language or we can consider users or Experts created language for the specific organization and for a specific domain. Database designer plays an important role in this.
The entities represented by a data model can be the tangible entities, but models that include such concrete entity classes tend to change over time. Robust data models often identify abstractions of such entities. For example, in a real situation a data model might specify that a customer is represented by a customer name and credit card number and a product as a product code and price, and that there is it can happens one-to-many relation between a customer and a product.
Refrence : www.wikipedia.com