DesignFirst-ITS

An Intelligent Tutor for OO Design and Java Programming

>
The Student Model Requirements


Purpose

The purpose of the Student Model is to help students learn object-oriented design and programming by maintaining an accurate model of a student’s current knowledge state which allows more intelligent pedagogical decisions and actions to happen.

The student’s current knowledge state is expressed by the student profile with a concept network. In the network, each node consists of a concept and a value about how well the student knows the concept. Relationships between nodes are same as the hierarchical relationships between concepts in the domain knowledge, which is object-oriented design and programming.

The real-time Student Model provides the diagnosis on the student profile to identify the reasons for the student’s errors and why the student gets stuck.



Functional Specification

The Student Model has four major responsibilities:
• generate and update individual student profile
• identify the reason for a student error
• indicate why the student gets stuck
• invoke the Pedagogical Agent to tutor the student

1. To generate and update the student profile for each student based on the information from:
learning style and initial stereotype questionnaire
CIMEL multimedia database
the Expert Evaluator
the Pedagogical Agent

When the student logs into the system for the very first time the student needs to fill in a learning style and initial stereotype questionnaire. The Pedagogical Agent collects and analyzes the data from learning style questions and stores them into the student profile. The data is used for the Pedagogical Agent to customize and deliver the feedback/tutoring information to the student according to the student’s preferred learning style. The Student Model collects and analyzes the data from initial stereotype questions and stores them into the student profile. The data is used for the Student Model to analyze reasons for student errors.

The student has chances to complete exercises in chapters and quizzes at the end of chapters in CIMEL multimedia. Performance of the student on each problem is recorded in the CIMEL database. From the student performance data in the CIMEL database, the Student Model calculates the probability the student understands the concept that tied to the problem and updates the concept network in the student profile.

The student can design class diagrams for a project in the Eclipse IDE. While the student works, the Expert Evaluator monitors his progress. From the Expert Evaluator, the student model gets the information packets about:
student’s designing performances
concepts tied to the current step
possible reasons relevant to the problem description for an error step

From the data in the packets, the Student Model calculates the probability the student understands the concept that is tied to the current step and updates the concept network in the student profile.

The Pedagogical Agent sends the Student Model information about the feedback and tutoring given to the student. The Student Model records the information into the student’s problem solving history in the student profile.

2. To identify the reasons for the student errors from the student profile.
The student profile keeps all the information needed for intelligent pedagogical decisions and actions through above two functions. The information is:
the student identity
the knowledge level of the student about each concept
the records of the student performance in Eclipse IDE which include student
solution, errors, reasons of the errors and tutoring history the student gets from The Pedagogical Agent for each error

3. To indicate that why the student gets stuck.
If the user doesn’t input solution for a fix interval of time the System asks the students if he needs help. If the user prefers not to have tutor’s help or he leaves, the Expert Evaluator takes no action. If the user would like to have tutor’s help the Expert Evaluator sends the Student Model an information packet which consists of names of concepts for all of the next possible steps in the student solution. From the data in the packet the Student Model retrieves all probability values in the student profile about how the student understands the concepts, and identifies the concept that has the lowest understanding level.

4. To invoke the Pedagogical Agent to tutor the student by sending it an information packet.
The information packet sent to the Pedagogical Agent when the student makes an error has:
packet type for the student makes an error
reasons for the student error
probability value for each reason

The information packet sent to the Pedagogical Agent when the student gets stuck has:
packet type for the student gets stuck
reasons why the student gets stuck
probability value the student understands the concept on which he shows the
 lowest comprehension level

Use Cases

Learning Style and Initial Stereotype Questionnaire Use Case:

1. After the user logs in the system identifies it’s the first time the user logs in the system.
2. System prompts the user with the Learning Style and Initial Stereotype
Questionnaire.
3. User enters all answers.
4. System analyzes the answers and stores the data into the database for the
student profile.

CIMEL Multimedia Exercise/Quiz Use Cases:

1. The user makes a final choice of a problem, an exercise or a quiz. The answer is recorded into the CIMEL database.
2. The Student Model calculates the probability the student understands the concept
which is tied to the problem.
3. The Student Model updates the concept network in the student profile.

