Requirements analysis mistakes serve as the most troublesome aspect of a good database design. Design mistakes are often the result of a shallow or poorly conducted requirements analysis scenario. And even for the experienced developer, it is almost impossible to build a software application that meets most of business needs once the requirement analysis is abandoned or inadequately prepared.
Appropriate requirements for a business application grow out of well-thought out and well-documented planning effort. Knowing what some of your data storage needs are is a good starting point and can be used to trigger some of the associated input/output and process control workflow patterns that will ultimately emerge to define the behavioral features surrounding your required database functions.
Future reprogramming requirements will be reduced if you will take the time to think about future uses and thus avoid the common mistakes that often result in the need for rewriting code because the project failed to include these future considerations.
Of course, your plan cannot include everything with 100 percent accuracy but by spending enough thought on your past, present and future needs, you will certainly cover the curial majority of items that tend to contribute to the deciding factor as to whether a database application effort is successful or not
With this in mind and with a cooperative effort between professionals in your field of choice and knowledgeable professionals experienced with database design, it is possible to accurately determine your requirements, now and in the future.
Requirements analysis is a separate skill that should be visible to all project participants in the form of a documented scenario that can easily change as the applied steps incorporate the requirements. This allows you to introduce the inevitable dynamics of syntax and semantics that need to match up to the realities of database processing and software integration rules spelled out by the project.
The syntax and translating semantics of the requirements may not be adequately converted into effective database maintenance and business reporting and therefore might require additional adjustments to the requirements scenario originally envisioned by the project participants. This is best handled by being sure that the structure query language (SQL) is appropriately matched to the version and schema of the particular database platform chosen to work smoothly with the hardware and software configuration employed to instantiate the business application.
Data integrity is mostly controlled by the use of the appropriate schema and version of SQL used to activate table-record updating rules that are logically consistent. Outlining and building these rules into the initial database design via validation and verification testing procedures will extend the greatest influence in preventing future problems.
All of these factors should be included in the final version of the requirements analysis to avoid mistakes that may lead to database design problems and if included will more then likely provide a successful business application system.
Tom Gruich is a professional database designer with 40 years experience in systems analysis and design of database software applications. For more database business mapping thoughts and design ideas please visit Database Solutions or his Smart Database website at => http://www.adaptcode.com