org.problets.tutor.problemsequencer.integrated
Class IntegratedProblemSequencer

java.lang.Object
  extended by org.problets.tutor.problemsequencer.AbstractProblemSequencer
      extended by org.problets.tutor.problemsequencer.integrated.IntegratedProblemSequencer

public class IntegratedProblemSequencer
extends AbstractProblemSequencer

Combines pretest, practice and post-test into one session. Minimizes the number of problems solved by the student: If the student demonstrates proficiency on pretest, it does not provide practice or post-test. If the student does not demonstrate proficiency on pretest, but does not manage to solve any practice problems, it does not present posttest for that learning objective. No more need for a dummy learning objective to ensure practice. Reports the log both as an integrated sequence and as separate pretest, practice and post-test sequences

Author:
Amruth Kumar

Field Summary
static int ALL_SEQUENCES_COMPLETED
           
static int PERSISTENCE
           
 
Fields inherited from class org.problets.tutor.problemsequencer.AbstractProblemSequencer
PREDEFINED_FILE_EXT, PREDEFINED_FILE_INDEX, TEMPLATE_FILE
 
Constructor Summary
IntegratedProblemSequencer(java.lang.String inTopic, java.lang.String inSpecFileName, java.util.Vector correctKMObjectives, java.util.Vector inStudentObjectives, KnowledgeModel inCorrectKM)
           
 
Method Summary
 java.util.Vector getLearningObjectives()
           
 Template getNextTemplate()
          Assumes that isSequenceDone() is always called before getNextTemplate()
 java.lang.String getStatus()
          Returns the number of problems that remain to be solved and the number of concepts that remain to be learned
 boolean isSequenceDone()
          If all the learning objective managers report that they are done, the integrated sequence is done, else it is not yet done.
static void main(java.lang.String[] args)
           
 void print(java.util.Vector currentLearnObjManagerVector)
           
static java.util.Vector processSpecifications(java.util.Vector specVector)
          Processes the specVector, and returns a vector of three vectors: - problems specified for pre-test, any specific problems listed for practice, and problems specified for post-test.
 java.util.Vector summarize()
          Returns a list of the templates dealt by this problem sequencer, followed by the templates dealt by each of the LearnObjManagers
 
Methods inherited from class org.problets.tutor.problemsequencer.AbstractProblemSequencer
getProblemSequencer, loadTemplates, loadTemplates, preProcess
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ALL_SEQUENCES_COMPLETED

public static final int ALL_SEQUENCES_COMPLETED
See Also:
Constant Field Values

PERSISTENCE

public static final int PERSISTENCE
See Also:
Constant Field Values
Constructor Detail

IntegratedProblemSequencer

public IntegratedProblemSequencer(java.lang.String inTopic,
                                  java.lang.String inSpecFileName,
                                  java.util.Vector correctKMObjectives,
                                  java.util.Vector inStudentObjectives,
                                  KnowledgeModel inCorrectKM)
Method Detail

isSequenceDone

public boolean isSequenceDone()
If all the learning objective managers report that they are done, the integrated sequence is done, else it is not yet done. Assumes that isSequenceDone() is always called before getNextTemplate()

Specified by:
isSequenceDone in class AbstractProblemSequencer

getStatus

public java.lang.String getStatus()
Returns the number of problems that remain to be solved and the number of concepts that remain to be learned

Specified by:
getStatus in class AbstractProblemSequencer

getNextTemplate

public Template getNextTemplate()
Assumes that isSequenceDone() is always called before getNextTemplate()

Specified by:
getNextTemplate in class AbstractProblemSequencer

summarize

public java.util.Vector summarize()
Returns a list of the templates dealt by this problem sequencer, followed by the templates dealt by each of the LearnObjManagers


getLearningObjectives

public java.util.Vector getLearningObjectives()

processSpecifications

public static java.util.Vector processSpecifications(java.util.Vector specVector)
Processes the specVector, and returns a vector of three vectors: - problems specified for pre-test, any specific problems listed for practice, and problems specified for post-test. This will be used by AnalysisManager.


print

public void print(java.util.Vector currentLearnObjManagerVector)

main

public static void main(java.lang.String[] args)