A data model can defined as an abstract model which is used for organizing and documenting the business data for the purpose of communication between the technical as well as functional people. Further, it is also used for representing the data that has been created by the business processes and is required by those processes.
The formal definition for a data model in software engineering can be given as follows:
“An abstract model that is used for documenting and organizing the business data in order to establish a communication among the team members and is also used for planning the development of the software systems and applications, specially specifying up on how the data will be accessed and stored.”
Hoberman in the year of 2009 described the data model as a ‘path finding’ tool for IT professionals as well as business. The structure of the data (or we can say structured data) is determined explicitly by the data models.
Typical application types of the data model constitute of the following:
1. Data base models
2. Design of the information systems and
3. Legal exchange of data.
Usually, data modeling language is used to specify the data models. Two key benefits have been recognized which make the data model important for the software systems and applications which make use of the data and exchange it as well:
1. Communication and
Role of a Data Model
– A data model serves as a medium with the help of which the team members who come from a number of different backgrounds and have varying levels of experience are able to communicate with each other.
– The second term precision implies that there should not be any ambiguity in the way the terms and rules of a data model are interpreted and it should be done only in one way.
– A data model in some of the cases is referred to as a data structure under the context of the programming languages. – Under the context of enterprise models the data models are complemented by the function models.
– One of the primary functions of the information systems is to manage the large quantities of data both structured and unstructured.
– The structured data is described in turn by the data models in DBMS or data base management systems particularly in the relational data base systems.
– However, the unstructured data (such as the digital audio, video, emails, word documents and so on) are not described by the data models.
– When it comes to the role of the data models, it plays an important role in supporting the development of the information systems since they provide the format as well as the definition of the data.
– If the data models provide support consistently to the systems than it would become easy to achieve the compatibility of data.
– Sharing of the data between different applications can be made more efficient if the same data structures are used for accessing and storing the data.
– It often costs more than what expected to build, maintain and operate the systems and their interfaces.
– It may also constrain the business instead of supporting it.
– One of the major cause of this problem is the poor quality of the implemented data models in the systems as well as interfaces.
– Also, these problems are caused due to a lack of standards whose purpose is to ensure that the data models meet the business needs and stay consistent.
– Three types of data model instance have been defined namely:
1. External level
2. Conceptual level
3. Physical level