Skip to content

Releases: UniTime/unitime

UniTime 4.1 build 149 (RC 2)

18 Feb 10:13
Compare
Choose a tag to compare
Pre-release

Course Timetabling

Class Duration Types

  • Added ability to define different ways how class duration is entered and used in the system (to
    extend the formal Minutes per Week selection).
  • There is a new page (Administration > Other > Class Duration Types), where the class duration
    types can be managed.
    • Permission ClassDurationTypes is needed to access the page, ClassDurationTypeEdit is needed to
      make changes.
  • Default duration type can be defined on an academic session, it can be overridden on the
    instructional offering configuration level (Instructional Offering Configuration page).
    • Name of the default duration type is used in the column headers (Classes, Instructional
      Offerings), abbreviation is used to suffix durations that are using a non-default duration
      type.
  • Following class duration types have been implemented:
    • Minutes per Week (default): this is the existing behavior (minutes per week == number of
      meetings x minutes per meeting)
    • Average Weekly Minutes: average number of minutes a class takes during a week (weekly minutes
      = number of meetings x minutes per meeting x number of weeks of the data pattern / number of
      weeks in the term)
      • Parameter: number of weeks in the term (defaults to the number of weeks of the default date
        pattern)
    • Semester Minutes: number of minutes in the semester (semester minutes == number of meetings x
      minutes per meeting x number of weeks of the data pattern)
    • Semester Hours: number of hours in the semester (semester hours == number of meetings x
      minutes per meeting x number of weeks of the data pattern / minutes in an hour)
      • Parameter: number of minutes in an hour (defaults to 50)
    • Meetings Minutes: number of minutes of all the meetings, excluding vacations (meeting minutes
      == number of meetings based on the date pattern x minutes per meeting)
      • Parameters: allowed variation of the meeting minutes, expressed as lower and upper bound
        (defaults to 0.95,1.10 -- meaning a class can have 5% less time, combinations with 10% more
        time will be also considered).
      • If the number of meetings based on the date pattern exceeds the desired number of meeting
        minutes, only meetings covering the given number of meeting minutes are created.
    • Meeting Hours: just like meeting minutes, but with hours (semester hours == number of meetings
      based on the date pattern x minutes per meeting / minutes in an hour)
      • Parameters: number of minutes in an hour and the allowed variation of the meeting minutes
        (defaults to 50,0.95,1.10 -- 50 minutes in an hour, 5% less time allowed, combinations with
        up to 10% excess time are considered).
  • It is possible to hide class duration types that are not to be used by the users.
    • If only one type is visible, there is no selection of the class duration type on the
      Instructional Offering Configuration page.

Cancelled Classes

  • Added ability to cancel a class.
  • Multiple Class Setup page: class with enrollments cannot be deleted, but it could be cancelled
    instead.
  • Cancelled classes retain their committed assignment, but the appropriate class event is
    cancelled.
  • Cancelled classes are not loaded into the course timetabling solver.
  • Cancelled classes cannot be edited or re-assigned and they do not block the room or instructor.
  • When a cancelled classes is reopened, the appropriate event is also re-approved.
    • This could cause conflicts, that have to be manually resolved.
  • In student scheduling, cancelled classes are avoided (no valid enrollment can contain
    a cancelled class).
  • In online student scheduling, it is possible to keep existing students in cancelled classes when
    solver configuration parameter named Enrollment.CanKeepCancelledClass is set to true (defaults
    to false).
  • New permissions:
    • Class Delete: ability to delete a class (class cannot be deleted when there is a committed
      solution and at least one student enrolled in the class)
    • Class Delete No Enrollment Check: this permission overrides the enrollment check from the
      Class Delete permission (not given to any role by default)
    • Class Cancel: ability to cancel a class (there must be a committed solution)
    • The Class Delete and Class Cancel permissions are by default given to all roles that have
      Multiple Class Setup Class and / or Class Edit permissions.
  • Added a new permission (named Class Delete No Enrollment Check) that overrides the enrollment
    check from the Class Delete permission.
    • No role is given this permission by default.
  • Make Not-Offered: It is allowed to make an offering not-offered only when there are no students
    enrolled, there is no committed solution, or the user has the Class Delete No Enrollment Check
    permission.
  • Cross Lists: it is allowed to remove a cross-listed course from an offering only when there are
    no students enrolled, there is no committed solution, or the user has the Class Delete No
    Enrollment Check permission.

Conflicting Classes

  • Class Detail: Display conflicting classes.
    • There is a new table called Conflicting Classes, just below the Timetable section.
    • The table is only visible when the class is conflicting with some other class (or classes).
    • The same checking as on the Class Assignment page is used.
  • Instructional Offering Detail: Highlight conflicting classes with light red background.
    • Conflicting classes are listed in the tool-tip (more details are provided on the Class Detail
      page, see above).
  • Conflict checking: avoid showing conflicts between classes that can overlap because of the Can
    Share Room or the Meet Together distribution.

Instructional Methods

  • Added instructional methods lookup table. Each method has a reference and a label.
  • Example instructional methods: Online, Hybrid, or Face-to-Face.
  • Instructional offering configuration can have an instructional method set.
  • If set, instructional method appear on various pages, including the Scheduling Assistant and
    Events.
  • It is usually included in the Type column, next to the instructional type, e.g., Lecture
    (Online).

Multiple-Major Curricula

  • A curriculum has a new property named multiple majors (boolean, default to false).
  • If a curriculum is marked as multiple-major: a student meets the curriculum only when he/she has
    all the selected majors (not one of the selected).
  • A multiple-major curriculum will inherit course projections from curricula that have no or one
    of the matching majors.
  • There can be multiple curricula that get combined together to form a multiple-major curriculum.
  • If a course is on several curricula, the highest percent share (of the particular
    classification) will be used.
  • These shares can be overridden on the multiple-major curriculum, but no courses can be deleted
    (course projection must be set to zero instead).
  • The parent (single or no major curricula) can have zero requested students, only acting as
    templates for the multiple-major curricula.
  • If there is no multiple-major curriculum, everything works like before.

Reservations

  • Remember last sort in the reservation cookie.
  • Added Previous / Next buttons (Edit Reservation).
  • Added confirmation message when deleting a reservation (Edit Reservation).

Rooms

Overview

  • The room pages have been completely rewritten using the Google Web Toolkit.
  • The new pages are localizable, they are using the same Room Filter as is used in the event
    management, and they are allowing a change to propagate over to the future academic sessions as
    well.
  • It is also possible for users that are not managers in UniTime (e.g., instructors) and/or that
    have no relation to a particular department (e.g., students) to be allowed to use the new rooms
    pages.
  • When accessed from the Events menu, the Rooms, Room Groups and Room Features pages contain the
    selection of an academic session, just like the Events page.
  • It is possible to use the old pages by setting the application property unitime.legacy.rooms to
    true (defaults to false).

Rooms

  • The Rooms page now contains a Room Filter and a table with many features.
  • The table of rooms can be sorted by a given column, can show pretty much any room property, and
    it can be exported to PDF or CSV.

Add/Edit Room

  • Add Room and Edit Room page now contains all the functionality of the various edit pages that
    were accessible from the Room Detail page.
  • Moreover, it is now possible to make the update the room in the (selected) future academic
    sessions as well.
  • Only selected groups of properties can be updated in a particular future session.

Edit Room Departments

  • The page can be used to assign multiple rooms to a particular department or examination
    problem).
  • The page is only accessible when a department or an examination problem is selected in the Room
    Filter.
  • The page is now using the same table of rooms as the Rooms page and it is populated by all the
    rooms matching the Room Filter (except of the selected department / examination problem).
  • Rooms not matching the Room Filter are left unchanged.

Room Groups / Features

  • The Room Groups and Room Features pages also use the Room Filter to list rooms (and matching
    room features and groups).
  • The Add and Edit pages are also using the same table as on the Rooms page with the list of rooms
    populated by all the rooms matching the Room Filter.
  • Rooms not matching the Room Filter are left unchanged.
  • When creating / updated a room group or feature, it is possible to select one or more future
    academic sessions that would be updated as well.
    • Besides of the properties of the group (or feature) like name, abbreviation department, etc.,
      only rooms with a change are updated.
    • This means that the future group (or feature) is NOT reset to the rooms that are currently
      selected on the group (or feature).

Examination T...

Read more

UniTime 4.1 build 144 (RC 1)

10 Feb 11:59
Compare
Choose a tag to compare
Pre-release

Course Timetabling

