[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Gradebook definition - first try



Here's my first shot at a definition for the gradebook app.  I've
probably duplicated effort on the data type definitions,  but I don't
read XML yet, and I wanted to get my ideas down on paper.  :-)  I left
all of the seating chart and attendance things out of this, just
concentrating on the grading for now.  Feel free to rip it apart and
make constructive comments.  I'm sure things need to be
added/changed...  I've never really done this before.

Is this a helpful thing to do?

I'm planning on making a filter for this mailing list so I can keep
track of it more easily - is it reasonable to request that mail related
to this application have "gradebook" in the subject?  Please let me know
if I'm breaking any list-etiquette rules.

Also - a question about the XML - is this the primary form in which the
data will be stored?  How quickly can data in that format be operated
upon?  Or would the data be in a more database-like format, with the
option to export as XML?

Anyway, here's what I've got:

1.  Features
 1.1  Grading Methods - I've seen many different grading methods used.
I don't want
  to debate which one is best, but I believe that at least these are in
  common use.  A useful gradebook should allow grades to be calculated
in
  the following ways:

  1.1.1 Total Points
   Each assignment is worth X points, and a student scores x points
   on each assignment.  Final percentage is then sum(x)/sum(X).
   Each individual assignment may have a weight (1x, 2x, 3x) to
   make it more valuable (example: all quizzes count 2x)
   This is really just a special case of 1.1.3 below, with all
   category weights equal.

  1.1.2 Category Weights
   Each assignment is graded and given a percentage.
   Assignments are grouped into categories (homework, quizzes, tests,
   etc.), with each category given a weight in the overall average.
   Grades within each category are averaged, and then an overall
   percentage is calculated by applying the weights to the categories.

  1.1.3 Total Points with Category Weights
   This is a combination of 1.1.1 and 1.1.2.  Student receives a
   percentage for each category based on the total points method,
   then final grade is computed by applying weights to the the
categories.

  1.1.4 Extra Credit
   Extra credit is confusing.  :-)  In the total points method, students

   may simply earn additional points.  In any of the methods,
   they may receive a percentage
   for the extra credit they did, and then get some portion of a maximum

   grade boost allowed.  i.e., if a student did 70% of the extra credit
   and extra credit may count for up to 10% of the final grade, that
   student's grade would be boosted by 7%.

  1.1.5 Lowest Grades
   Each method should allow the N lowest grades to be dropped for each
   student.

  1.1.6 Rounding
   Allow final grade to automatically be rounded to arbitrary precision.

 1.2  Data types (I think this is being defined in the "EDUML" format -
I'll just
  get these thoughts down, then we'll make sure they're accounted for.)
Some of
  these fields would be optional.

  1.2.1 School Data
   The following data should be stored for each school: school name,
address,
   phone number, web site, principal...  Allow import from text list.

  1.2.2 Class data
   The following data should be stored for each class: class name, class

   number, subject, students in class, assignments in class, class start
and end
   dates.  Also, grading scheme (grade names with percentage cutoff
points,
   or some sort of curve data)

  1.2.3 Student data
   The following data should be stored for each student:  Name, ID#,
parents'
   names, home address, home phone, email address, parents' email
address.
   It would probably be beneficial to have double fields for parents in
the
   event that they are separated?   Space for notes.

  1.2.4 Assignment data
   The following data should be stored for each assignment:  Assignment
name,
   assignment date, assignment description, assignment category
(homework,
   test, etc.), perfect score, assignment weight.

  1.2.5 Grade data
   Each individual grade may be recorded as points, percentage, "not
counted"
   or "missing."  (percentage may just be a special case of points where

   the perfect score is 100?) (Allow entry by grade names?  Assign
specific
   % to each grade name?)

 1.3 Data Management

  1.3.1   Grade entry
   Allow grades to be entered either in spreadsheet format, or with a
dialog
   box for one student/multiple assignments, or one assignment/multiple
students.

  1.3.2 Data reuse
   Allow assignments and/or students to be dragged (or cut and pasted)
from one
   class to another.  Default for assignments would be "copy" and for
students
   would be "move."  Allow new classes to be created with old classes as

   "templates" either for assignments or for student rosters.

 1.4 Reporting

  1.4.1 Report Types - Data
   Allow grade reports by student or by class.  Either summary
(cumulative average
   only) or comprehensive (all individual grades shown, with average).
Allow
   blank grade sheets to be printed (for recording written grades).
Print bar
   graphs with bins for grade ranges.  Allow reporting for combinations
of classes.

  1.4.2 Report Types - Reporting Medium
   Allow reports to be printed, emailed, or exported to XML or HTML.

  1.4.3 Export to other formats
   Allow exporting to proprietary formats used in school
administration....?

 1.5 General

  1.5.1 Allow preferences to be set as defaults.