Requirements Specification
for an Electronic Class Scheduler
Fall Quarter 2014

Contents

1. Introduction
     1.1. Problem Statement
     1.2. System Personnel
     1.3. Operational Setting
     1.4. Impacts
     1.5. Related Systems
         1.5.1. Lantiv Scheduling Studio
         1.5.2. Mimosa Scheduling Software
         1.5.3. CyberMatrix
         1.5.4. myEdu
         1.5.5. Room Booking System
         1.5.6. Cal Poly Schedules
         1.5.7. Feature Comparison Matrix

2. Functional Requirements
     2.1. User Interface Overview
         2.1.1. Scheduling Administrator
         2.1.2. Instructor
             2.1.2.1. Manage Preferences
         2.1.3. Student
             2.1.3.1. Send Feedback
     2.2. Create New Schedule
         2.2.1. From Previous Schedule
         2.2.2. From Resources
     2.3. Resource Management
         2.3.1. Rooms
             2.3.1.1. Add Room
             2.3.1.2. Manage Room
             2.3.1.3. Remove Room
         2.3.2. Courses
             2.3.2.1. Add Course
             2.3.2.2. Manage Course
             2.3.2.3. Remove Course
         2.3.3. Instructors
             2.3.3.1. Add Instructor
             2.3.3.2. Manage Instructor
             2.3.3.3. Remove Instructor
     2.4. Overall Schedule Preferences
         2.4.1. Phases
         2.4.2. Class Patterns
         2.4.3. Unavailable Time Slots
         2.4.4. Max WTU
         2.4.5. Course Overlap
         2.4.6. Lecture/Lab Proximity
         2.4.7. Adjacent Course Distance Proximity
     2.5. Manage Existing Schedules
         2.5.1. Select Schedule to View/Edit
         2.5.2. Remove a Schedule
         2.5.3. Tabular View
         2.5.4. Calendar View
         2.5.5. Viewing Schedule Attributes
         2.5.6. Manual Editing
         2.5.7. Conflict Resolution
     2.6. View Schedules
         2.6.1. Scheduling Administrator
             2.6.1.1. Tabular View
             2.6.1.2. Calendar View
         2.6.2. Instructor/Student
             2.6.2.1. Tabular View
             2.6.2.2. Calendar View
     2.7. Details of File/Edit
         2.7.1. File
         2.7.2. Edit
         2.7.3. Publishing
     2.8. Errors

3. Non-Functional Requirements
     3.1. System Performance
     3.2. Qualitative System Characteristics

4. Summary