I write code for an Engineering application where engineers keep giving me various specs in a form of tabular data - for example, a table with product model names and many various parameters for each model.
Engineering is my "customer", since they use the code I create.
I usually encode the data they give me in a database, and build a CRUD interface around it to allow them to update/change/edit the data. This was okay at first, but CRUD interfaces take work, and this programmer is lazy... and engineering keeps creating various new tabular data all the time.
I need a better solution, since this problem is essentially the same all the time but it takes a lot of work to implement and maintain every new occurrence of this problem.
Solution 1 - keep creating CRUD interfaces
- data duplication: the data lives in the Excel sheets used by Engineering AND in server's database.
- custom work: I have to do a lot of work creating custom CRUD interfaces for yet another new table (forms, views, tables, JS/jQuery event handling, view/add/edit/delete scripts)
Solution 2 - give customer direct access to database i.e. via a database viewer
This requires training them on use of database, and also may not be security-conscious, and database access tools give too much access, i.e. you can delete historical records that otherwise must be preserved.
Neither are great solutions, and I am looking for a better approach to the problem.