This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
Over the last 10 years I have developed 4 separate versions of this kind of technology, 3 for corporations and one for my own commercial use.
Out of this distilled experience I can say: 1. pay attention to making it easy for test authors to create and edit test questions. 2. keep your data format flexible (XML is my choice) 3. keep your display / user input tech as separate from the rest of the app as possible. Yesterday HTML was ok, today AJAX rules, tomorrow ??