ShellDragon
ShellDragon

Reputation: 1722

Master data management, the right approach

I am in need of developing a windows form, which is suppossed to perform CRUD operations on a number of 5-10 unrelated tables (say Categories, Partners, Locations etc).

The no of columns, data elements and their types will be different for each table. There is an architecture astronaut push, to make this as flexible as possible. Somebody suggested to make the user interface is completely configurable by saving the meta data information (yeah including SQL queries data type references, UI elements etc) in a configuration table and generating the UI on-the fly from the configuration.

I have a strong feeling that this is gonna be a Inner Platform Effect antipattern and will end up as a maintenance nightmare. Can someone please suggest whether building something on a production system is advisable or not?

The client do not have any specific mention that it needs to be 'configurable'. But the astronaut push is because of the likelihood that a couple of new data tables may come up in the near future. Isn't it better to apply KISS/YAGNI principle here rather than building an inner platform? Can someone please enlighten??

Thanks in advance.

Upvotes: 2

Views: 654

Answers (1)

Jim Reineri
Jim Reineri

Reputation: 2980

To me it sounds like your concerns about the Inner Platform Effect are valid. If I understand your problem correctly, I believe I would build the code to manage the tables that you do have using solid design. Then when new tables are added in the future adding them to the system while following that same design pattern will be less overall work that creating an elaborate Inner Platform. My choice would definitely be KISS/YAGNI.

Upvotes: 1

Related Questions