Data model: Difference between revisions

From WeBWorK_wiki
Jump to navigation Jump to search
(Created page with " *User #atom ** username ** tags ** contact/personal info ** authentication information ** role ** addCourse() #behavior ** joinTeam(course,teamID) #behavior ** getT...")
 
m (added tag)
 
(4 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
===== User =====
*User #atom
*User #atom
** username
** username
** tags
** tags
** contact/personal info
** contact/personal info
** authentication information
** authentication information
** role
** role
** addCourse() #behavior  
** addCourse() #behavior  
** joinTeam(course,teamID) #behavior  
** joinTeam(course,teamID) #behavior  
** getTeams() #behavior  
** getTeams() #behavior  
*Team #atom
===== Team =====
"group of users that act as one"
*Team #atom --- "group of users that act as one"
** student (list)
** student (list)
** description
** description
Line 25: Line 17:
** getMembers() #behavior  
** getMembers() #behavior  
** Team/User #relationship  
** Team/User #relationship  
** Status
** Status --- "Active/inactive"
    "Active/inactive"
 


===== Course =====
*Course #atom
*Course #atom
** descriptive information
** descriptive information --- "some or all may actually be top level"
  "some or all may actually be top level"
** professor
** professor
** term
** term
Line 37: Line 27:
** end date
** end date
** conf
** conf
** state
** state --- "open/closed"
  "open/closed"
** addUser() #behavior
** addUser() #behavior
** Course/Participant #relationship
** Course/Participant #relationship
** tags
** tags
** overrides
** overrides --- "start date, end date, state, etc."
    "start date, end date, state, etc."
** status --- "active/inactive"
** status  
    "active/inactive"
** getSets() #behavior  
** getSets() #behavior  
** addSet() #behavior  
** addSet() #behavior  
Line 51: Line 38:
** getType #behavior  
** getType #behavior  
** Course/User #child-class
** Course/User #child-class
** role
** role --- "referenced by name?"
      "referenced by name?"
** getGrade() #behavior  
** getGrade() #behavior  
** getTeams() #behavior  
** getTeams() #behavior  
** Course/Team #child-class
** Course/Team #child-class
** role
** role
 
===== Set =====
Set #atom
*Set #atom
******
** Descriptive Info
** Descriptive Info
*** name
*** name
*** etc.
*** etc.
** tags
** tags
** getProblemPoolList() #behavior  
** getProblemPoolList() #behavior --- "enumerated"
  "enumerated"
** versioning information --- "this can be templated?"
** versioning information
  "this can be templated?"
*** strategy name
*** strategy name
*** required strategy data
*** required strategy data
** grading Information
** grading Information --- "this can be templated?"
  "this can be templated?"
*** strategy name
*** strategy name
*** required strategy data
*** required strategy data
** Course/Set #relationship  
** Course/Set #relationship  
*** Due/Assignment/Answer Date Info
*** Due/Assignment/Answer Date Info
*** overrides for set data
*** overrides for set data --- "any field from set can be over ridden"
    "any field from set can be over ridden"
*** IP Restriction Info
*** IP Restriction Info
*** getAssignedParticipants() #behavior  
*** getAssignedParticipants() #behavior  
*** tags
*** tags
*** Course/Set/Participant #relationship
*** Course/Set/Participant #relationship
**** overrides for set course data
**** overrides for set course data --- "any field from course/set can be over ridden"
      "any field from course/set can be over ridden"
**** tags
**** tags
**** state
**** state --- "working/done"
      "working/done"
**** getSetGrade() #behavior  
**** getSetGrade() #behavior  
**** Course/Set/Participant/Problem Pool #relationship  
**** Course/Set/Participant/Problem Pool #relationship  
Line 92: Line 71:
***** getCurrentProblemInstance() #behavior  
***** getCurrentProblemInstance() #behavior  
***** getNewProblemInstance() #behavior  
***** getNewProblemInstance() #behavior  
***** incorrect attempts
***** incorrect attempts --- "int"
        "int"
***** correct attempts --- "int"
***** correct attempts
***** number of instances --- "the number of times getNewProblemInstance has been called"
        "int"
***** number of instances
        "the number of times getNewProblemInstance has been called"
***** Course/Set/Participant/Problem Pool/Attempt #relationship  
***** Course/Set/Participant/Problem Pool/Attempt #relationship  
****** time
****** time
****** score
****** score
****** tags
****** tags
****** problemInstance
****** problemInstance --- "all information required to faithfully recreate the problem"
          "all information required to faithfully recreate the problem"
===== Problem =====
*Problem #atom
**id
**PG info --- to be expanded
 
=====Role=====
 
* Role #atom --- "global immutable sysadmin role included"
** Permissions
** Name
 
 
[[Category:Developers]]

Latest revision as of 23:18, 22 June 2021

User
  • User #atom
    • username
    • tags
    • contact/personal info
    • authentication information
    • role
    • addCourse() #behavior
    • joinTeam(course,teamID) #behavior
    • getTeams() #behavior
Team
  • Team #atom --- "group of users that act as one"
    • student (list)
    • description
    • course
    • clone() #behavior
    • getMembers() #behavior
    • Team/User #relationship
    • Status --- "Active/inactive"
Course
  • Course #atom
    • descriptive information --- "some or all may actually be top level"
    • professor
    • term
    • start date
    • end date
    • conf
    • state --- "open/closed"
    • addUser() #behavior
    • Course/Participant #relationship
    • tags
    • overrides --- "start date, end date, state, etc."
    • status --- "active/inactive"
    • getSets() #behavior
    • addSet() #behavior
    • description
    • getType #behavior
    • Course/User #child-class
    • role --- "referenced by name?"
    • getGrade() #behavior
    • getTeams() #behavior
    • Course/Team #child-class
    • role
Set
  • Set #atom
    • Descriptive Info
      • name
      • etc.
    • tags
    • getProblemPoolList() #behavior --- "enumerated"
    • versioning information --- "this can be templated?"
      • strategy name
      • required strategy data
    • grading Information --- "this can be templated?"
      • strategy name
      • required strategy data
    • Course/Set #relationship
      • Due/Assignment/Answer Date Info
      • overrides for set data --- "any field from set can be over ridden"
      • IP Restriction Info
      • getAssignedParticipants() #behavior
      • tags
      • Course/Set/Participant #relationship
        • overrides for set course data --- "any field from course/set can be over ridden"
        • tags
        • state --- "working/done"
        • getSetGrade() #behavior
        • Course/Set/Participant/Problem Pool #relationship
          • current grade
          • getCurrentProblemInstance() #behavior
          • getNewProblemInstance() #behavior
          • incorrect attempts --- "int"
          • correct attempts --- "int"
          • number of instances --- "the number of times getNewProblemInstance has been called"
          • Course/Set/Participant/Problem Pool/Attempt #relationship
            • time
            • score
            • tags
            • problemInstance --- "all information required to faithfully recreate the problem"
Problem
  • Problem #atom
    • id
    • PG info --- to be expanded
Role
  • Role #atom --- "global immutable sysadmin role included"
    • Permissions
    • Name