Database Design   «Prev  Next»
Lesson 4 Application approach to database design
Objective Describe the application approach to DB Design

Application approach to Database Design

The second approach to database design is to focus on the application in which the data will be stored and viewed.
This approach is often used when data must be presented in a specific format.
Designers create complex applications (or use pre-existing applications) to present and organize the data.

Bottom-up design

The application approach is a bottom-up design because it focuses primarily on how data will be viewed (either on screen or in reports or other special documents) and only secondarily on how it will be organized.
In other words, the database is designed to fit the application.
Although the application approach is useful in some situations, the subject approach to database design is the most common and the one on which this course focuses.
The next lesson examines the overall architecture of databases.

Top-down versus Bottom-up Database Design

There are two approaches for developing any database, the top-down method and the bottom-up method. While these approaches appear radically different, they share the common goal of uniting a system by describing all of the interaction between the processes. Let's examine each approach:

Top-down Strategy

The top-down method starts from the general and moves to the specific. Basically, you start with a general idea of what is needed for the system and then ask the end-users what data they need to store. The analyst will then work with the users to determine what data should be kept in the database. Using the top-down method requires that the analyst has a detailed understanding of the system. The top-down method also can have shortcomings. In some cases, top-down design can lead to unsatisfactory results because the analyst and end-users can miss something that is important and is necessary for the system.

Bottom-up Methodology

The bottom-up approach begins with the specific details and moves up to the general. To begin a bottom-up design, the system analyst will inspect all the interfaces that the system has, checking reports, screens, and forms. The analyst will work backwards through the system to determine what data should be stored in the database.

To understand the differences between these approaches, let us consider some jobs that are bottom-up in nature. In statistical analysis, analysts are taught to take a sample from a small population and then infer the results to the overall population. Physicians are also trained in the bottom-up approach since doctors examine specific symptoms and then determine the general disease that causes the symptoms.
An example of occuplations that require the top-down approach include project management and engineering tasks where the overall requirements must be specified before the detail can be understood. For example, a car manufacturer must follow a top-down approach to meet the overall specifications for the car. If a car has the requirement that it should cost less than 17,000 dollars, get 29 miles per gallon, and seat 7 people, then those are the requirements that need to be modeled. In order to meet these requirements the designers must start by creating a specification document and then drilling down to meet these Project Requirements.
The analyst must talk and work with the users to determine what is important to the users and as a result determine what data should be stored in the database. What the analyst usually does is create some prototype reports, screens, and forms to help the users visualize what the system will look like and how the system will work.