4Understanding User Needs

The previous chapters discussed databases in general terms. Chapter 1, “Database Design Goals,” explained the goals of database design and described some of the types of databases that are available. Chapter 2, “Relational Overview,” and Chapter 3, “NoSQL Overview,” described some specific kinds of databases in slightly greater detail. With this basic understanding, you're ready to take the first step in designing an actual database to solve a particular problem: understanding the user's needs.

Designing any custom product, whether it's a database, beach house, or case mod (you can search online for images of case mods), is largely a translation process. You need to translate the customers’ needs, wants, and desires from the sometimes fuzzy ideas floating around in their heads into a product that meets their needs.

The first step in the translation process is understanding the user's requirements. Unless you know what the user needs, you cannot build it. Designing the best order-processing database imaginable won't do you a bit of good if the customer really wants a circuit design database or an ostrich race handicapping system.

Just as the database design forms the foundation on which the rest of the application's development stands, your understanding of the user's needs forms the foundation of the database design. If you don't know what the user needs, how can you possibly design it?

If you don't understand the customer's needs thoroughly and completely, ...

Get Beginning Database Design Solutions, 2nd Edition 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.