Class Duration Types

  • Added ability to define different ways how class duration is entered and used in the system (to
    extend the formal Minutes per Week selection).
  • There is a new page (Administration > Other > Class Duration Types), where the class duration
    types can be managed.
    • Permission ClassDurationTypes is needed to access the page, ClassDurationTypeEdit is needed to
      make changes.
  • Default duration type can be defined on an academic session, it can be overridden on the
    instructional offering configuration level (Instructional Offering Configuration page).
    • Name of the default duration type is used in the column headers (Classes, Instructional
      Offerings), abbreviation is used to suffix durations that are using a non-default duration
      type.
  • Following class duration types have been implemented:
    • Minutes per Week (default): this is the existing behavior (minutes per week == number of
      meetings x minutes per meeting)
    • Average Weekly Minutes: average number of minutes a class takes during a week (weekly minutes
      = number of meetings x minutes per meeting x number of weeks of the data pattern / number of
      weeks in the term)
      • Parameter: number of weeks in the term (defaults to the number of weeks of the default date
        pattern)
    • Semester Minutes: number of minutes in the semester (semester minutes == number of meetings x
      minutes per meeting x number of weeks of the data pattern)
    • Semester Hours: number of hours in the semester (semester hours == number of meetings x
      minutes per meeting x number of weeks of the data pattern / minutes in an hour)
      • Parameter: number of minutes in an hour (defaults to 50)
    • Meetings Minutes: number of minutes of all the meetings, excluding vacations (meeting minutes
      == number of meetings based on the date pattern x minutes per meeting)
      • Parameters: allowed variation of the meeting minutes, expressed as lower and upper bound
        (defaults to 0.95,1.10 -- meaning a class can have 5% less time, combinations with 10% more
        time will be also considered).
      • If the number of meetings based on the date pattern exceeds the desired number of meeting
        minutes, only meetings covering the given number of meeting minutes are created.
    • Meeting Hours: just like meeting minutes, but with hours (semester hours == number of meetings
      based on the date pattern x minutes per meeting / minutes in an hour)
      • Parameters: number of minutes in an hour and the allowed variation of the meeting minutes
        (defaults to 50,0.95,1.10 -- 50 minutes in an hour, 5% less time allowed, combinations with
        up to 10% excess time are considered).
  • It is possible to hide class duration types that are not to be used by the users.
    • If only one type is visible, there is no selection of the class duration type on the
      Instructional Offering Configuration page.

Cancelled Classes

  • Added ability to cancel a class.
  • Multiple Class Setup page: class with enrollments cannot be deleted, but it could be cancelled
    instead.
  • Cancelled classes retain their committed assignment, but the appropriate class event is
    cancelled.
  • Cancelled classes are not loaded into the course timetabling solver.
  • Cancelled classes cannot be edited or re-assigned and they do not block the room or instructor.
  • When a cancelled classes is reopened, the appropriate event is also re-approved.
    • This could cause conflicts, that have to be manually resolved.
  • In student scheduling, cancelled classes are avoided (no valid enrollment can contain
    a cancelled class).
  • In online student scheduling, it is possible to keep existing students in cancelled classes when
    solver configuration parameter named Enrollment.CanKeepCancelledClass is set to true (defaults
    to false).
  • New permissions:
    • Class Delete: ability to delete a class (class cannot be deleted when there is a committed
      solution and at least one student enrolled in the class)
    • Class Delete No Enrollment Check: this permission overrides the enrollment check from the
      Class Delete permission (not given to any role by default)
    • Class Cancel: ability to cancel a class (there must be a committed solution)
    • The Class Delete and Class Cancel permissions are by default given to all roles that have
      Multiple Class Setup Class and / or Class Edit permissions.
  • Added a new permission (named Class Delete No Enrollment Check) that overrides the enrollment
    check from the Class Delete permission.
    • No role is given this permission by default.
  • Make Not-Offered: It is allowed to make an offering not-offered only when there are no students
    enrolled, there is no committed solution, or the user has the Class Delete No Enrollment Check
    permission.
  • Cross Lists: it is allowed to remove a cross-listed course from an offering only when there are
    no students enrolled, there is no committed solution, or the user has the Class Delete No
    Enrollment Check permission.

Conflicting Classes

  • Class Detail: Display conflicting classes.
    • There is a new table called Conflicting Classes, just below the Timetable section.
    • The table is only visible when the class is conflicting with some other class (or classes).
    • The same checking as on the Class Assignment page is used.
  • Instructional Offering Detail: Highlight conflicting classes with light red background.
    • Conflicting classes are listed in the tool-tip (more details are provided on the Class Detail
      page, see above).
  • Conflict checking: avoid showing conflicts between classes that can overlap because of the Can
    Share Room or the Meet Together distribution.

Instructional Methods

  • Added instructional methods lookup table. Each method has a reference and a label.
  • Example instructional methods: Online, Hybrid, or Face-to-Face.
  • Instructional offering configuration can have an instructional method set.
  • If set, instructional method appear on various pages, including the Scheduling Assistant and
    Events.
  • It is usually included in the Type column, next to the instructional type, e.g., Lecture
    (Online).

Multiple-Major Curricula

  • A curriculum has a new property named multiple majors (boolean, default to false).
  • If a curriculum is marked as multiple-major: a student meets the curriculum only when he/she has
    all the selected majors (not one of the selected).
  • A multiple-major curriculum will inherit course projections from curricula that have no or one
    of the matching majors.
  • There can be multiple curricula that get combined together to form a multiple-major curriculum.
  • If a course is on several curricula, the highest percent share (of the particular
    classification) will be used.
  • These shares can be overridden on the multiple-major curriculum, but no courses can be deleted
    (course projection must be set to zero instead).
  • The parent (single or no major curricula) can have zero requested students, only acting as
    templates for the multiple-major curricula.
  • If there is no multiple-major curriculum, everything works like before.

Reservations

  • Remember last sort in the reservation cookie.
  • Added Previous / Next buttons (Edit Reservation).
  • Added confirmation message when deleting a reservation (Edit Reservation).

Rooms

Overview

  • The room pages have been completely rewritten using the Google Web Toolkit.
  • The new pages are localizable, they are using the same Room Filter as is used in the event
    management, and they are allowing a change to propagate over to the future academic sessions as
    well.
  • It is also possible for users that are not managers in UniTime (e.g., instructors) and/or that
    have no relation to a particular department (e.g., students) to be allowed to use the new rooms
    pages.
  • When accessed from the Events menu, the Rooms, Room Groups and Room Features pages contain the
    selection of an academic session, just like the Events page.
  • It is possible to use the old pages by setting the application property unitime.legacy.rooms to
    true (defaults to false).

Rooms

  • The Rooms page now contains a Room Filter and a table with many features.
  • The table of rooms can be sorted by a given column, can show pretty much any room property, and
    it can be exported to PDF or CSV.

Add/Edit Room

  • Add Room and Edit Room page now contains all the functionality of the various edit pages that
    were accessible from the Room Detail page.
  • Moreover, it is now possible to make the update the room in the (selected) future academic
    sessions as well.
  • Only selected groups of properties can be updated in a particular future session.

Edit Room Departments

  • The page can be used to assign multiple rooms to a particular department or examination
    problem).
  • The page is only accessible when a department or an examination problem is selected in the Room
    Filter.
  • The page is now using the same table of rooms as the Rooms page and it is populated by all the
    rooms matching the Room Filter (except of the selected department / examination problem).
  • Rooms not matching the Room Filter are left unchanged.

Room Groups / Features

  • The Room Groups and Room Features pages also use the Room Filter to list rooms (and matching
    room features and groups).
  • The Add and Edit pages are also using the same table as on the Rooms page with the list of rooms
    populated by all the rooms matching the Room Filter.
  • Rooms not matching the Room Filter are left unchanged.
  • When creating / updated a room group or feature, it is possible to select one or more future
    academic sessions that would be updated as well.
    • Besides of the properties of the group (or feature) like name, abbreviation department, etc.,
      only rooms with a change are updated.
    • This means that the future group (or feature) is NOT reset to the rooms that are currently
      selected on the group (or feature).

Examination T...

Read more

UniTime 4.1 build 136 (Beta 2)

19 Jan 11:57
Compare
Choose a tag to compare
Pre-release

Course Timetabling

Class Duration Types

  • Added ability to define different ways how class duration is entered and used in the system (to
    extend the formal Minutes per Week selection).
  • There is a new page (Administration > Other > Class Duration Types), where the class duration
    types can be managed.
    • Permission ClassDurationTypes is needed to access the page, ClassDurationTypeEdit is needed to
      make changes.
  • Default duration type can be defined on an academic session, it can be overridden on the
    instructional offering configuration level (Instructional Offering Configuration page).
    • Name of the default duration type is used in the column headers (Classes, Instructional
      Offerings), abbreviation is used to suffix durations that are using a non-default duration
      type.
  • Following class duration types have been implemented:
    • Minutes per Week (default): this is the existing behavior (minutes per week == number of
      meetings x minutes per meeting)
    • Average Weekly Minutes: average number of minutes a class takes during a week (weekly minutes
      = number of meetings x minutes per meeting x number of weeks of the data pattern / number of
      weeks in the term)
      • Parameter: number of weeks in the term (defaults to the number of weeks of the default date
        pattern)
    • Semester Minutes: number of minutes in the semester (semester minutes == number of meetings x
      minutes per meeting x number of weeks of the data pattern)
    • Semester Hours: number of hours in the semester (semester hours == number of meetings x
      minutes per meeting x number of weeks of the data pattern / minutes in an hour)
      • Parameter: number of minutes in an hour (defaults to 50)
    • Meetings Minutes: number of minutes of all the meetings, excluding vacations (meeting minutes
      == number of meetings based on the date pattern x minutes per meeting)
      • Parameters: allowed variation of the meeting minutes, expressed as lower and upper bound
        (defaults to 0.95,1.10 -- meaning a class can have 5% less time, combinations with 10% more
        time will be also considered).
      • If the number of meetings based on the date pattern exceeds the desired number of meeting
        minutes, only meetings covering the given number of meeting minutes are created.
    • Meeting Hours: just like meeting minutes, but with hours (semester hours == number of meetings
      based on the date pattern x minutes per meeting / minutes in an hour)
      • Parameters: number of minutes in an hour and the allowed variation of the meeting minutes
        (defaults to 50,0.95,1.10 -- 50 minutes in an hour, 5% less time allowed, combinations with
        up to 10% excess time are considered).
  • It is possible to hide class duration types that are not to be used by the users.
    • If only one type is visible, there is no selection of the class duration type on the
      Instructional Offering Configuration page.

