...establish a framework...
. This raises questions - at least for me it does. Maybe they should be discussed in a new topic?
...minimal disruption for the user...
Your user interface should be designed with the expectation of future functionality enhancements, and it should establish a framework that will support this with minimal disruption to the users when this occurs.
My arguments are based on assignment requirements (...)
1. application will not be reused in future
2. application is basically for learning purposes
3. GUI flexibility(as you have mentioned) indirectly requires MVC, which has nothing to do with flexible meta-data approach
4. simplicity is the main target, not the flexbility
Business logic expects database to have some structure, and not vice versa. Business logic itself may define that structure in properties file or as hardcoded constants, so that presentation tier does not need to hardcode all field sizes etc.:
Database[Fields] <---uses--- Business[Schema] <---uses--- Presentation
It is an experimental device that will make my mind that most powerful force on earth! More powerful than this tiny ad!
Free, earth friendly heat - from the CodeRanch trailbosshttps://www.kickstarter.com/projects/paulwheaton/free-heat