Requirements Specification
for a Grader Tool
Version 1.0
18 March 2015


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. Cal Poly PolyLearn

        1.5.2. Blackboard

        1.5.3. Microsoft Excel

        1.5.4. Google Classroom

        1.5.5. LearnBoost

        1.5.6. Instructure Canvas

        1.5.7. Feature Comparison Matrix



2. Functional Requirements

    2.1 User Interface Overview

        2.1.1 Instructor

        2.1.2 TA And Student View

    2.2 Basic Gradebook Set Up

        2.2.1 Creating New Class Spreadsheet

        2.2.2 Adding A New Category

        2.2.3 Modifying A Category

        2.2.4 Deleting A Category

        2.2.5 Grading Schemes

        2.2.6 Late Policy

    2.3 Managing Students (including sync with registrar's office)

        2.3.1 Mid-Term Roster Synchronization

        2.3.2 Adding Students Manually

        2.3.3 Modifying Students

        2.3.4 Deleting Students

        2.3.5 Export Student Roster To A File

    2.4 Managing Graded Items

        2.4.1 Adding A New Assignment

        2.4.2 Modifying An Assignment

        2.4.3 Deleting An Assignment

        2.4.4 Entering Scores

    2.5 Details of Gradebook Usage

        2.5.1 Item Explorer (an "Explorer-style" view of the item hierarchy)

        2.5.2 Statistics

        2.5.3 Expand/Collapse

        2.5.4 Sorting

        2.5.5 Filtering (this shows/hides columns)

    2.6 Graphs

        2.6.1 Histogram

        2.6.2 Pie Chart

        2.6.3 Adjusting Grade Curve

    2.7 Student Functions

        2.7.1 Accessing Gradebooks

        2.7.2 Predicting Grades

        2.7.3 Electronic Turn In

    2.8 Administrative Details

        2.8.1 Server Set Up

        2.8.2 Authentication (aka, logging in)

        2.8.3 Posting and Retrieving Gradebooks

        2.8.4 Submitting Grades to School's Registrar

    2.9 Details of File, Edit, and Error

        2.9.1 File

        2.9.2 Edit

        2.9.3 Error



3. Non Functional Requirements

    3.1 Performance

    3.2 Qualitative System Characteristics

        3.2.1 Security and Privacy

        3.2.2 Simplicity Versus Power



4. Developer Overview



5. Formal Specification



Appendix A