Cancelled Classes

  • Added ability to cancel a class.
  • Multiple Class Setup page: class with enrollments cannot be deleted, but it could be cancelled
    instead.
  • Cancelled classes retain their committed assignment, but the appropriate class event is
    cancelled.
  • Cancelled classes are not loaded into the course timetabling solver.
  • Cancelled classes cannot be edited or re-assigned and they do not block the room or instructor.
  • When a cancelled classes is reopened, the appropriate event is also re-approved.
    • This could cause conflicts, that have to be manually resolved.
  • In student scheduling, cancelled classes are avoided (no valid enrollment can contain
    a cancelled class).
  • In online student scheduling, it is possible to keep existing students in cancelled classes when
    solver configuration parameter named Enrollment.CanKeepCancelledClass is set to true (defaults
    to false).
  • New permissions:
    • Class Delete: ability to delete a class (class cannot be deleted when there is a committed
      solution and at least one student enrolled in the class)
    • Class Delete No Enrollment Check: this permission overrides the enrollment check from the
      Class Delete permission (not given to any role by default)
    • Class Cancel: ability to cancel a class (there must be a committed solution)
    • The Class Delete and Class Cancel permissions are by default given to all roles that have
      Multiple Class Setup Class and / or Class Edit permissions.
  • Added a new permission (named Class Delete No Enrollment Check) that overrides the enrollment
    check from the Class Delete permission.
    • No role is given this permission by default.
  • Make Not-Offered: It is allowed to make an offering not-offered only when there are no students
    enrolled, there is no committed solution, or the user has the Class Delete No Enrollment Check
    permission.
  • Cross Lists: it is allowed to remove a cross-listed course from an offering only when there are
    no students enrolled, there is no committed solution, or the user has the Class Delete No
    Enrollment Check permission.

Conflicting Classes

  • Class Detail: Display conflicting classes.
    • There is a new table called Conflicting Classes, just below the Timetable section.
    • The table is only visible when the class is conflicting with some other class (or classes).
    • The same checking as on the Class Assignment page is used.
  • Instructional Offering Detail: Highlight conflicting classes with light red background.
    • Conflicting classes are listed in the tool-tip (more details are provided on the Class Detail
      page, see above).
  • Conflict checking: avoid showing conflicts between classes that can overlap because of the Can
    Share Room or the Meet Together distribution.

Instructional Methods

  • Added instructional methods lookup table. Each method has a reference and a label.
  • Example instructional methods: Online, Hybrid, or Face-to-Face.
  • Instructional offering configuration can have an instructional method set.
  • If set, instructional method appear on various pages, including the Scheduling Assistant and
    Events.
  • It is usually included in the Type column, next to the instructional type, e.g., Lecture
    (Online).

Multiple-Major Curricula

  • A curriculum has a new property named multiple majors (boolean, default to false).
  • If a curriculum is marked as multiple-major: a student meets the curriculum only when he/she has
    all the selected majors (not one of the selected).
  • A multiple-major curriculum will inherit course projections from curricula that have no or one
    of the matching majors.
  • There can be multiple curricula that get combined together to form a multiple-major curriculum.
  • If a course is on several curricula, the highest percent share (of the particular
    classification) will be used.
  • These shares can be overridden on the multiple-major curriculum, but no courses can be deleted
    (course projection must be set to zero instead).
  • The parent (single or no major curricula) can have zero requested students, only acting as
    templates for the multiple-major curricula.
  • If there is no multiple-major curriculum, everything works like before.

Reservations

  • Remember last sort in the reservation cookie.
  • Added Previous / Next buttons (Edit Reservation).
  • Added confirmation message when deleting a reservation (Edit Reservation).

Rooms

Overview

  • The room pages have been completely rewritten using the Google Web Toolkit.
  • The new pages are localizable, they are using the same Room Filter as is used in the event
    management, and they are allowing a change to propagate over to the future academic sessions as
    well.
  • It is also possible for users that are not managers in UniTime (e.g., instructors) and/or that
    have no relation to a particular department (e.g., students) to be allowed to use the new rooms
    pages.
  • When accessed from the Events menu, the Rooms, Room Groups and Room Features pages contain the
    selection of an academic session, just like the Events page.
  • It is possible to use the old pages by setting the application property unitime.legacy.rooms to
    true (defaults to false).

Rooms

  • The Rooms page now contains a Room Filter and a table with many features.
  • The table of rooms can be sorted by a given column, can show pretty much any room property, and
    it can be exported to PDF or CSV.

Add/Edit Room

  • Add Room and Edit Room page now contains all the functionality of the various edit pages that
    were accessible from the Room Detail page.
  • Moreover, it is now possible to make the update the room in the (selected) future academic
    sessions as well.
  • Only selected groups of properties can be updated in a particular future session.

Edit Room Departments

  • The page can be used to assign multiple rooms to a particular department or examination
    problem).
  • The page is only accessible when a department or an examination problem is selected in the Room
    Filter.
  • The page is now using the same table of rooms as the Rooms page and it is populated by all the
    rooms matching the Room Filter (except of the selected department / examination problem).
  • Rooms not matching the Room Filter are left unchanged.

Room Groups / Features

  • The Room Groups and Room Features pages also use the Room Filter to list rooms (and matching
    room features and groups).
  • The Add and Edit pages are also using the same table as on the Rooms page with the list of rooms
    populated by all the rooms matching the Room Filter.
  • Rooms not matching the Room Filter are left unchanged.
  • When creating / updated a room group or feature, it is possible to select one or more future
    academic sessions that would be updated as well.
    • Besides of the properties of the group (or feature) like name, abbreviation department, etc.,
      only rooms with a change are updated.
    • This means that the future group (or feature) is NOT reset to the rooms that are currently
      selected on the group (or feature).

Examination T...

Read more

UniTime 4.1 build 125 (Beta 1)

21 Dec 12:26
Compare
Choose a tag to compare
Pre-release

Course Timetabling

Class Duration Types

  • Added ability to define different ways how class duration is entered and used in the system (to
    extend the formal Minutes per Week selection).
  • There is a new page (Administration > Other > Class Duration Types), where the class duration
    types can be managed.
    • Permission ClassDurationTypes is needed to access the page, ClassDurationTypeEdit is needed to
      make changes.
  • Default duration type can be defined on an academic session, it can be overridden on the
    instructional offering configuration level (Instructional Offering Configuration page).
    • Name of the default duration type is used in the column headers (Classes, Instructional
      Offerings), abbreviation is used to suffix durations that are using a non-default duration
      type.
  • Following class duration types have been implemented:
    • Minutes per Week (default): this is the existing behavior (minutes per week == number of
      meetings x minutes per meeting)
    • Average Weekly Minutes: average number of minutes a class takes during a week (weekly minutes
      = number of meetings x minutes per meeting x number of weeks of the data pattern / number of
      weeks in the term)
      • Parameter: number of weeks in the term (defaults to the number of weeks of the default date
        pattern)
    • Semester Minutes: number of minutes in the semester (semester minutes == number of meetings x
      minutes per meeting x number of weeks of the data pattern)
    • Semester Hours: number of hours in the semester (semester hours == number of meetings x
      minutes per meeting x number of weeks of the data pattern / minutes in an hour)
      • Parameter: number of minutes in an hour (defaults to 50)
    • Meetings Minutes: number of minutes of all the meetings, excluding vacations (meeting minutes
      == number of meetings based on the date pattern x minutes per meeting)
      • Parameters: allowed variation of the meeting minutes, expressed as lower and upper bound
        (defaults to 0.95,1.10 -- meaning a class can have 5% less time, combinations with 10% more
        time will be also considered).
      • If the number of meetings based on the date pattern exceeds the desired number of meeting
        minutes, only meetings covering the given number of meeting minutes are created.
    • Meeting Hours: just like meeting minutes, but with hours (semester hours == number of meetings
      based on the date pattern x minutes per meeting / minutes in an hour)
      • Parameters: number of minutes in an hour and the allowed variation of the meeting minutes
        (defaults to 50,0.95,1.10 -- 50 minutes in an hour, 5% less time allowed, combinations with
        up to 10% excess time are considered).
  • It is possible to hide class duration types that are not to be used by the users.
    • If only one type is visible, there is no selection of the class duration type on the
      Instructional Offering Configuration page.

