Definition - What does Table-Driven Design mean?
Techopedia explains Table-Driven Design
A table is any data structure that consists of rows and columns, with the columns usually fixed in number, whereas rows are variable. Arrays, lists, stacks, indexes, control blocks, files, graphs and charts are also forms of tables, but just because a program uses them it does not neccesarily mean that it uses a table-driven design.
Table-driven design is nothing new; its basic principles were originally developed and implemented as early as the 1950s, but did not really gain ground then. This was mainly due to the fact that main memory was very expensive at that time and disk access speeds were already viewed as adequate compared to normal systems, while programmers were not yet well versed in writing efficient access methods, and there were no ready-made ones yet. Therefore, it was not really favorable for table-driven software design to flourish.
Tables have the following benefits:
- They provide concise and orderly specifications of the business goal or challenge during the analysis phase.
- They can be implemented directly and easily from the specifications, which also provide a very close link between theory and application. This is during the design and development phase.
- Tables can be shared to allow for single and centralized changes for quick turnarounds with minimal risk to the existing code during the maintenance and enhancement phase.