From: Jeff H. <je...@vi...> - 2006-05-16 15:49:56
|
We've been using Gavin's gateway testing feature for the last two terms. There have been times where the "group:topic1:N" would have been handy to have. I'd be in favor of adding this in if it's not too much trouble. --Jeff --On Monday, May 15, 2006 11:22 AM -0400 "P. Gavin LaRose" <gl...@um...> wrote: > Hi all, > > This is a question about adding problems to a set from a group of > problems, which is done for gateway tests. This is (only) implemented > for versioned sets (that is, gateway tests). The idea is that one can > define a problem set (gateway test) for which each problem on the set is > drawn from a group of possible problems. (For example, on a derivative > gateway test we might want one "derivatives of trig functions" problem, > one "derivatives of exponentials", etc.) > > This is done in the following manner. > - a set, say, settopic1.def, is created that lists all of the problems > in > the group. then > - in the set definition for the set including a problem from the group > declares the problem source to be "group:topic1" > - this source file name is caught by the subroutine > Instructor::assignProblemToUserSetVersion when a new version of the > set > is being created for the user, and the problem that is actually added > to the user's set is randomly selected from the list of problems in > the > topic1 set. > > I'm now thinking about how to include more than one problem from a > problem group. > > I think the logical way to do this is to refine the way problems are > selected from the group to include an indication of the number of problems > to be selected from the group. That is, instead of having the set declare > a problem "group:topic1", have the declaration be "group:topic1:N", where > N is the number of problems to include. Then when a new version of the > set is created and assignProblemToUserSetVersion is called, it would > actually add N problems to the user's set version. > > An argument against this might be that it's aesthetically displeasing: > the set is being created with Instructor:assignSetVersionToUser, which > (currently) makes one call to assignProblemToUserSetVersion for every > problem to be added to the set. What I've suggested above would push some > of the "set construction" down into the problem assignment (because > assignProblemToUserSetVersion could now be doing multiple assignments per > "problem"), which seems logically incorrect. > > The other option would be to allow multiple problems to be assigned from > the group, and to have some check built into assignProblemToUserSetVersion > that it's not assigning the same problem that's already been assigned. > But that would be rather more difficult to implement. > > Any comments? > > Thanks, > Gavin > > -- > P. Gavin LaRose / Instructional Tech., The tough problem is not in iden- > Math Dept., University of Michigan tifying winners; it is in making > gl...@um... winners of ordinary people. That, > 734.764.6454 after all, is the overwhelming > http://www.math.lsa.umich.edu/~glarose/ purpose of education. -K.P.Cross > > > ------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job > easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > OpenWeBWorK-Devel mailing list > Ope...@li... > https://lists.sf.net/lists/listinfo/openwebwork-devel |