Cancelled Classes

  • Added ability to cancel a class.
  • Multiple Class Setup page: class with enrollments cannot be deleted, but it could be cancelled
    instead.
  • Cancelled classes retain their committed assignment, but the appropriate class event is
    cancelled.
  • Cancelled classes are not loaded into the course timetabling solver.
  • Cancelled classes cannot be edited or re-assigned and they do not block the room or instructor.
  • When a cancelled classes is reopened, the appropriate event is also re-approved.
    • This could cause conflicts, that have to be manually resolved.
  • In student scheduling, cancelled classes are avoided (no valid enrollment can contain
    a cancelled class).
  • In online student scheduling, it is possible to keep existing students in cancelled classes when
    solver configuration parameter named Enrollment.CanKeepCancelledClass is set to true (defaults
    to false).
  • New permissions:
    • Class Delete: ability to delete a class (class cannot be deleted when there is a committed
      solution and at least one student enrolled in the class)
    • Class Delete No Enrollment Check: this permission overrides the enrollment check from the
      Class Delete permission (not given to any role by default)
    • Class Cancel: ability to cancel a class (there must be a committed solution)
    • The Class Delete and Class Cancel permissions are by default given to all roles that have
      Multiple Class Setup Class and / or Class Edit permissions.
  • Added a new permission (named Class Delete No Enrollment Check) that overrides the enrollment
    check from the Class Delete permission.
    • No role is given this permission by default.
  • Make Not-Offered: It is allowed to make an offering not-offered only when there are no students
    enrolled, there is no committed solution, or the user has the Class Delete No Enrollment Check
    permission.
  • Cross Lists: it is allowed to remove a cross-listed course from an offering only when there are
    no students enrolled, there is no committed solution, or the user has the Class Delete No
    Enrollment Check permission.

Conflicting Classes

  • Class Detail: Display conflicting classes.
    • There is a new table called Conflicting Classes, just below the Timetable section.
    • The table is only visible when the class is conflicting with some other class (or classes).
    • The same checking as on the Class Assignment page is used.
  • Instructional Offering Detail: Highlight conflicting classes with light red background.
    • Conflicting classes are listed in the tool-tip (more details are provided on the Class Detail
      page, see above).
  • Conflict checking: avoid showing conflicts between classes that can overlap because of the Can
    Share Room or the Meet Together distribution.

Instructional Methods

  • Added instructional methods lookup table. Each method has a reference and a label.
  • Example instructional methods: Online, Hybrid, or Face-to-Face.
  • Instructional offering configuration can have an instructional method set.
  • If set, instructional method appear on various pages, including the Scheduling Assistant and
    Events.
  • It is usually included in the Type column, next to the instructional type, e.g., Lecture
    (Online).

Multiple-Major Curricula

  • A curriculum has a new property named multiple majors (boolean, default to false).
  • If a curriculum is marked as multiple-major: a student meets the curriculum only when he/she has
    all the selected majors (not one of the selected).
  • A multiple-major curriculum will inherit course projections from curricula that have no or one
    of the matching majors.
  • There can be multiple curricula that get combined together to form a multiple-major curriculum.
  • If a course is on several curricula, the highest percent share (of the particular
    classification) will be used.
  • These shares can be overridden on the multiple-major curriculum, but no courses can be deleted
    (course projection must be set to zero instead).
  • The parent (single or no major curricula) can have zero requested students, only acting as
    templates for the multiple-major curricula.
  • If there is no multiple-major curriculum, everything works like before.

Reservations

  • Remember last sort in the reservation cookie.
  • Added Previous / Next buttons (Edit Reservation).
  • Added confirmation message when deleting a reservation (Edit Reservation).

Rooms

Overview

  • The room pages have been completely rewritten using the Google Web Toolkit.
  • The new pages are localizable, they are using the same Room Filter as is used in the event
    management, and they are allowing a change to propagate over to the future academic sessions as
    well.
  • It is also possible for users that are not managers in UniTime (e.g., instructors) and/or that
    have no relation to a particular department (e.g., students) to be allowed to use the new rooms
    pages.
  • When accessed from the Events menu, the Rooms, Room Groups and Room Features pages contain the
    selection of an academic session, just like the Events page.
  • It is possible to use the old pages by setting the application property unitime.legacy.rooms to
    true (defaults to false).

Rooms

  • The Rooms page now contains a Room Filter and a table with many features.
  • The table of rooms can be sorted by a given column, can show pretty much any room property, and
    it can be exported to PDF or CSV.

Add/Edit Room

  • Add Room and Edit Room page now contains all the functionality of the various edit pages that
    were accessible from the Room Detail page.
  • Moreover, it is now possible to make the update the room in the (selected) future academic
    sessions as well.
  • Only selected groups of properties can be updated in a particular future session.

Edit Room Departments

  • The page can be used to assign multiple rooms to a particular department or examination
    problem).
  • The page is only accessible when a department or an examination problem is selected in the Room
    Filter.
  • The page is now using the same table of rooms as the Rooms page and it is populated by all the
    rooms matching the Room Filter (except of the selected department / examination problem).
  • Rooms not matching the Room Filter are left unchanged.

Room Groups / Features

  • The Room Groups and Room Features pages also use the Room Filter to list rooms (and matching
    room features and groups).
  • The Add and Edit pages are also using the same table as on the Rooms page with the list of rooms
    populated by all the rooms matching the Room Filter.
  • Rooms not matching the Room Filter are left unchanged.
  • When creating / updated a room group or feature, it is possible to select one or more future
    academic sessions that would be updated as well.
    • Besides of the properties of the group (or feature) like name, abbreviation department, etc.,
      only rooms with a change are updated.
    • This means that the future group (or feature) is NOT reset to the rooms that are currently
      selected on the group (or feature).

Examination T...

Read more

UniTime 4.0 build 47

07 Dec 08:06
Compare
Choose a tag to compare

Bug Fixes

Instructional Offering Detail

  • Curricula Table: Fixed a null pointer exception that sometimes occurs.

Data Exchange

  • Course Catalog XML Import: Fixed setting of the fractionalCreditAllowed attribute.

Edit Course Offering

  • By Reservation Only, Enrollment Deadlines: Corrected the condition when the by reservation only
    toggle and the enrollment deadlines are updated.
    • This fixes the problem of the by reservation only toggle not being updated when the course has
      no credit information.

Date Patterns

  • Week Number: Corrected computation of the week number to folow the formal definition in ISO
    8601.
    • Week 1 is the week with the year's first Thursday in it.
  • Comparison: Compare date patterns using numbers of weeks and offsets instead of sizes and start
    dates.
    • This also fixes the transitivity of the comparison (IllegalArgumentException: Comparison
      method violates its general contract).

Event Management

  • Fixed a NullPointerException error when there is Display Conflicts in the event filter with
    nothing in the room filter and the query returns a meeting that has no room.

Online Student Scheduling

  • Course Types: Fixed an issue of ignoring course types when the online scheduling server runs in
    the replicated mode.

Other Improvements

Session Roll Forward

  • Instructional Offerings: When adding new instructional offerings based on course catalog data
    for a session, set up the course credit unit configuration if it exists in the course catalog.
    • This was already done when the course catalog was being used in conjunction with rolling
      existing courses forward for a session, but not for a new offering.

UniTime RESTful API

  • API Permission Checks: Check any authority instead of the current (default) one.

Class Assignment

  • Rooms: display the GWT-based room tool tip on mouse over. It also contains the room preference,
    and the conflicting class (if there is a conflict) as a note.
  • Times: display the GWT-based time tool tip on mouse over. It shows time pattern grid with the
    time preferences and the selected time highlighted.
  • Rooms: added ability to select between departmental, timetabling, and all rooms.
    • Timetabling rooms are all the rooms that have at least one department in the room sharing,
      i.e., rooms that can be used for course timetabling by at least one department.

Room Availability Interface

  • Room availability interface changed to pass only unique ids instead of the whole Location /
    DepartmentalInstructor objects.
  • This is to avoid unnecessary serialization between the remote solver server and the web server.

Solver (RPC) Cluster

  • When calling refresh solution, pass the refresh to all local servers (not just the first one).

Config Edit

  • Added the ability to configure a maximum number of classes allowed to be created for
    a scheduling subpart.
    • The property unitime.subpart.max_num_classes determines the maximum number of classes that can
      be created for a scheduling subpart using the Config Edit page. The property defaults to 998
      classes.

UniTime 3.5 build 254

