What are the options for handling frequently changing data forms?
I have a basic CRUD web application where the main form of data entry changes every year. Therefore, each entry must be tied to a specific version of the form. This requirement is new, so the existing application was not built with this in mind.
I am looking for various ways to handle this, hoping to avoid future technical debt. Here are some options I came up with:
- Create a new object, user interface and a set of tables for each version. This is by far the most naive approach.
- Continue adding all the fields to the same DB object and tables, but show / hide them based on the version of the form. After a few changes, this will become a mess.
- Define the forms of the forms, then dynamically create the user interface and save the data in the form of some dictionary, such as a format (for example, JSON / XML or, possibly, a document-oriented database). I think it will be too difficult for the scope of this application, especially for the user interface.
What other options are there? Does anyone have any experience with this? I am looking for some design patterns to help deal with complexity.
design forms crud
Colin gislason
source share