Please explain (or briefly describe) the general philosophy behind your database design approach.

Ehtisham Rasheed, Sialkot, Pakistan:
     i first perform logical design on paper using ER-Diagram, perform normalization and then go to physical database design and remain successful each time with this approach... after each phase i'll contact the resource person and after their comments/confirmation i'll proceed

Christian Koch, Berlin, Germany:
     Generalized forms and functions ... standardization ... performance ... usebality.
     I prefer using ADO connections because of performance in the LAN or WAN and the possibility of easy changing between different databases like Access, MSSQL and MySQL.

Mark Horner, Bristol, England:
     My database design approach is involves taking a look at the requirements and ensuring the approach I take fits the user's requirements and is scalable. For instance if you've only got one person using this database then you won't need a feature such as an audit table, but if you've got multiple users using it over a network you'll want an audit table built in to each of your front ends. It basically revolves down to a) gathering your specific requirements, b) finding a solution to meet those requirements and c) ensuring the solution is scalable and won't cause issues when you have 100k rows of data.

Ven Grollmus, George Town, Tasmania, Australia:
     My approach is to understand the company I am working for, and to document what they wish to achieve from the system. This ensures that there is little chance of something being missed in the development phase of the build as the workflow has been fully thought out and documented, with all the relevant information that needs to be captured has been thought about.

Bruce Bray, Phoenix, Arizona:
     Basically, I create prototypes of forms and reports FIRST. The inputs and outputs determine what kind of operations and data will be needed to create such an application as you have spoken about. Then I determine which applications will handle which processes. For example, template letters and mail-merge documents are created in MS Word, but the choices and selections for what is printed is done inside of the Access database. Then the application is prototyped quickly so as to get a feel for how the different components will work together. I use custom queries and sql statements for data updates, batch processing for updating data offline, and I write my own custom functions inside of Access, Word, and Excel for any operations that I need.

Yuriy Sultanaev, Ufa, Russia:
     1. Study of the business processes of the customer
     2. Analysis of practice for the client
     3. Analysis of the document circulation
     4. Prepare the new database model
     5. The prototype program
     6. Adoption of the prototype program
     7. Development of a full functional
     8. Solving Customer Comments
     9. Preparation of the final release program
     10. Acceptance of the project by the customer

Temitayo Ilori, Berea, Ohio:
     I believe what is worth doing at all is worth doing well. So, when it comes to database design, I don't design database just to get by; I design efficient database organized in a logical model.

Julie Hogue, Akron, Ohio:
     Before any programming begins, I do an analysis of the clients goals and requirements. I request white papers, reports, or files that they are currently using to determine the field content of tables. Once I feel I have a solid grasp on the scope of the project, I submit a design review to be sure the client and I agree on the scope of the project. After the client accepts the programming analysis, work begins.

Biju John, Pathanamthitta Dist., Kerala, India:
     Always use client server based approach for MS Access database.
     That is, separate back end db from front end application. Use code to link back end db or link it directly to the front end db.
     Other design approach are:
     * Make a list of objective that are required by users
     * Use meaningful and short name for tables an fields.
     * Use proper index. At least one index for one table
     * Set priority for security
     * Follow database design standards
     * Use table structure in RDBS model.
     * Make room for future enhancement that does not affect the existing setup
     * Use proper primary and secondary key relation

Grace Elaiza Seballos, Davao City, Philippines:
     Normalization. This doesn't need philosophy or anything. It is very basic. Data integrity and speed is also very basic. With my 10 years of experience, I have already created my own systematic way of developing systems. The most important part of any SDLC is the way of being able to address the needs and pains of my clients, and even finding potential pains they may experience without them even realizing. After streamlining all of that, software development is just then putting it into a conveyor belt in an automated factory, while waiting for the finish product to be tested. The important thing here is, what setting were given into that factory? And that setting is what I will need from you when we get into the details of the system.

Artiben prashantbhai S., Bhavnagar, India:
     The tables must be related to each other to save the repeated data entry.

Jules Bohanon, Lakeland, Florida:
     Without knowing it, I've been following the Agile development philosophy for several years. Customers rarely are able to adequately define their requirements. I "throw together," as quickly as possible, a rough draft solution based solely on an initial or subsequent conversation ("discovery meeting") with the customer. When I walk them through it on a web conference, they typically have several "ah-ha" moments and are then able to give meaningful instruction.

Assem Bayahi, Mourouj 1, Tunisia:
     Generally, I try to organise projects in an MVC pattern, so the Database is designed to respects Models logic with focusing on avoiding redundancy.

Md. Obaidul Haque Sarker, Dhaka, Bangladesh:
     I follow SDLC approach in software development. There are several phases in SDLC such as requirement analysis, design, coding, testing and deployment. I am doing database design in design phase of the SDLC. Requirements are listed in software requirement specification (SRS) document in requirement analysis phase. SRS document is written by the system analyst (SA) or business analyst (BA).
     I follow the top-down approach the database design. I study the SRS document for software requirement. I find entities from SRS document and also look relationship among the entities .The top-down design method starts from the general and moves to the specific. In other words, I start with a general idea of what is needed for the system and then work your way down to the more specific details of how the system will interact. This process involves the identification of different entity types and the definition of each entity‚Äôs attributes.
     In summary, I follow the following steps in database design.
     1. Find entities of the whole system
     2. Find attributes of each entity
     3. Find relationship between/among entities
     4. Find unique key or primary key of each entity and relationship
     I draw the E-R diagram and data flow diagram (DFD) for data model. Customer/ end-user can see the E-R diagram for better understanding of their software.