07 Dec 08:01
Compare
Choose a tag to compare

Bug Fixes

Instructional Offering Detail

  • Curricula Table: Fixed a null pointer exception that sometimes occurs.

Data Exchange

  • Course Catalog XML Import: Fixed setting of the fractionalCreditAllowed attribute.

Edit Course Offering

  • By Reservation Only, Enrollment Deadlines: Corrected the condition when the by reservation only
    toggle and the enrollment deadlines are updated.
    • This fixes the problem of the by reservation only toggle not being updated when the course has
      no credit information.

Date Patterns

  • Week Number: Corrected computation of the week number to folow the formal definition in ISO
    8601.
    • Week 1 is the week with the year's first Thursday in it.
  • Comparison: Compare date patterns using numbers of weeks and offsets instead of sizes and start
    dates.
    • This also fixes the transitivity of the comparison (IllegalArgumentException: Comparison
      method violates its general contract).

Event Management

  • Fixed a NullPointerException error when there is Display Conflicts in the event filter with
    nothing in the room filter and the query returns a meeting that has no room.

Online Student Scheduling

  • Course Types: Fixed an issue of ignoring course types when the online scheduling server runs in
    the replicated mode.

Other Improvements

Session Roll Forward

  • Instructional Offerings: When adding new instructional offerings based on course catalog data
    for a session, set up the course credit unit configuration if it exists in the course catalog.
    • This was already done when the course catalog was being used in conjunction with rolling
      existing courses forward for a session, but not for a new offering.

UniTime RESTful API

  • API Permission Checks: Check any authority instead of the current (default) one.

Class Assignment

  • Rooms: display the GWT-based room tool tip on mouse over. It also contains the room preference,
    and the conflicting class (if there is a conflict) as a note.
  • Times: display the GWT-based time tool tip on mouse over. It shows time pattern grid with the
    time preferences and the selected time highlighted.
  • Rooms: added ability to select between departmental, timetabling, and all rooms.
    • Timetabling rooms are all the rooms that have at least one department in the room sharing,
      i.e., rooms that can be used for course timetabling by at least one department.

Room Availability Interface

  • Room availability interface changed to pass only unique ids instead of the whole Location /
    DepartmentalInstructor objects.
  • This is to avoid unnecessary serialization between the remote solver server and the web server.

Solver (RPC) Cluster

  • When calling refresh solution, pass the refresh to all local servers (not just the first one).

Config Edit

  • Added the ability to configure a maximum number of classes allowed to be created for
    a scheduling subpart.
    • The property unitime.subpart.max_num_classes determines the maximum number of classes that can
      be created for a scheduling subpart using the Config Edit page. The property defaults to 998
      classes.

UniTime 4.1 build 110 (Alpha 4)

18 Nov 12:50
Compare
Choose a tag to compare
Pre-release

Course Timetabling

Class Duration Types

  • Added ability to define different ways how class duration is entered and used in the system (to
    extend the formal Minutes per Week selection).
  • There is a new page (Administration > Other > Class Duration Types), where the class duration
    types can be managed.
    • Permission ClassDurationTypes is needed to access the page, ClassDurationTypeEdit is needed to
      make changes.
  • Default duration type can be defined on an academic session, it can be overridden on the
    instructional offering configuration level (Instructional Offering Configuration page).
    • Name of the default duration type is used in the column headers (Classes, Instructional
      Offerings), abbreviation is used to suffix durations that are using a non-default duration
      type.
  • Following class duration types have been implemented:
    • Minutes per Week (default): this is the existing behaviour (minutes per week == number of
      meetings x minutes per meeting)
    • Average Weekly Mintes: average number of minutes a class takes during a week (weekly minutes =
      number of meetings x minutes per meeting x number of weeks of the data pattern / number of
      weeks in the term)
      • Paramter: number of weeks in the term (defaults to the number of weeks of the default date
        pattern)
    • Semester Minutes: number of minutes in the semester (semester minutes == number of meetings x
      minutes per meeting x number of weeks of the data pattern)
    • Semester Hours: number of hours in the semester (semester hours == number of meetings x
      minutes per meeting x number of weeks of the data pattern / minutes in an hour)
      • Paramter: number of minutes in an hour (defaults to 50)
    • Meetings Minutes: number of minutes of all the meetings, excluding vacations (meeting minutes
      == number of meetings based on the date pattern x minutes per meeting)
      • Parameters: allowed variation of the meeting minutes, expressed as lower and upper bound
        (defaults to 0.95,1.10 -- meaning a class can have 5% less time, combinations with 10% more
        time will be also considered).
      • If the number of meetings based on the date pattern exceeds the desired number of meeting
        minutes, only meetings covering the given number of meeting minutes are created.
    • Meeting Hours: just like meeting minutes, but with hours (semester hours == number of meetings
      based on the date pattern x minutes per meeting / minutes in an hour)
      • Paramters: number of minutes in an hour and the allowed variation of the meeting minutes
        (defaults to 50,0.95,1.10 -- 50 minutes in an hour, 5% less time allowed, combinations with
        up to 10% excess time are considered).
  • It is possible to hide class duration types that are not to be used by the users.
    • If only one type is visible, there is no selection of the class duration type on the
      Instructional Offering Configuration page.

Cancelled Classes

  • Added ability to cancel a class.
  • Multiple Class Setup page: class with enrolments cannot be deleted, but it could be cancelled
    instead.
  • Cancelled classes retain their committed assignment, but the appropriate class event is
    cancelled.
  • Cancelled classes are not loaded into the course timetabling solver.
  • Cancelled classes cannot be edited or re-assigned and they do not block the room or instructor.
  • When a cancelled classes is reopened, the appropriate event is also re-approved.
    • This could cause conflicts, that have to be manually resolved.
  • In student scheduling, cancelled classes are avoided (no valid enrollment can contain
    a cancelled class).
  • In online student scheduling, it is possible to keep existing students in cancelled classes when
    solver configuration parameter named Enrollment.CanKeepCancelledClass is set to true (defaults
    to false).
  • New permissions:
    • Class Delete: ability to delete a class (class cannot be deleted when there is a committed
      solution and at least one student enrolled in the class)
    • Class Delete No Enrollment Check: this permission overrides the enrollment check from the
      Class Delete permission (not given to any role by default)
    • Class Cancel: ability to cancel a class (there must be a committed solution)
    • The Class Delete and Class Cancel permissions are by default given to all roles that have
      Multiple Class Setup Class and / or Class Edit permissions.
  • Added a new permission (named Class Delete No Enrollment Check) that overrides the enrollment
    check from the Class Delete permission.
    • No role is given this permission by default.
  • Make Not-Offered: It is allowed to make an offering not-offered only when there are no students
    enrolled, there is no committed solution, or the user has the Class Delete No Enrollment Check
    permission.
  • Cross Lists: it is allowed to remove a cross-listed course from an offering only when there are
    no students enrolled, there is no committed solution, or the user has the Class Delete No
    Enrollment Check permission.

Conflicting Classes

  • Class Detail: Display conflicting classes.
    • There is a new table called Conflicting Classes, just below the Timetable section.
    • The table is only visible when the class is conflicting with some other class (or classes).
    • The same checking as on the Class Assignment page is used.
  • Instructional Offering Detail: Highlight conflicting classes with light red background.
    • Conflicting classes are listed in the tooltip (more details are provided on the Class Detail
      page, see above).
  • Conflict checking: avoid showing conflicts between classes that can overlap because of the Can
    Share Room or the Meet Together distribution.

Instructional Methods

  • Added instructional methods lookup table. Each method has a reference and a label.
  • Example instructional methods: Online, Hybrid, or Face-to-Face.
  • Instructional offering configuration can have an instructional method set.
  • If set, instructional method appear on various pages, including the Scheduling Assistant and
    Events.
  • It is usually included in the Type column, next to the instructional type, e.g., Lecture
    (Online).

Multiple-Major Curricula

  • A curriculum has a new property named multiple majors (boolean, default to false).
  • If a curriculum is marked as multiple-major: a student meets the curriculum only when he/she has
    all the selected majors (not one of the selected).
  • A multiple-major curriculum will inherit course projections from curricula that have no or one
    of the matching majors.
  • There can be multiple curricula that get combined together to form a multiple-major curriculum.
  • If a course is on several curricula, the highest percent share (of the particular
    classification) will be used.
  • These shares can be overridden on the multiple-major curriculum, but no courses can be deleted
    (course projection must be set to zero instead).
  • The parent (single or no major curricula) can have zero requested students, only acting as
    templates for the multiple-major curricula.
  • If there is no multiple-major curriculum, everything works like before.

Reservations

  • Remember last sort in the reservation cookie.
  • Added Previous / Next buttons (Edit Reservation).
  • Added confirmation message when deleting a reservation (Edit Reservation).

Rooms

