Data Model

The logical data model is a network model and illustrates entities (objects), relationships (connectors) and cardinality (one-to-many AKA parent-to-child).

The Entity object is named for and contains data that describes an organization, person, thing or place (customer). Every Entity has a unique identifier (id)

The Relation object contains data that describes the relationship between two or more entities.

Cardinality describes the superordinate/subordinate relationship of the entity objects -- the parent to the child.

This simple model tells us that "one customer may have from one to many locations" and that "a location may house many customers," so we need to build a database to solve that business problem most efficiently. The "Customer" business object represents a database object that will contain data describing the customer. The "Location" business object represents a database object that will contain data describing a location, typically, postal address and geo-data. The Relation contains data that describes the relationship.

The data model is used by the business and development teams to communicate. It also represents a "logical" view of a "physical" database. When the database designers and builders see that data model, they see this:

 Bonded Shipping         Corporate Offices         12 Armory Rd.       
 Mega Corp         Home Office         100 Main St.       
 Mega Corp         Warehouse         12 Armory Rd.       
 Mega Corp         Plant         Industrial Way       
 Secure Storage         Rental Center         12 Armory Rd.       
 Secure Storage         Rental Center         Industrial Way       

The data model represents the real world where one company may have many locations and one location may have many companies. Hint: The world is many-to-many.

The benefit to this structure is reduced redundancy or better yet, no redundacy. A company name occurs only one time in the database. Updates are easy when you only have to make a single change.

Now, I want to make a quick note about data models and data modeling tools. Don't get hung up on which tool, which objects, which whatevers are the best. It doesn't matter -- especially at this point in the lifecycle. Use what they give you or what you have. If you don't have access to data modeling software, there are plenty of freebies on the Internet.

Identifying the entities and the relationships and cardinality that exist between those entities are the focus. Other steps and other tools in the lifecycle will fill in the missing pieces. Continue to march.