Chapter 8. Data Modeling

A data model is a set of objects designed to hold data concerning a particular business concept or application. A data model object is a component of a data model. A data model object differs from a regular object that holds data in that it must represent a particular business concept.

For example, the class Point from the java.awt package is an object that contains data but is not a data model object. Although it has a role in the system, it doesn’t represent any particular business concept. On the other hand, a class such as Customer is a data model object.

This distinction is important because business data is sacred. Regardless of what you do in a software system, you should avoid corrupting a data model at all costs. It is the life blood of a business. Since data model objects are so important to the survivability of a business, you have to spend more time on them than you would on other objects. Your data model objects need to be more solid and bug-free than every other part of the code. This necessarily means that you will have to employ checking and error-detection procedures that you would normally not concern yourself with.

For example, consider the difference between an object that holds the items of a list box and a data model object. If the GUI object is corrupted with false data, the worst that could happen is that the GUI crashes or displays an address where it should display customer names. However, if a data model object is corrupted, your ...

Get Hardcore Java now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.