Hi all,
1. I think this application is best suited to the standard version rather than multicore. Is this correct? If multicore is the way to go, how should it be divided up?
I have to wonder about MultiCore also. So here's my two-cents:
MultiCore approach should be reserved for really large applications that are ideally constructed via a modular approach, ie each section of the application is put together independently during development. So in your case, I would say that if the quiz application you described were part of a larger overall education application that included your multiple-choice quiz along with a reports section, a raw materials reading section, and an online teacher chat sub-application then the multi-core approach would be appropriate. Then in the end you just have all these modular pieces (sub-applications) connected together via a main application (like the main menu).
Anyway, our project was put together assuming multi-core was the standard and now we have got a lot of problems with 1) redundant classes (essentially the same class but in two different package folders) and 2) shared classes that are in places that don't make sense (a class in one package though it's also used by a class in another completely different package)--all this even though our application has only one Facade, View, Control, and Model. So please don't make the mistake we did. All we needed to do was divide our view components into so many packages. Trying to include their Mediators, Proxies, and Commands in the same package was very stoopid.