69  Database Design from User Interfaces

Ability to design relational databases from user interfaces are important skill to have due to following reasons.

  1. Mock User Interface design in requirement phase is easier.

When designing your systems, your expert domain users will have no database design knowledge most of the time. But mock user interfaces will simplify your design process.

User interfaces, being visual, will make your non technical users to give feedback easier. This will lead to better database designs. For example: This information should not be text box but a drop down list taken from previously entered states.

Mock User interfaces help visualize data flow of the application.

In my experience, discussing mock up screens with domain users clarify a lot of design issues. Also, having mock user interfaces plus relational tables are always result in faster software development.

  1. Modernization of old software is very much necessary in our industry.

See a recent example, December 2024, of old software usage. Indiana bakery still uses Commodore 64s in 2024. This bakery will certainly need to rewrite this software in the future.

Another example is main frame usage.

Main frame invoice screen

Taken from IBM forums

These types of old software will need to be rewritten but old database model will not be always available. Additionally, sometimes customers wants to implement similar software to their competitors or their old working software.

Therefore, old screens features will have to be implemented.

69.1 Example screens

69.1.1 Retail Screen

Retail Data Entrance

taken from graphic design stack exchange

See solution

69.1.2 Subscription Screen

Subscription

taken from UX stack exchange

69.1.3 Manufacturing execution system orders

Subscription

taken from MRP Easy

69.1.4 Redmine Calendar

team shares plans, schedules events and communicate statuses.

Issue management calendar

taken from redmine