It is a technique that I have used many times and it works very well for me. The process to a good database design has nothing to do with Microsoft Access (tool) or any other database application, it’s a process where you start at the end with Access reports for example and end up at the start with Access tables.
I have a 7 step plan that really works, focuses and clarifies your design objectives:
- Identify the core process – what is it that is key to your requirement? For example, with an inventory database, the key process will be your products keeping control of the stock levels, pricing and tracking their movement.
- With the core process, what sort of reports will you be expected to design and deliver to your clients and other personnel? Plan as many types of reports required including a stock price list, current stock levels and re-order list.
- From your reports, break down into natural units that will be the foundation for your Access database design. In simplified terms, the inventory system might consist of 3 tables; products, stock take levels and the tracking of purchase orders.
- Between the three tables, list all the possible fields that will make up your tables and include a ‘common’ field which is going to be the link to other tables forming the relational database – one Microsoft Access database strengths.
- Certain fields will need some conditioning to help manage workflows and could include mandatory fields that must be completed, validate certain data inputs to reduce errors and setting a look and feel to the data.
- Creating a plan for users to enter and view data in a user-friendly environment by using Access forms is the next step and Microsoft Access provides a wealth of useful tools too.
- Adding some bells and whistles to your system by providing a starting and welcoming interface to help users navigate which is normally controlled by using Access macros and Access VBA programming.
Hopefully, the above 7 steps of my ‘Reverse Engineering’ plan will serve you well too as from experience, I know it works because when I’ve ever deviated from the above steps, things just don’t always add up.