The Use Of Data Models On Software Projects: Why Bother?

Since the invention and introduction of the entity-relationship modelling technique by Peter Chen in 1970s, data modelling techniques have been used to represent the information requirements of organizations as well as to describe how data should be used to meet the requirements of the end user.

Though business analysts don’t need to be experts at data modelling, they should be involved in the creation of data models; be able to interprete existing data models; and understand when a data model is needed or not.

Understanding Data Modeling

Data modelling fundamentally focuses on data issues. Compared to class models, which explore both behaviour and data, data models are much more likely to provide the correct answer to data issues. We use data models to better understand the data requirements needed to support business processes. Every process of data modeling starts with requirements elicitation. As we progress from this initial stage to the actual database to be used for the information system, we encounter three different types of data models.

Three Main Types of Data Models

The three main types of data models include:

  • Conceptual data models: Conceptual models show the highest-level relationships between different entities. Their typical audience is composed of business users and project stakeholders, who need to agree on the big picture. These models are often created as part of the initial requirements envisioning efforts. See Defining The Scope Of Business Analysis With A Context Diagram.
  • Logical data models: A logical data model brings the fundamental concept one step closer towards a data management technology, such as relational databases. When a conceptual model is implemented, we call it a logical data model. The implementation of a single conceptual model often requires multiple logical data models, which show the relationships between data elements and structures. The Entity Relationship Diagram, for example, can help the business analyst communicate with the database administrator. See Entity Relationship Diagram: A Practical Guide.
  • Physical data models: Used to design the internal schema of a database, physical data models show all table structures exactly how they will be built in the chosen database. Included are column names, column data types, column constraints, primary keys, foreign keys, and relationships between tables, etc.

Benefits of Data Modeling

By correctly applying data modelling techniques, we can create a data model for an information system and use it to analyze data requirements. By providing accurate definition and format, data models give us a structure for data used within information systems. This enables us to develop solutions that better answer clients’ needs and meet all business requirements.

Asking stakeholders to identify data attributes also ensures that they talk about the different aspects of their business and expose the business rules of each data attribute.

What is your experience with data modelling?

Image courtesy of Stuart Miles at FreeDigitalPhotos.net