Eclipse IDE Correct Step Use Case:

1. From the Expert Evaluator, the Student Model receives a packet which has information about:
a. packet type for the student makes an correct action
b. the problem title
c. correct action for current step
d. concept applied in current step
2. The Student Model records the problem title (if this is the first step in a new
problem) and the name of the concept tied to the current step.
3. The Student Model calculates the probability the student understands the concept
which is tied to the current step.
4. The Student Model updates the concept network and student solution history in the
student profile.

Eclipse IDE Indeterminate Step Use Case:

1. From the Expert Evaluator, the Student Model receives a packet which has information about:
a. packet type for the student makes an indeterminate action
b. the problem title
c. the student’s indeterminate action
d. concept applied in all possible correct actions
2. The Student Model retrieves the probability value in the student profile about how
well the student understands the concept.
3. The Student Model sends the Pedagogical Agent a packet which has:
a. the packet from EE
b. probability value expressing the understanding level of the concept
c. prerequisite concepts with low understanding level if there is any
4. The Student Model updates the student solution history in the student profile.

Eclipse IDE Wrong Step Use Case:

1. From the Expert Evaluator, the Student Model receives a packet which has information about:
a. packet type for the student makes an error action
b. the problem title
c. the student’s error action
d. concept applied in all possible correct actions
e. reasons only relevant to the problem description
2. The Student Model records the problem title (if this is the first step in a new
problem) and the name of the concept tied to the current step.
3. The Student Model calculates the probability the student understands the concept
which is tied to the current step.
4. The Student Model updates the concept network and student solution history in the
student profile.
5. The Student Model calculates the reasons for the student error from the student
profile.
6. The Student Model sends the Pedagogical Agent a packet which has:
d. packet type for the student makes an error
e. reasons for the student error
f. probability value for each reason
g. prerequisite concepts with low understanding level if there is any


Eclipse IDE User Stuck Use Case:

---- Assume:
 it is not because of not knowing the user interface of Eclipse IDE when a user gets
stuck.
 it is because the user doesn’t know the concept applied in the next step
1. The user doesn’t input solution for 5 minutes.
2. The system asks the students, “Do you need help?”
3. The user clicks “yes”. The Expert Evaluator sends the Student Model a packet
which has information about:
a. packet type for the student needs help
b. all possible next actions expected
c. names of concepts for all of the next possible actions in the student solution
4. The Student Model retrieves all probability values in the student profile about how
well the student understands the concepts, and identifies the concept on which he shows the lowest comprehension level.
5. The Student Model sends the Pedagogical Agent an information packet which has:
a. packet type for the student needs help
b. the reason concept why the student gets stuck
c. probability value expressing the understanding level of the concept
d. prerequisite concepts with low understanding level if there is any
Alternative:
3a. The user clicks “No” or there is no response from the user. The Expert Evaluator takes no action.


Eclipse IDE User Request Help Use Case:

---- Assume:
 it is not because of not knowing the user interface of Eclipse IDE when a user
needs help.
 it is because the user doesn’t know the concept applied in the next step

1. The Expert Evaluator sends the Student Model a packet which has information about:
a. packet type for the student needs help
b. all possible next actions expected
c. names of concepts for all of the next possible actions in the student solution
2. The Student Model retrieves all probability values in the student profile about how
well the student understands the concepts, and identifies the concept on which he shows the lowest comprehension level.
3. The Student Model sends the Pedagogical Agent an information packet which has:
a. packet type for the student needs help
b. the reason concept why the student needs help
c. probability value expressing the understanding level of the concept
d. prerequisite concepts with low understanding level if there is any


Eclipse IDE User Request Evaluation Use Case:

1. From the Expert Evaluator, the Student Model receives “EVAL” packets.
2. The Student Model passes the Pedagogical Agent the “EVAL” packets.


Tutoring History Updating Use Case:

1. The Pedagogical Agent sends an information packet to the Student Model which has:
a. packet ID (same as the packet ID from EE)
b. feedback level
c. feedback
d. strategy
2. The Student Model records the information into the student profile.

 

 

 




.