REGISTRATION IN THE 21st CENTURY CUMREC May 14, 2002 Kenneth L. Servis University of Southern California
Registration Background n Early computer systems used punch cards (1960’s) and optical scan (1970’s) n IBM introduced Touch-Tone/voice response to CUMREC in 1969 n BYU presented on Touch-Tone telephone registration at CUMREC in 1984
Touch-Tone Limitations n Select by section n Sequential selection n Entire schedule not available n Section availability by trial n Permission by trial n No visualization
Web Based Registration n Option 1: Replicate Touch-Tone – step-by-step one course at a time n Option 2: Incorporate a Schedule Builder – incorporate calendaring – build entire schedule first – register all courses simultaneously – holistic approach
Student Focus Groups n Worked with Student Senate n Groups included: – students – programmers – Web developers n Developed desired feature list
Desired Features n Curriculum information – links to course descriptions and syllabi n Schedule Information – links to schedule of classes – day, time, location, instructor, seats available n Degree information – link to degree audit – courses completed/needed – major/minor requirements
Desired Features n Schedule Builder – include registered courses – working drafts saved – available 24/7 – schedule by course, not section – time blocks honored – display output in calendar format
Conceptual Overview n SIS backend legacy system – on-line 8:30 am-10:00 pm M-F n Front end database server – on-line 24/7 n Web Farm – manages communication between client and server
Web Registration System Architecture Student Information System Pyramid Database Camel Web Application Cluster Microsoft ADO USC Synchronization Protocol
Data Flow n SIS pushes class data to database server – each active term updated at least once an hour n SIS pushes student enrollment data to database server in real-time – individual student data up to the minute
Timing Constraints n Schedule planning can occur 24/7 – planning prior to registration appointment times n Registration changes can only occur 8:30 am - 10 pm M-F – enrollment cannot change outside these hours
Login – https://camel.usc.edu/webreg/Login.asp n System uses SSL security n HTML Web Registration Instructions Flash Web Registration Tutorial
Login n Student enters student ID number n Student enters 6 digit PIN (******) n Display of holds and restrictions – office phone no. and location n Display of registration appointment time
Web Process Overview n Step1: Select courses to schedule n Step 2: Build a schedule with selected courses n Step 3: Register for courses on the schedule
Web Screen Presentation n Top Frame: Displays department list, course list, class list or schedule n Middle Frame: Displays the “Course Bin,” courses selected for scheduling n Bottom Frame: Displays system responses and messages
Build a Schedule n Step-by-step – Click “schedule” by section in course bin – If conflicts occur, course must be removed from course bin and another selected – remove from schedule using “Unschedule”
Build a Schedule n Auto Schedule – With all courses in course bin click “Auto Schedule” – View options – Select desired option, click “Make this my Schedule”
Scheduler Builder n Problem: Take a list of courses with multiple sections, find the conflict-free schedules, return these in a visual format that can be used for registration
Commercial Solutions n Need optimizer software for a tree search n Tried commercial software: OPL language n Performance: 4 min, 300Mb RAM n Revised version: 4 sec n Better but not good enough
Solution Implemented n Limit solution search space n Courses given priority order: A>B>C n All solutions must have A, then B before C if B does not conflict with A, then C if C does not conflict with selected A+B, etc.
Course Groups n Courses may have linked lectures, labs, discussions, and quizzes n Groups are allowed combinations of linked sections n For all courses, form allowed groups n Eliminate groups with time conflicts with time blocks
Build Schedules n Random pick group for course A, then random pick group for course B ( if okay, save), if not okay discard and pick another from group for course B. If okay, random pick group for course C, etc. Return, random pick new, different group for course A n After 100 successful schedules, stop
Tree Search n Random pick course from group A, then search each group for course B in order. For each group for course B, search in order for groups for course C. Then back to next B, etc.
Search Time n Search time Max = 10 sec. n Search Solutions Max = 1000 n All valid solutions may not be found.
Programming tools n Visual basic: VB SCRIPT n Active Server Pages: ASP n Component Object Modules: COM – on server in PYTHON.
Communication Strategies n Information sessions for advisors n Stealth launch, August 2001 with home page quicklink n Notification of availability to students emailed October 2001 n Comprehensive list of Frequently Asked Questions
Communication Strategies (cont.) n December 2002 emailed all users to verify registered course list n Prior to end of drop/add notified those with course in schedule bin but not registered n April 2002, auto confirm all drop/add transactions real time by email
Future Plans n Final Exam schedule n Links to Catalogue Course Description n Link to Student Course Guide n Multiple Term Planner
Acknowledgement Thomas F. Hauck Director of New Technology Student Information Systems University of Southern California (213) 740-1992 firstname.lastname@example.org Francisco Chang System Analyst Office of Academic Records and Registrar University of Southern California (213) 821-5514 email@example.com