I have some doubts on how to proceed on my project. Two years ago, we started a small project for a industrial quality control (es: dimensional control). Originally the software must ran only in a PC with a printer but, now, it’s runing on six different PC with a DB server.
This six application are all different, in some case there’s small changes due to different hw to be control and in other, the software is complete different due to industrial reasons. Today, the basic problem is that the program design was not think for this scale. The DB code is not well separated from logic core and there are 6 different ADO.Net interface to the same DB.
Now, I’m looking to implement a design MVC because, to improve the maintainability and if it's possible add some test units.
Question: The DB schema don’t match with the data model.
Usually, to convert the DB data to the application data are neccessary some statistical funcions and they can be different. Now this info are store in the query inside the ADO.
My idea is to create a common library to share the DB schema with all the applications but it's a good idea?
if I want a common interface to the DB what the best design? It’s possible to take all the DB interface and store in a library and use a test suite?
I'm overengineering the project?