With SCORM/AICC tracking, you can do limited randomization based on pooling. That is, on the test page, create more questions than what you want to display. Then, set the number of questions to display to the desired quantity. When the page displays, certain questions will be randomly hidden. So there is some level of randomization without the need for our Server Side Testing module. ReadyGo's SST module provides a more complete randomization ability, and more complete result storage/reporting (every answer to every question every time it is submitted.)
True randomization cannot be done with SCORM/AICC because this requires involvement from a web server. Prior to SCORM 2004, there was no LMS support for anything approaching randomization. With SCORM 2004, we see from the specification that it is technically possible, but it is not pretty. Each question has to be on a separate page, and the LMS would have to randomize the order of page delivery. I don't know of any LMSs that support this. As a side note, ReadyGo spent a large effort implementing as complete a version of SCORM 1.2 as we could, and we then found that the majority of LMSs only supported a very minimal subset of what we transmitted. In many cases, the extra information we sent the LMSs caused the LMS to crash. The customers who experienced this typically came to us to fix the problem since their LMSs dont give them support. The irony is that our tool costs $500, and they are paying upwards of $150,000 for the LMSs.