Overview

  • The room pages have been completely rewritten using the Google Web Toolkit.
  • The new pages are localizable, they are using the same Room Filter as is used in the event
    management, and they are allowing a change to propagate over to the future academic sessions as
    well.
  • It is also possible for users that are not managers in UniTime (e.g., instructors) and/or that
    have no relation to a particular department (e.g., students) to be allowed to use the new rooms
    pages.
  • When accessed from the Events menu, the Rooms, Room Groups and Room Features pages contain the
    selection of an academic session, just like the Events page.
  • It is possible to use the old pages by setting the application property unitime.legacy.rooms to
    true (defaults to false).

Rooms

  • The Rooms page now contains a Room Filter and a table with many features.
  • The table of rooms can be sorted by a given column, can show pretty much any room property, and
    it can be exported to PDF or CSV.

Add/Edit Room

  • Add Room and Edit Room page now contains all the functionality of the various edit pages that
    were accessible from the Room Detail page.
  • Moreover, it is now possible to make the update the room in the (selected) future academic
    sessions as well.
  • Only selected groups of properties can be updated in a particular future session.

Edit Room Departments

  • The page can be used to assign multiple rooms to a particular department or examination
    problem).
  • The page is only accessible when a department or an examination problem is selected in the Room
    Filter.
  • The page is now using the same table of rooms as the Rooms page and it is populated by all the
    rooms matching the Room Filter (except of the selected department / examination problem).
  • Rooms not matching the Room Filter are left unchanged.

Room Groups / Features

  • The Room Groups and Room Features pages also use the Room Filter to list rooms (and matching
    room features and groups).
  • The Add and Edit pages are also using the same table as on the Rooms page with the list of rooms
    populated by all the rooms matching the Room Filter.
  • Rooms not matching the Room Filter are left unchanged.
  • When creating / updated a room group or feature, it is possible to select one or more future
    academic sessions that would be updated as well.
    • Besides of the properties of the group (or feature) like name, abbreviation department, etc.,
      only rooms with a change are updated.
    • This means that the future group (or feature) is NOT reset to the rooms that are currently
      selected on the group (or feature).

Examination Timeta...

Read more

UniTime 4.1 build 99 (Alpha 3)

30 Oct 18:19
Compare
Choose a tag to compare
Pre-release

Changes from UniTime 4.1.94, Alpha 2

Scripts: Scripts in progress

  • Scripts in progress table: allow word wrapping in the table (rather than making the page way too wide, e.g., when status lists an exception)

Batch Student Scheduling: Student Filter

  • added ability to filter what student will get loaded into the batch student scheduling solver using a boolean query (solver parameter Load.StudentQuery)

