No. Really, you need to be able to do a load-test of whatever level of use you plan to do. It is possible to get JMeter to simulate students attempting a quiz. They key moments to focus on are when a lot of students start the quiz in quick succession, and when they all submit at the end - and anything you can do to spread those peaks out in time are strongly recommended.
Once you are able to test, then you can experiment with what you need. In addtion to what you mention, you also need to think about caching and file storage. My gut feeling is that to get good performance, you will need more RAM than that, particularly on the DB. Basically, you want to be able to have the whole database cached in RAM.