Home Projects Jobs Clientele Contact


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

Logical relations between students/teachers/etc and groups, classes, and courses

Groups, class, courses, and persons

Executive Summary (let the flame begin!)

Object relations:
  1. The central unit of hierarchy is Class. Class has a title and description. (There is still a question about title/description in preferred language, but that's a separate issue). Class may be connected to any number of courses, and vise versa (many to many r/ship). Class may include several groups with different group types (TEACHERS, STUDENTS, etc). Class also defines subscription rule that defines ether the class is free or has a price or a periodic payment.
  2. A course is defined as a record with a compulsory reference to TLT (Top Level Topic) version. Therefore, a course defines a version snapshot of the UMO hierarchy for the TLT. 
  3. A group may include any number of persons, and person may be in any number of groups. Group may be connected to any number of UMOs through the ACL tables. It grants the actual permissions of the group (and group members) to the UMOs.
  1. The creator of the class is automatically included into 'Admins' group of the class. The person can manage the other people in the group.
  2. A student signs up to a class by creating a subscription order. If the class is free, the order is created with zero amount and instantly closed. For a payed class, the amount isn't zero, and the order stays in pendinding state till the payment is confirmed. If the order amount can be debited from person's account, the order is closed instantly and amount is credited to class' account. As soon as the order is closed, student becomes a class member (is included into 'STUDENTS' group of the class).

Alexey Parshin,

Authoright © Total Knowledge: 2001-2008