API: Error Handling

  • added ability to return the exception in a JSON format (instead of the default tomcat's error page)

iCalendar Exports

  • ensure that the exported dates are in the local timezone
  • this fixes the issue with daylight savings that was introduced in commit 592152d

API: Room Pictures

  • added ability to retrieve, upload, and delete room pictures
  • retrieve: GET UniTime/api/rooms?pictureId=
  • upload: PUT UniTime/api/rooms?term=&room= (with the file as payload)
  • delete: DELETE UniTime/api/rooms?pictureId=

Application Properties: Temp Files

  • always use US locale for the temp file time stamps (this is to avoid potential issues with accented characters in file names)

API: Rooms

  • added ability to create, update and delete rooms
  • create or update: POST UniTime/api/rooms (with a file in the RoomDetailInterface format as payload)
  • delete: DELETE UniTime/api/rooms?roomId= or DELETE UniTime/api/rooms?term=&room=

Online Student Scheduling: check for new servers

  • do not fail the thread that is periodically checking for new online student scheduling servers to start when the first execution is done at a time when Hibernate is not yet configured (a very rare possibility)

Full Release Notes

Course Timetabling

Class Duration Types

  • Added ability to define different ways how class duration is entered and used in the system (to
    extend the formal Minutes per Week selection).
  • There is a new page (Administration > Other > Class Duration Types), where the class duration
    types can be managed.
    • Permission ClassDurationTypes is needed to access the page, ClassDurationTypeEdit is needed to
      make changes.
  • Default duration type can be defined on an academic session, it can be overridden on the
    instructional offering configuration level (Instructional Offering Configuration page).
    • Name of the default duration type is used in the column headers (Classes, Instructional
      Offerings), abbreviation is used to suffix durations that are using a non-default duration
      type.
  • Following class duration types have been implemented:
    • Minutes per Week (default): this is the existing behaviour (minutes per week == number of
      meetings x minutes per meeting)
    • Average Weekly Mintes: average number of minutes a class takes during a week (weekly minutes =
      number of meetings x minutes per meeting x number of weeks of the data pattern / number of
      weeks in the term)
      • Paramter: number of weeks in the term (defaults to the number of weeks of the default date
        pattern)
    • Semester Minutes: number of minutes in the semester (semester minutes == number of meetings x
      minutes per meeting x number of weeks of the data pattern)
    • Semester Hours: number of hours in the semester (semester hours == number of meetings x
      minutes per meeting x number of weeks of the data pattern / minutes in an hour)
      • Paramter: number of minutes in an hour (defaults to 50)
    • Meetings Minutes: number of minutes of all the meetings, excluding vacations (meeting minutes
      == number of meetings based on the date pattern x minutes per meeting)
      • Parameters: allowed variation of the meeting minutes, expressed as lower and upper bound
        (defaults to 0.95,1.10 -- meaning a class can have 5% less time, combinations with 10% more
        time will be also considered).
      • If the number of meetings based on the date pattern exceeds the desired number of meeting
        minutes, only meetings covering the given number of meeting minutes are created.
    • Meeting Hours: just like meeting minutes, but with hours (semester hours == number of meetings
      based on the date pattern x minutes per meeting / minutes in an hour)
      • Paramters: number of minutes in an hour and the allowed variation of the meeting minutes
        (defaults to 50,0.95,1.10 -- 50 minutes in an hour, 5% less time allowed, combinations with
        up to 10% excess time are considered).
  • It is possible to hide class duration types that are not to be used by the users.
    • If only one type is visible, there is no selection of the class duration type on the
      Instructional Offering Configuration page.

Cancelled Classes

  • Added ability to cancel a class.
  • Multiple Class Setup page: class with enrolments cannot be deleted, but it could be cancelled
    instead.
  • Cancelled classes retain their committed assignment, but the appropriate class event is
    cancelled.
  • Cancelled classes are not loaded into the course timetabling solver.
  • Cancelled classes cannot be edited or re-assigned and they do not block the room or instructor.
  • When a cancelled classes is reopened, the appropriate event is also re-approved.
    • This could cause conflicts, that have to be manually resolved.
  • In student scheduling, cancelled classes are avoided (no valid enrollment can contain
    a cancelled class).
  • In online student scheduling, it is possible to keep existing students in cancelled classes when
    solver configuration parameter named Enrollment.CanKeepCancelledClass is set to true (defaults
    to false).
  • New permissions:
    • Class Delete: ability to delete a class (class cannot be deleted when there is a committed
      solution and at least one student enrolled in the class)
    • Class Delete No Enrollment Check: this permission overrides the enrollment check from the
      Class Delete permission (not given to any role by default)
    • Class Cancel: ability to cancel a class (there must be a committed solution)
    • The Class Delete and Class Cancel permissions are by default given to all roles that have
      Multiple Class Setup Class and / or Class Edit permissions.
  • Added a new permission (named Class Delete No Enrollment Check) that overrides the enrollment
    check from the Class Delete permission.
    • No role is given this permission by default.
  • Make Not-Offered: It is allowed to make an offering not-offered only when there are no students
    enrolled, there is no committed solution, or the user has the Class Delete No Enrollment Check
    permission.
  • Cross Lists: it is allowed to remove a cross-listed course from an offering only when there are
    no students enrolled, there is no committed solution, or the user has the Class Delete No
    Enrollment Check permission.

Conficting Classes

  • Class Detail: Display conflicting classes.
    • There is a new table called Conflicting Classes, just below the Timetable section.
    • The table is only visible when the class is conflicting with some other class (or classes).
    • The same checking as on the Class Assignment page is used.
  • Instructional Offering Detail: Highlight conflicting classes with light red background.
    • Conflicting classes are listed in the tooltip (more details are provided on the Class Detail
      page, see above).
  • Conflict checking: avoid showing conflicts between classes that can overlap because of the Can
    Share Room or the Meet Together distribution.

Instructional Methods

  • Added instructional methods lookup table. Each method has a reference and a label.
  • Example instructional methods: Online, Hybrid, or Face-to-Face.
  • Instructional offering configuration can have an instructional method set.
  • If set, instructional method appear on various pages, including the Scheduling Assistant and
    Events.
  • It is usually included in the Type column, next to the instructional type, e.g., Lecture
    (Online).

Multiple-Major Curricula

  • A curriculum has a new property named multiple majors (boolean, default to false).
  • If a curriculum is marked as multiple-major: a student meets the curriculum only when he/she has
    all the selected majors (not one of the selected).
  • A multiple-major curriculum will inherit course projections from curricula that have no or one
    of the matching majors.
  • There can be multiple curricula that get combined together to form a multiple-major curriculum.
  • If a course is on several curricula, the highest percent share (of the particular
    classification) will be used.
  • These shares can be overridden on the multiple-major curriculum, but no courses can be deleted
    (course projection must be set to zero instead).
  • The parent (single or no major curricula) can have zero requested students, only acting as
    templates for the multiple-major curricula.
  • If there is no multiple-major curriculum, everything works like before.

Reservations

  • Remember last sort in the reservation cookie.
  • Added Previous / Next buttons (Edit Reservation).
  • Added confirmation message when deleting a reservation (Edit Reservation).

Rooms

Overview

  • The room pages have been completely rewritten using the Google Web Toolkit.
  • The new pages are localizable, they are using the same Room Filter as is used in the event
    management, and they are allowing a change to propagate over to the future academic sessions as
    well.
  • It is also possible for users that are not managers in UniTime (e.g., instructors) and/or that
    have no relation to a particular department (e.g., students) to be allowed to use the new rooms
    pages.
  • When accessed from the Events menu, the Rooms, Room Groups and Room Features pages contain the
    selection of an academic session, just like the Events page.
  • It is possible to use the old pages by setting the application property unitime.legacy.rooms to
    true (defaults to false).

Rooms

  • The Rooms page now contains a Room Filter and a table with many features.
  • The table of rooms can be sorted by a given colum...
Read more

UniTime 4.1 build 94 (Alpha 2)

23 Oct 06:39
Compare
Choose a tag to compare
Pre-release

Changes from UniTime 4.1.92, Alpha 1

Data Exchange: Course Offering Import / Export

  • added ability to export and import cancelled classes
  • if a class does not have an external id, fall back to the class label (e.g., ALG 101 Lec 1)
  • added ability to import examinations together with the courses (including period and room assignments)

Course Timetabling: Student Course Demands

  • fixed a bug that is causing all student course demands that are using made up students to squish all the course demands under a single student
    • this was caused by the generated student id not being properly set on the WeightedStudentId class
    • the bug was introduced recently, by commit bf612af

API: Online Student Scheduling

  • added online student scheduling JSON API
    • pretty much all the calls in the org.unitime.timetable.gwt.services.SectioningService are covered,
      except of those related to HTTP session attributes (e.g., last request / schedule)
    • the SectioningService is used by the Online Student Scheduling Assistant and the Online Student Scheduling Dashboard pages

Full Release Notes

Course Timetabling

Class Duration Types

  • Added ability to define different ways how class duration is entered and used in the system (to
    extend the formal Minutes per Week selection).
  • There is a new page (Administration > Other > Class Duration Types), where the class duration
    types can be managed.
    • Permission ClassDurationTypes is needed to access the page, ClassDurationTypeEdit is needed to
      make changes.
  • Default duration type can be defined on an academic session, it can be overridden on the
    instructional offering configuration level (Instructional Offering Configuration page).
    • Name of the default duration type is used in the column headers (Classes, Instructional
      Offerings), abbreviation is used to suffix durations that are using a non-default duration
      type.
  • Following class duration types have been implemented:
    • Minutes per Week (default): this is the existing behaviour (minutes per week == number of
      meetings x minutes per meeting)
    • Average Weekly Mintes: average number of minutes a class takes during a week (weekly minutes =
      number of meetings x minutes per meeting x number of weeks of the data pattern / number of
      weeks in the term)
      • Paramter: number of weeks in the term (defaults to the number of weeks of the default date
        pattern)
    • Semester Minutes: number of minutes in the semester (semester minutes == number of meetings x
      minutes per meeting x number of weeks of the data pattern)
    • Semester Hours: number of hours in the semester (semester hours == number of meetings x
      minutes per meeting x number of weeks of the data pattern / minutes in an hour)
      • Paramter: number of minutes in an hour (defaults to 50)
    • Meetings Minutes: number of minutes of all the meetings, excluding vacations (meeting minutes
      == number of meetings based on the date pattern x minutes per meeting)
      • Parameters: allowed variation of the meeting minutes, expressed as lower and upper bound
        (defaults to 0.95,1.10 -- meaning a class can have 5% less time, combinations with 10% more
        time will be also considered).
      • If the number of meetings based on the date pattern exceeds the desired number of meeting
        minutes, only meetings covering the given number of meeting minutes are created.
    • Meeting Hours: just like meeting minutes, but with hours (semester hours == number of meetings
      based on the date pattern x minutes per meeting / minutes in an hour)
      • Paramters: number of minutes in an hour and the allowed variation of the meeting minutes
        (defaults to 50,0.95,1.10 -- 50 minutes in an hour, 5% less time allowed, combinations with
        up to 10% excess time are considered).
  • It is possible to hide class duration types that are not to be used by the users.
    • If only one type is visible, there is no selection of the class duration type on the
      Instructional Offering Configuration page.

Cancelled Classes

  • Added ability to cancel a class.
  • Multiple Class Setup page: class with enrolments cannot be deleted, but it could be cancelled
    instead.
  • Cancelled classes retain their committed assignment, but the appropriate class event is
    cancelled.
  • Cancelled classes are not loaded into the course timetabling solver.
  • Cancelled classes cannot be edited or re-assigned and they do not block the room or instructor.
  • When a cancelled classes is reopened, the appropriate event is also re-approved.
    • This could cause conflicts, that have to be manually resolved.
  • In student scheduling, cancelled classes are avoided (no valid enrollment can contain
    a cancelled class).
  • In online student scheduling, it is possible to keep existing students in cancelled classes when
    solver configuration parameter named Enrollment.CanKeepCancelledClass is set to true (defaults
    to false).
  • New permissions:
    • Class Delete: ability to delete a class (class cannot be deleted when there is a committed
      solution and at least one student enrolled in the class)
    • Class Delete No Enrollment Check: this permission overrides the enrollment check from the
      Class Delete permission (not given to any role by default)
    • Class Cancel: ability to cancel a class (there must be a committed solution)
    • The Class Delete and Class Cancel permissions are by default given to all roles that have
      Multiple Class Setup Class and / or Class Edit permissions.
  • Added a new permission (named Class Delete No Enrollment Check) that overrides the enrollment
    check from the Class Delete permission.
    • No role is given this permission by default.
  • Make Not-Offered: It is allowed to make an offering not-offered only when there are no students
    enrolled, there is no committed solution, or the user has the Class Delete No Enrollment Check
    permission.
  • Cross Lists: it is allowed to remove a cross-listed course from an offering only when there are
    no students enrolled, there is no committed solution, or the user has the Class Delete No
    Enrollment Check permission.

Conficting Classes

  • Class Detail: Display conflicting classes.
    • There is a new table called Conflicting Classes, just below the Timetable section.
    • The table is only visible when the class is conflicting with some other class (or classes).
    • The same checking as on the Class Assignment page is used.
  • Instructional Offering Detail: Highlight conflicting classes with light red background.
    • Conflicting classes are listed in the tooltip (more details are provided on the Class Detail
      page, see above).
  • Conflict checking: avoid showing conflicts between classes that can overlap because of the Can
    Share Room or the Meet Together distribution.

Instructional Methods

  • Added instructional methods lookup table. Each method has a reference and a label.
  • Example instructional methods: Online, Hybrid, or Face-to-Face.
  • Instructional offering configuration can have an instructional method set.
  • If set, instructional method appear on various pages, including the Scheduling Assistant and
    Events.
  • It is usually included in the Type column, next to the instructional type, e.g., Lecture
    (Online).

Multiple-Major Curricula

  • A curriculum has a new property named multiple majors (boolean, default to false).
  • If a curriculum is marked as multiple-major: a student meets the curriculum only when he/she has
    all the selected majors (not one of the selected).
  • A multiple-major curriculum will inherit course projections from curricula that have no or one
    of the matching majors.
  • There can be multiple curricula that get combined together to form a multiple-major curriculum.
  • If a course is on several curricula, the highest percent share (of the particular
    classification) will be used.
  • These shares can be overridden on the multiple-major curriculum, but no courses can be deleted
    (course projection must be set to zero instead).
  • The parent (single or no major curricula) can have zero requested students, only acting as
    templates for the multiple-major curricula.
  • If there is no multiple-major curriculum, everything works like before.

Reservations

  • Remember last sort in the reservation cookie.
  • Added Previous / Next buttons (Edit Reservation).
  • Added confirmation message when deleting a reservation (Edit Reservation).

Rooms

Overview

  • The room pages have been completely rewritten using the Google Web Toolkit.
  • The new pages are localizable, they are using the same Room Filter as is used in the event
    management, and they are allowing a change to propagate over to the future academic sessions as
    well.
  • It is also possible for users that are not managers in UniTime (e.g., instructors) and/or that
    have no relation to a particular department (e.g., students) to be allowed to use the new rooms
    pages.
  • When accessed from the Events menu, the Rooms, Room Groups and Room Features pages contain the
    selection of an academic session, just like the Events page.
  • It is possible to use the old pages by setting the application property unitime.legacy.rooms to
    true (defaults to false).

Rooms

  • The Rooms page now contains a Room Filter and a table with many features.
  • The table of rooms can be sorted by a given column, can show pretty much any room property, and
    it can be exported to PDF or CSV.

Add/Edit Room

  • Add Room and Edit Room page now contains all the functionality of the various edit pages that
    were accessible from the Room Detail page.
  • Moreover, it is now possible to make the update the room in the (selected) future academic
    sessions as well.
  • Only selected groups of properties can be updated in a particular future session.

Edit Room Departments

  • The page can be used to assign multiple rooms to a particular department or examination
    problem).
  • The page is only accessible when a departm...
Read more

UniTime 4.1 build 92 (Alpha 1)

21 Oct 11:38
Compare
Choose a tag to compare
Pre-release

Course Timetabling

Class Duration Types

  • Added ability to define different ways how class duration is entered and used in the system (to
    extend the formal Minutes per Week selection).
  • There is a new page (Administration > Other > Class Duration Types), where the class duration
    types can be managed.
    • Permission ClassDurationTypes is needed to access the page, ClassDurationTypeEdit is needed to
      make changes.
  • Default duration type can be defined on an academic session, it can be overridden on the
    instructional offering configuration level (Instructional Offering Configuration page).
    • Name of the default duration type is used in the column headers (Classes, Instructional
      Offerings), abbreviation is used to suffix durations that are using a non-default duration
      type.
  • Following class duration types have been implemented:
    • Minutes per Week (default): this is the existing behaviour (minutes per week == number of
      meetings x minutes per meeting)
    • Average Weekly Mintes: average number of minutes a class takes during a week (weekly minutes =
      number of meetings x minutes per meeting x number of weeks of the data pattern / number of
      weeks in the term)
      • Paramter: number of weeks in the term (defaults to the number of weeks of the default date
        pattern)
    • Semester Minutes: number of minutes in the semester (semester minutes == number of meetings x
      minutes per meeting x number of weeks of the data pattern)
    • Semester Hours: number of hours in the semester (semester hours == number of meetings x
      minutes per meeting x number of weeks of the data pattern / minutes in an hour)
      • Paramter: number of minutes in an hour (defaults to 50)
    • Meetings Minutes: number of minutes of all the meetings, excluding vacations (meeting minutes
      == number of meetings based on the date pattern x minutes per meeting)
      • Parameters: allowed variation of the meeting minutes, expressed as lower and upper bound
        (defaults to 0.95,1.10 -- meaning a class can have 5% less time, combinations with 10% more
        time will be also considered).
      • If the number of meetings based on the date pattern exceeds the desired number of meeting
        minutes, only meetings covering the given number of meeting minutes are created.
    • Meeting Hours: just like meeting minutes, but with hours (semester hours == number of meetings
      based on the date pattern x minutes per meeting / minutes in an hour)
      • Paramters: number of minutes in an hour and the allowed variation of the meeting minutes
        (defaults to 50,0.95,1.10 -- 50 minutes in an hour, 5% less time allowed, combinations with
        up to 10% excess time are considered).
  • It is possible to hide class duration types that are not to be used by the users.
    • If only one type is visible, there is no selection of the class duration type on the
      Instructional Offering Configuration page.

Cancelled Classes

  • Added ability to cancel a class.
  • Multiple Class Setup page: class with enrolments cannot be deleted, but it could be cancelled
    instead.
  • Cancelled classes retain their committed assignment, but the appropriate class event is
    cancelled.
  • Cancelled classes are not loaded into the course timetabling solver.
  • Cancelled classes cannot be edited or re-assigned and they do not block the room or instructor.
  • When a cancelled classes is reopened, the appropriate event is also re-approved.
    • This could cause conflicts, that have to be manually resolved.
  • In student scheduling, cancelled classes are avoided (no valid enrollment can contain
    a cancelled class).
  • In online student scheduling, it is possible to keep existing students in cancelled classes when
    solver configuration parameter named Enrollment.CanKeepCancelledClass is set to true (defaults
    to false).
  • New permissions:
    • Class Delete: ability to delete a class (class cannot be deleted when there is a committed
      solution and at least one student enrolled in the class)
    • Class Delete No Enrollment Check: this permission overrides the enrollment check from the
      Class Delete permission (not given to any role by default)
    • Class Cancel: ability to cancel a class (there must be a committed solution)
    • The Class Delete and Class Cancel permissions are by default given to all roles that have
      Multiple Class Setup Class and / or Class Edit permissions.
  • Added a new permission (named Class Delete No Enrollment Check) that overrides the enrollment
    check from the Class Delete permission.
    • No role is given this permission by default.
  • Make Not-Offered: It is allowed to make an offering not-offered only when there are no students
    enrolled, there is no committed solution, or the user has the Class Delete No Enrollment Check
    permission.
  • Cross Lists: it is allowed to remove a cross-listed course from an offering only when there are
    no students enrolled, there is no committed solution, or the user has the Class Delete No
    Enrollment Check permission.

Conficting Classes

  • Class Detail: Display conflicting classes.
    • There is a new table called Conflicting Classes, just below the Timetable section.
    • The table is only visible when the class is conflicting with some other class (or classes).
    • The same checking as on the Class Assignment page is used.
  • Instructional Offering Detail: Highlight conflicting classes with light red background.
    • Conflicting classes are listed in the tooltip (more details are provided on the Class Detail
      page, see above).
  • Conflict checking: avoid showing conflicts between classes that can overlap because of the Can
    Share Room or the Meet Together distribution.

Instructional Methods

  • Added instructional methods lookup table. Each method has a reference and a label.
  • Example instructional methods: Online, Hybrid, or Face-to-Face.
  • Instructional offering configuration can have an instructional method set.
  • If set, instructional method appear on various pages, including the Scheduling Assistant and
    Events.
  • It is usually included in the Type column, next to the instructional type, e.g., Lecture
    (Online).

Multiple-Major Curricula

  • A curriculum has a new property named multiple majors (boolean, default to false).
  • If a curriculum is marked as multiple-major: a student meets the curriculum only when he/she has
    all the selected majors (not one of the selected).
  • A multiple-major curriculum will inherit course projections from curricula that have no or one
    of the matching majors.
  • There can be multiple curricula that get combined together to form a multiple-major curriculum.
  • If a course is on several curricula, the highest percent share (of the particular
    classification) will be used.
  • These shares can be overridden on the multiple-major curriculum, but no courses can be deleted
    (course projection must be set to zero instead).
  • The parent (single or no major curricula) can have zero requested students, only acting as
    templates for the multiple-major curricula.
  • If there is no multiple-major curriculum, everything works like before.

Reservations

  • Remember last sort in the reservation cookie.
  • Added Previous / Next buttons (Edit Reservation).
  • Added confirmation message when deleting a reservation (Edit Reservation).

Rooms

Overview

  • The room pages have been completely rewritten using the Google Web Toolkit.
  • The new pages are localizable, they are using the same Room Filter as is used in the event
    management, and they are allowing a change to propagate over to the future academic sessions as
    well.
  • It is also possible for users that are not managers in UniTime (e.g., instructors) and/or that
    have no relation to a particular department (e.g., students) to be allowed to use the new rooms
    pages.
  • When accessed from the Events menu, the Rooms, Room Groups and Room Features pages contain the
    selection of an academic session, just like the Events page.
  • It is possible to use the old pages by setting the application property unitime.legacy.rooms to
    true (defaults to false).

Rooms

  • The Rooms page now contains a Room Filter and a table with many features.
  • The table of rooms can be sorted by a given column, can show pretty much any room property, and
    it can be exported to PDF or CSV.

Add/Edit Room

  • Add Room and Edit Room page now contains all the functionality of the various edit pages that
    were accessible from the Room Detail page.
  • Moreover, it is now possible to make the update the room in the (selected) future academic
    sessions as well.
  • Only selected groups of properties can be updated in a particular future session.

Edit Room Departments

  • The page can be used to assign multiple rooms to a particular department or examination
    problem).
  • The page is only accessible when a department or an examination problem is selected in the Room
    Filter.
  • The page is now using the same table of rooms as the Rooms page and it is populated by all the
    rooms matching the Room Filter (except of the selected department / examination problem).
  • Rooms not matching the Room Filter are left unchanged.

Room Groups / Features

  • The Room Groups and Room Features pages also use the Room Filter to list rooms (and matching
    room features and groups).
  • The Add and Edit pages are also using the same table as on the Rooms page with the list of rooms
    populated by all the rooms matching the Room Filter.
  • Rooms not matching the Room Filter are left unchanged.
  • When creating / updated a room group or feature, it is possible to select one or more future
    academic sessions that would be updated as well.
    • Besides of the properties of the group (or feature) like name, abbreviation department, etc.,
      only rooms with a change are updated.
    • This means that the future group (or feature) is NOT reset to the rooms that are currently
      selected on the group (or feature).

Examination Timetab...

Read more