Detailed Design

 

Requested By:       Dr. Scott Hunter

                             Assistant Professor of Computer Science

                             Computer Science Department of Siena College

 

                            

                             Ms. Jami Cotler

                             Instructor/Lecturer of Computer Science

                             Computer Science Department of Siena College

 

 

                             Dr. Tim Lederman

                             Professor of Computer Science

                             Computer Science Department of Siena College

 

 

 

Automated Excel Grading System

 

Oasis Technologies

 

 

Prepared By:

Brian Salmon

Jim Dzembo

Vincent Leone

Chris Mahar

Josh Yerkie

 

 

                                                         

 


 

Automated Excel Grading System

 

Detailed Design. 1

I. Product Overview and Summary. 1

II. User Displays, Report Formats, and User Command Summaries. 2

Login/ Miscellaneous Views. 2

Login View: 2

Register View: 2

Register View: 3

Forgot Password View: 4

Invalid Login View: 5

Student Views. 6

Student Homepage: 6

Student View Labs: 7

Student Upload Labs: 8

Student View Pre-Labs: 9

Student Upload Pre-Lab: 10

Lab Instructor Views. 11

Lab Instructor Homepage: 11

Lab Instructor View Labs: 12

Lab Instructor View Errors: 13

Lecture Instructor Views. 14

Lecture Instructor Homepage: 14

Lecture Instructor View Labs: 15

Course Administrator Views. 16

Course Administrator Homepage: 16

Course Administrator View Labs: 17

Course Administrator View All Students: 18

Course Administrator Edit Student: 19

Course Administrator View All Instructors: 19

Course Administrator View All Instructors: 20

Course Administrator Edit Instructor: 21

Course Administrator Create Instructor Page: 22

Course Administrator Upload Lab Keys: 23

Course Administrator Set Lab/Lecture Sections: 24

Course Administrator Edit Lab/Lecture Section: 25

Course Administrator View Admin Account: 26

Course Administrator Change Admin Password: 27

Course Administrator Change Admin: 28

III. Detailed Data Flow Diagrams. 29

Level 0: Context Diagram.. 29

Level 1: 30

Level 2: 32

IV. Logical Data Dictionary. 38

Level 0: Context Diagram.. 38

Level 1: 40

Level 2: 52


V. Logical Data Stores. 64

VI. Logical Format of Data Files and Databases. 67

VII. Structure Diagrams. 68

VIII. Test Plan. 71

IX. Subprogram Interface Specifications. 71

X. Documentation Prologue for Each Routine. 71

XI. Pseudo Code For Each Routine. 73

XII. Physical Data Structures and Data File Specifications. 75

Personal Info. 75

Sections. 76

Submissions. 76

Errors. 76

Key Files. 77

Relationship Diagram. 77

XIII. Packaging Specifications. 78

Appendices. 79

I. Sources of Information. 79

II. Gantt Chart 79

III. Glossary of Terms. 79

 


Detailed Design

I. Product Overview and Summary

Siena College offers two courses in the Computer Science Department that utilize Microsoft Excel. These courses have a required lab where the students create spreadsheets, which then need to be graded by the lab instructor. There is also a pre-lab associated with each lab that the students are required to complete.  There are a large number of students that take these courses thus creating a large amount of excel spreadsheets that requiring grading by the lab instructors. As a result of the high quantity of spreadsheets that need grading we have been tasked, by Dr. Scott Hunter and Ms Jami Cotler, with creating a system to grade these labs and pre-labs automatically and report back to the students and instructors the results. The students will have the ability to log in to a web based system and submit these labs and pre-labs and view their grades


II. User Displays, Report Formats, and User Command Summaries

**Note: All screens can be accessed as HTML pages by going to the following url:

http://oraserv.cs.siena.edu/~perm_oasis/prototype/NewPrototype

 

Login/ Miscellaneous Views

Login View:

This is a view that all users will see when first loading the website.  It is where all users will enter their username and password.  If student's have not already set up their account, they can click on the "Register Here" link which will take them to the Register View.  They can also recover their password from here if they forgot it.


Register View:

This is the view students will see when attempting to create an account.  They will fill in their Name, Password twice for verification, Lecture Section, Lab Section, and E-Mail Address and then click on a "Register" button to finish their registration.

 

 


Forgot Password View:

This screen is where you fill out you’re: name, username, and e-mail address. Then an email will be sent to the user with their password.

 

 

 


Invalid Login View:

This screen is displayed when you enter an invalid username or password.

 

 

 

 


Student Views

Student Homepage:

This is a view of what the students will see when they log into the system. There are two buttons they can click. One will bring them to their pre-labs home page and the other to their labs home page.

 


Student View Labs:

This screen is where the student views their lab grades. If they click the “View Errors” button, it will allow them to download their submitted lab with comments in cells where errors were made.  It will display all lab files associated with each lab and the corresponding grades.  It will also display a button to upload new labs and a button to view the errors from the lab.


Student Upload Labs:

This screen is where a student can upload their lab files.


Student View Pre-Labs:

This screen is where the student views their pre-labs. It will display all pre-lab files associated with each lab and the corresponding grades.  It will also display a button to upload new pre-labs and a button to view the errors from the lab.

 


Student Upload Pre-Lab:

This screen is where the students can upload their pre-lab files.

 

 

 

 

 


Lab Instructor Views

Lab Instructor Homepage:

This is the area where Lab Instructors will be able to decide which grades they want to view.  They will first select which students they want to see: either a single lab section or all of their lab sections.  Then they will select if they want to view all labs or a specific lab.


 

Lab Instructor View Labs:

This is where the grades selected in Lab Instructor View 1 are displayed.  This is where Lab Instructors can choose to view the graded files, approve the grades and also change the grade if necessary. If the “View Errors” button is clicked, the Lab Instructor View Errors page loads.  If the “View Lab” button is clicked, the submitted lab can be downloaded.

 


Lab Instructor View Errors:

This is the error report that the lab instructor sees. It has everything that was marked incorrect from the excel file including the error that the student receives and the points received and possible for each error made.  Lab Instructors can edit the error message the student see’s and also change the points earned for each file submitted.

 

 


Lecture Instructor Views

Lecture Instructor Homepage:

This is the area where Lecture Instructors will be able to decide what they want to view.  They will first select which students they want to see: either a single lecture section or all of their lecture sections.  Then they will select if they want to view all labs or a specific lab.

 


Lecture Instructor View Labs:

This is where the selected lab grades are displayed. The lecture instructor can view the submitted lab in excel and can also view the error report to the corresponding lab on an HTML page.

 


Course Administrator Views

Course Administrator Homepage:

This is the area where the Course Administrator will be able to decide what they want to view.  They will first select which students they want to see: a single lab section, a single lecture session, or all students.  Then they will select if they want to view all labs or a specific lab.  Also from here, Course Administrators can navigate to the various other screens where other features are implemented.


Course Administrator View Labs:

This is where selected lab grades are displayed and the final grades are displayed and may be changed if necessary.  If the “View Errors” button is clicked, the Lab Instructor View Errors page loads.  If the “View Lab” button is clicked, the submitted lab can be downloaded.

 

 


Course Administrator View All Students:

This screen is where the Course Administrator can view all Students in the system.  The Students name, Lab Section, and Lecture Section.  If the “Edit” button is clicked, the “Course Administrator Edit Student” page loads for the selected student.  If the “Delete” button is clicked, the selected student is removed from the system.  If the “Delete All Students” button is clicked, all students are removed from the system.


Course Administrator Edit Student:

When the Course Administrator chooses view all students then clicks the edit button, this screen will show everything stored on this particular students account in separate fields.  The Course Administrator will be able to change any of these fields.  These fields include Name, Username, Password, Lecture Section, Lab Section, and E-Mail Address.


Course Administrator View All Instructors:

This screen is where Course Administrators are able to view all of the instructors. This screen displays the Instructors name and the type of Instructor they are (Lab or Lecture).  If the “Edit” button is clicked, the “Course Administrator Edit Instructor” page loads.  If the “Delete” button is clicked, the selected Instructor is removed from the system.  If the “Delete All Instructors” button is clicked, all Instructors are removed from the system.

 


Course Administrator Edit Instructor:

This screen allows the Course Administrator to change the instructor’s information.  It displays changeable text boxes containing the selected Instructors Name, Password, and Email address along with a drop down menu for the type of Instructor this Instructor is.

 

 


Course Administrator Create Instructor Page:

This screen is where the Course Administrator can create a new instructor account. Here, Course Administrators enter information about Instructors including Name, Type of Instructor, Password (twice for verification), and E-Mail Address.

 

 


Course Administrator Upload Lab Keys:

This screen is where the Course Administrator can upload Answer Keys and Sample Files for the labs.   They simply fill out the Lab Number field, and then click the “Browse” button for each of the Sample Files and then for the Grading Key and then click “Submit Files”


Course Administrator Set Lab/Lecture Sections:

This screen is where the Course Administrator can view each Section with the Instructor of that Section, the Section Type, and the Semester this Section is being taught.  If the “Edit” button is clicked, the “Course Administrator Edit Lab/Lecture Section” page is loaded.  If the “Delete” button is clicked, the selected Section is removed from the system.

 


Course Administrator Edit Lab/Lecture Section:

This screen is where the Course Administrator can change the information about any Section.  Displayed in text boxes are the selected Sections information including the Instructors Name and E-Mail Address along with the Section Number, Section Type, and the Semester that it is taught.  The Course Administrator can change any of these fields and then click the “Register” button to change the section appropriately.


Course Administrator View Admin Account:

This screen displays the Course Administrators Name and E-Mail Address and has buttons for changing their own password and for setting the Course Administrator account to a different person.  If the “Change Password” button is clicked, the “Course Administrator Change Admin Password” page loads.  If the “Change Administrator” button is clicked, the “Course Administrator Change Admin” page is loaded.

 


Course Administrator Change Admin Password:

This screen is where the Course Administrator can change his or her own password.  They first enter their current password and then enter their new password twice for verification and then click the “Submit Changes” button.


Course Administrator Change Admin:

This screen is where the Course Administrator account can be set to a different person.  The current Course Administrator must fill out the new Course Administrators Name, Password (twice for verification) and their E-Mail Address and then click the “Register” button.  Once they log out, the only way to log on as Course Administrator will be with the new Course Administrators information.

 

III. Detailed Data Flow Diagrams

Level 0: Context Diagram


 

Level 1:

 

 

 

Level 2:

 

 

 

 

 


 

 


IV. Logical Data Dictionary

Level 0: Context Diagram

 

Lab Files Data Flow

            Source: Student

            Destination: Automated Excel Grading System

            Description: Lab files will be submitted to the system.

 

Grade Data Flow

            Source: Automated Excel Grading System

            Destination: Student

            Description: The grades of the lab or pre-labs will be viewed by the student.

 

Corrected Grades Data Flow

            Source: Lab Instructor

            Destination: Automated Excel Grading System

            Description: The lab instructor will send the verified or corrected grades to the               

                                 system.

 

Grades Data Flow

            Source: Automated Excel Grading System

            Destination: Lab Instructor

            Description: The unverified grades will be viewed by the lab instructor.

 

Lab Files Data Flow

            Source: Automated Excel Grading System

            Destination: Lab Instructor

            Description: The lab instructor will be able to view the student’s submitted files.

 

Lab Grades Data Flow

            Source: Automated Excel Grading System

            Destination: Lecture Instructor

            Description: The lecture instructor can view the student’s lab grades.

 

Grading Key Data Flow

            Source: Course Administrator

            Destination: Automated Excel Grading System

            Description: The course administrator will submit the key for grading.

 

Student Info Data Flow

            Source: Automated Excel Grading System

            Destination: Course Administrator

            Description: The course administrator can view each student’s information.

 

Grades Data Flow

            Source: Automated Excel Grading System

            Destination: Course Administrator

            Description: The course administrator can view each student’s grades.

 

Lab Files Data Flow

            Source: Database

            Destination: Automated Excel Grading System

            Description: The system will retrieve each student’s submitted files from the            

                                 database.

 

Lab Files Data Flow

            Source: Automated Excel Grading System

            Destination: Database

            Description: The system will send all the student’s files to the database when

                                 submitted.

 

Student Source/Sink

            Input Flows: Grade

            Output Flows: Lab Files

            Description: Student that is enrolled in a lab section.

 

Lab Instructor Source/Sink

            Input Flows: Grade, Lab Files

            Output Flows: Corrected Grades

            Description: Instructor of one or multiple lab sections.  Must verify/correct all

                                 grades, and can view each student’s submitted files.

 

Lecture Instructor Source/Sink

            Input Flows: Lab Grades

            Description: Instructor of one or multiple lecture sections.  Can view each

                                 student’s grades for labs.

 

Course Administrator Source/Sink

            Input Flows: Student Info, Grades

            Output Flows: Grading Key

            Description: The administrator of the Excel Course.  Can submit the grading key

                                 and view student information and grades.

 

Database Data Store

            Input Flows: Lab Files

            Output Flows: Lab Files

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

 

 

 

 

 

 

 

 

 

 

 

 

Level 1:

Location – Student – Level 1.0

 

Login Info Data Flow

            Source: Student Interface

            Destination: Login

            Description: Username and password for student.

 

Confirmation Data Flow

            Source: Login

            Destination: Student Interface

            Description: Acceptance or rejection of login info.

 

Student Info Data Flow

            Source: Student Interface

            Destination: Register

            Description: Student’s registration information.

 

Confirmation Message Data Flow

            Source: Register

            Destination: Student Interface

            Description: Confirmation sent to the student to confirm registration.

 

Lab Files Data Flow

            Source: Student Interface

            Destination: Upload Files

            Description: Student’s completed lab file.

 

Confirmation Data Flow

            Source: Upload Files

            Destination: Student Interface

            Description: Confirmation that lab file has been submitted successfully.

 

Feedback Request Data Flow

            Source: Student Interface

            Destination: View Feedback

            Description: Request for feedback on the submitted lab files.

 

Feedback Files Data Flow

            Source: View Feedback

            Destination: Student Interface

            Description: Feedback on lab files after grading system completion and lab

                                 instructor verification.

 

Login Info Data Flow

            Source: Login

            Destination: Database

            Description: Username and password for student.


Confirmation Data Flow

            Source: Database

            Destination: Login

            Description: Acceptance or rejection of login info.

 

Student Info Data Flow

            Source: Register

            Destination: Database

            Description: Student’s registration information.

 

Confirmation Message Data Flow

            Source: Database

            Destination: Register

            Description: Confirmation of successful registration.

 

Lab Files Data Flow

            Source: Upload Files

            Destination: Database

            Description: Student’s completed lab file.

 

Confirmation Data Flow

            Source: Database

            Destination: Upload Files

            Description: Confirmation that lab file has been submitted successfully.

 

Feedback Request Data Flow

            Source: View Feedback

            Destination: Database

            Description: Request for feedback on the submitted lab files.

 

Feedback Files Data Flow

            Source: Database

            Destination: View Feedback

            Description: Feedback on lab files after grading system completion and lab

                                 instructor verification.

 

Student Interface Source/Sink

            Input Flows: Confirmation, Confirmation Message, Confirmation, Feedback Files

            Output Flows: Login Info, Student Info, Lab Files, Feedback Request

            Description: Student’s web interface with which they will be able to

                                login, register, upload files, and view feedback.

 

Login Process

            Input Flows: Login Info, Confirmation

            Output Flows: Confirmation, Login Info

            Description: This process will check the login info against the database and

                                 determine whether it is correct or incorrect.

 

Register Process

            Input Flows: Student Info, Confirmation

            Output Flows: Confirmation Message, Student Info

            Description: The student’s will register themselves into the grading system.

 

Upload Files Process

            Input Flows: Lab Files, Confirmation

            Output Flows: Confirmation, Lab Files

            Description: Student’s will upload their completed lab files into the system for

                                 grading.  

 

View Feedback Process

            Input Flows: Feedback Request, Feedback Files

            Output Flows: Feedback Files, Feedback Request

            Description: Displays student’s feedback on submitted lab files.

 

Database Data Store

            Input Flows: Login Info, Student Info, Lab Files, Feedback Request

            Output Flows: Confirmation, Confirmation, Confirmation, Feedback Files

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

Location – Lab Instructor – Level 2.0

Login Info Data Flow

            Source: Lab Instructor Interface

            Destination: Login

            Description: Username and password for lab instructor.

 

Confirmation Data Flow

            Source: Login

            Destination: Lab Instructor Interface

            Description: Acceptance or rejection of login info.

 

Sort Criteria Data Flow

            Source: Lab Instructor Interface

            Destination:  Sort by

            Description: The method which the lab instructor would like to sort students

         by.

 

Sort Results Data Flow

            Source: Sort by

            Destination: Lab Instructor Interface

            Description: The resulting list of students determined by the selected sort criteria.

 

Open Error Report Data Flow

            Source: Lab Instructor Interface

            Destination: Edit Error Report

            Description: Request to open error report generated by the system.

 

Confirmation Data Flow

            Source: Edit Error Report

            Destination: Lab Instructor Interface

            Description: Confirmation that edited error report has been successfully

                                 submitted.

 

Approve Grade Request Data Flow

            Source: Lab Instructor Interface

            Destination: Approve Grades

            Description: Request to approve grades generated by the system.

 

Confirmation Data Flow

            Source: Approve Grades

            Destination: Lab Instructor Interface

            Description: Confirmation that approved grades have been successfully

         submitted.

 

Feedback Request Data Flow

            Source: View Feedback

            Destination: Lab Instructor Interface

            Description: Request to view feedback generated by grading system.

 

Feedback Files Data Flow

            Source: View Feedback

            Destination: Lab Instructor Interface

            Description: Feedback generated by the grading system.

 

Login Info Data Flow

            Source: Login

            Destination: Database

            Description: Username and password for lab instructor.

 

Confirmation Data Flow

            Source: Database

            Destination: Login

            Description: Acceptance or rejection of login info.

 

Sort Criteria Data Flow

            Source: Sort By

            Destination: Database

            Description: The method which the lab instructor would like to sort students

         by.

 

Sort Results Data Flow

            Source: Database

            Destination: Sort By

            Description: The resulting list of students determined by the selected sort criteria.

 

Edited Error Report Data Flow

            Source: Edit Error Report

            Destination: Database

            Description: Error report that has been edited by lab instructor.

 

Confirmation Data Flow

            Source: Database

            Destination: Edit Error Report

            Description: Confirmation that edited error report has been submitted 

                                 successfully.

 

Approved Grades Data Flow

            Source: Approve Grades

            Destination: Database

            Description: Grades that have been approved by Lab Instructor.

 

Confirmation Data Flow

            Source: Database

            Destination: Approve Grades

            Description: Confirmation that approved grades have been submitted

                                 successfully.

 

Feedback Request Data Flow

            Source: View Feedback

            Destination: Database

            Description: Request to view feedback generated by grading system.

 

Feedback Files Data Flow

            Source: View Feedback

            Destination: Database

            Description: Feedback files that have been generated by grading system.

 

Lab Instructor Interface Source/Sink

            Input Flows: Confirmation, Sort Results, Confirmation, Confirmation, Feedback 

                                  Files

            Output Flows: Login Info, Sort Criteria, Open Error Report, Approve Grade

                                    Request, Feedback Request

            Description: Lab instructors web interface with which they will be able to

         login, sort students, edit error reports, approve student grades, and

         view feedback generated by the grading system.

 

Login Process

            Input Flows: Login Info, Confirmation

            Output Flows: Confirmation, Login Info

            Description: This process will check the login info against the database and

                                 determine whether it is correct or incorrect.

 

Sort By Process

            Input Flows: Sort Criteria, Sort Results

            Output Flows: Sort Results, Sort Criteria

            Description: This process will send the sort criteria to the database and take the

                                 resulting student list and send it to the lab instructor interface.

 

Edit Error Report Process

            Input Flows: Open Error Report, Confirmation

            Output Flows: Edited Error Report, Confirmation

            Description: This process is where the lab instructor will be able to edit the error

                                 report generated by the grading system.

 


Approve Grades Process

            Input Flows: Approve Grade Request, Confirmation

            Output Flows: Confirmation, Approved Grades

            Description: This process is where the lab instructor will approve the grades

                                 generated by the grading system.

 

View Feedback Process

            Input Flows: Feedback Request, Feedback Files

            Output Flows: Feedback Files, Feedback Request

            Description: Displays the feedback generated by the grading system to the lab

                                 instructor.

 

Database Data Store

            Input Flows: Login Info, Sort Criteria, Edited Error Report, Approved Grades,

                                 Feedback Request

            Output Flows: Confirmation, Sort Results, Confirmation, Confirmation, Feedback

                                    Files

            Description: Database containing usernames, passwords, submitted lab files,

                                 graded lab files, grading key, and the grading template.

 

Location – Lecture Instructor – Level 3.0

 

Login Info Data Flow

            Source: Lecture Instructor Interface

            Destination: Login

            Description: Username and password for lecture instructor.

 

Confirmation Data Flow

            Source: Login

            Destination: Lecture Instructor Interface

            Description: Acceptance or rejection of login info.

 

Sort Criteria Data Flow

            Source: Lecture Instructor Interface

            Destination:  Sort by

            Description: The method which the lecture instructor would like to sort students

         by.

 

Student List Data Flow

            Source: Sort by

            Destination: Lecture Instructor Interface

            Description: The resulting list of students determined by the selected sort criteria.

 

Grade Request Data Flow

            Source: Lecture Instructor Interface

            Destination: View Feedback

            Description: The request to view student’s grades generated by the system.

 


Grades Data Flow

            Source: View Feedback

            Destination: Lecture Instructor Interface

            Description: The grades generated by the system for viewing by the lecture

         instructor.

 

 

Grade Request Data Flow

            Source: View Feedback

            Destination: Database

            Description: The request to retrieve student’s grades generated by the system.

 

Grades Data Flow

            Source: Database

            Destination: View Feedback

            Description: The grades generated by the system for viewing by the lecture

         instructor.

 

Sort Criteria Data Flow

            Source: Sort by

            Destination: Database

            Description: The method which the lecture instructor would like to sort students

         by.

 

Student List Data Flow

            Source: Database

            Destination: Sort by

            Description: The resulting list of students determined by the selected sort criteria.

 

Login Info Data Flow

            Source: Login

            Destination: Database

            Description: Username and password for lecture instructor.

 

Confirmation Data Flow

            Source: Database

            Destination: Login

            Description: Acceptance or rejection of login info.

 

Lecture Instructor Interface Source/Sink

            Input Flows: Grades, Confirmation, Student List

            Output Flows: Grade Request, Login Info, Sort Criteria

            Description: Lecture instructors web interface with which they will be able to

         login, view student’s grades, and sort students.

 

Login Process

            Input Flows: Login Info, Confirmation

            Output Flows: Confirmation, Login Info

            Description: This process will check the login info against the database and

                                 determine whether it is correct or incorrect.

 


Sort By Process

            Input Flows: Sort Criteria, Student List

            Output Flows: Student List, Sort Criteria

            Description: This process will send the sort criteria to the database and take the

                                 resulting student list and send it to the lecture instructor interface.

 

View Feedback Process

            Input Flows: Grade Request, Grades

            Output Flows: Grades, Grade Request

            Description: This process will get the requested student grades from the database

                                 and send them to the lecture instructor interface.

Database Data Store

            Input Flows: Login Info, Sort Criteria, Grade Request

            Output Flows: Confirmation, Student List, Grades

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

Location – Course Administrator – Level 4.0

 

Login Info Data Flow

            Source: Course Administrator Interface

            Destination: Login

            Description: Username and password for course administrator.

 

Confirmation Data Flow

            Source: Login

            Destination: Course Administrator Interface

            Description: Acceptance or rejection of login info.

 

Sort Criteria Data Flow

            Source: Course Administrator Interface

            Destination:  Sort by

            Description: The method which the course administrator would like to sort 

                                 students by.

 

Sort Results Data Flow

            Source: Sort by

            Destination: Course Administrator Interface

            Description: The resulting list of students determined by the selected sort criteria.

 

Student Info Data Flow

            Source: Course Administrator Interface

            Destination: Edit Student Info

            Description: Student’s edited information.

 

Confirmation Data Flow

            Source: Edit Student Info

            Destination: Course Administrator Interface

            Description: Confirmation that the student’s information has been submitted

                                 successfully.

 


Student Info Data Flow

            Source: Course Administrator Interface

            Destination: Manage Sections

            Description: Student’s edited section information.

 

Confirmation Data Flow

            Source: Manage Sections

            Destination: Course Administrator Interface

            Description: Confirmation that student’s edited section information has been

                                 submitted successfully.

 

Instructor Info Data Flow

            Source: Course Administrator Interface

            Destination: Register

            Description: Instructor’s information for registration as an instructor.

 

Confirmation Data Flow

            Source: Register

            Destination: Course Administrator Interface

            Description: Confirmation that the instructor has been successfully registered.

 

Search Criteria Data Flow

            Source: Course Administrator Interface

            Destination: Search

            Description: Criteria that course administrator would like to search for.

 

Search Results Data Flow

            Source: Search

            Destination: Course Administrator Interface

            Description: Results after search is processed using search criteria.

 

Key Files Data Flow

            Source: Course Administrator Interface

            Destination: Upload Files

            Description: Key file which will be used for grading by the system.

 

Confirmation Data Flow

            Source: Upload Files

            Destination: Course Administrator Interface

            Description: Confirmation that key file has been successfully submitted.

 

Password Data Flow

            Source: Course Administrator Interface

            Destination: Create Course Password

            Description: Password which will be used to register students for the course.

 

Confirmation Data Flow

            Source: Create Course Password

            Destination: Course Administrator Interface

            Description: Confirmation that password has been successfully created.

 


Feedback Request Data Flow

            Source: Course Administrator Interface

            Destination: View Feedback

            Description: Request to view feedback generated by the grading system.

 

Feedback Files Data Flow

            Source: View Feedback

            Destination: Course Administrator Interface

            Description: Feedback generated by the grading system.

 

Login Info Data Flow

            Source: Login

            Destination: Database

            Description: Username and password for course administrator.

 

 

Confirmation Data Flow

            Source: Database

            Destination: Login

            Description: Acceptance or rejection of login info.

 

Sort Criteria Data Flow

            Source: Sort By

            Destination: Database

            Description: The method which the course instructor would like to sort students

         by.

 

Sort Results Data Flow

            Source: Database

            Destination: Sort By

            Description: The resulting list of students determined by the selected sort criteria.

 

Student Info Data Flow

            Source: Edit Student Info

            Destination: Database

            Description: Student’s edited information.

 

Confirmation Data Flow

            Source: Database

            Destination: Edit Student Info

            Description: Confirmation that the student’s information has been submitted

                                 successfully.

 

Student Info Data Flow

            Source: Manage Sections

            Destination: Database

            Description: Student’s edited section information.

 


Confirmation Data Flow

            Source: Database

            Destination: Manage Sections

            Description: Confirmation that student’s edited section information has been

                                 submitted successfully.

 

Instructor Info Data Flow

            Source: Register

            Destination: Database

            Description: Instructor’s information for registration as an instructor.

 

Confirmation Data Flow

            Source: Database

            Destination: Register

            Description: Confirmation that the instructor has been successfully registered.

 

Search Criteria Data Flow

            Source: Search

            Destination: Database

            Description: Criteria that course administrator would like to search for.

 

Search Results Data Flow

            Source: Database

            Destination: Register

            Description: Results after search is processed using search criteria.

 

Key Files Data Flow

            Source: Upload Files

            Destination: Database

            Description: Key file which will be used for grading by the system.

 

Confirmation Data Flow

            Source: Database

            Destination: Upload Files

            Description: Confirmation that key file has been successfully submitted.

 

Password Data Flow

            Source: Create Course Password

            Destination: Database

            Description: Password which will be used to register students for the course.

 

Confirmation Data Flow

            Source: Database

            Destination: Create Course Password

            Description: Confirmation that password has been successfully created.

 

Feedback Request Data Flow

            Source: View Feedback

            Destination: Database

            Description: Request to view feedback generated by the grading system.

 


Feedback Files Data Flow

            Source: Database

            Destination: View Feedback

            Description: Feedback generated by the grading system.

 

Course Administrator Interface Source/Sink

            Input Flows: Confirmation, Sort Results, Confirmation, Confirmation,

                                  Confirmation, Search Results, Confirmation, Confirmation,

                                  Feedback Files

            Output Flows: Login Info, Sort Criteria, Student Info, Student Info, Instructor

                                    Info, Search Criteria, Key Files, Password, Feedback Request

            Description: Course Administrator’s web interface with which they will be able to

         login, sort students, edit student information, manage sections,

         register instructors, search, upload files, create the course password,
                     and view the feedback generated by the grading system.

 

Login Process

            Input Flows: Login Info, Confirmation

            Output Flows: Confirmation, Login Info

            Description: This process will check the login info against the database and

                                 determine whether it is correct or incorrect.

 

Sort By Process

            Input Flows: Sort Criteria, Sort Results

            Output Flows: Sort Results, Sort Criteria

            Description: This process will send the sort criteria to the database and take the

                                 resulting student list and send it to the course administrator interface.

 

Edit Student Info Process

            Input Flows: Student Info, Confirmation

            Output Flows: Confirmation, Student Info

            Description: This is how the course administrator will edit any student info that is

                                 incorrect.

 

Manage Sections Process

            Input Flows: Student Info, Confirmation

            Output Flows: Confirmation, Student Info

            Description: This is how the course administrator will change any student’s

                                 section in the system if they switch sections

 

Register Process

            Input Flows: Instructor Info, Confirmation

            Output Flows: Confirmation, Instructor Info

            Description: This is how the course administrator will register the different

                                 instructors for the course at the beginning of the semester.

 

Search Process

            Input Flows: Search Criteria, Search Results

            Output Flows: Search Results, Search Criteria

            Description: The course administrator can search for a student if they are not sure

                                 where to quickly find a specific student.

 

Upload Files Process

            Input Flows: Key Files, Confirmation

            Output Flows: Confirmation, Key Files

            Description: The course administrator will upload the files used by the grading

                                 system to grade and provide feedback on the students labs and pre

                                 labs.

 

Create Course Password Process

            Input Flows: Password, Confirmation

            Output Flows: Confirmation, Password

            Description: The course administrator will create the password used by the

                                 students when they register for a course so that no students can

                                 register that are not enrolled in the course.

View Feedback Process

            Input Flows: Feedback Request, Feedback Files

            Output Flows: Feedback Files, Feedback Request

            Description: The course administrator will be able to view the feedback generated

                                 by the grading system.

 

 

 

Database Data Store

            Input Flows: Login Info, Sort Criteria, Student Info, Student Info, Instructor Info,

                                 Search Criteria, Key Files, Password, Feedback Request

            Output Flows: Confirmation, Sort Results, Confirmation, Confirmation,

                                    Confirmation, Search Results, Confirmation, Confirmation,

                                    Feedback Files

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

Level 2:

 

Location – Student – Login – Level 1.1

 

Login Info Data Flow

            Source: System Login

            Destination: Database

            Description: Sends student’s login info to database.

 

Confirmation Data Flow

            Source: Database

            Destination: System Login

            Description: Acceptance or rejection of login info.

 

Forgot Password Request Data Flow

            Source: Forgot Password

            Destination: Database

            Description: Request for email containing password.

 


Email With Password Data Flow

            Source: Database

            Destination: Forgot Password

            Description: Email containing student’s password.

 

System Login Process

            Input Flows: Confirmation

            Output Flows: Login Info

            Description: Confirms or rejects user’s attempt to login with username and

                     password.

 

Forgot Password Process

            Input Flows: Email with password

            Output Flows: Forgot Password Request

            Description: Sends user an email containing password.

 

Database Data Store

            Input Flows: Login Info, Forgot Password Request

            Output Flows: Confirmation, Email With Password

            Description: Database containing usernames, passwords, submitted lab files,

                                 graded lab files, grading key, and the grading template.

 

Location – Student – Upload Files – Level 1.3

 

Lab File Data Flow

            Source: Upload Lab

            Destination: Database

            Description: Student’s completed lab file.

 

Confirmation Data Flow

            Source: Database

            Destination: Upload Lab

            Description: Confirmation that lab file has been submitted successfully.

 

Pre Lab File Data Flow

            Source: Upload Pre Lab

            Destination: Database

            Description: Student’s completed pre lab file.

 

Confirmation Data Flow

            Source: Database

            Destination: Upload Pre Lab

            Description: Confirmation that pre lab file has been submitted successfully.

 

Upload Lab Process

            Input Flows: Confirmation

            Output Flows: Lab File

            Description: Student uploads completed lab file to system for grading.

 


Upload Pre Lab Process

            Input Flows: Confirmation

            Output Flows: Pre Lab File

            Description: Student uploads completed pre lab file to system for grading.

 

Database Data Store

            Input Flows: Lab File, Pre Lab File

            Output Flows: Confirmation, Confirmation

            Description: Database containing usernames, passwords, submitted lab files,

                                 graded lab files, grading key, and the grading template.

 

Location – Student – View Feedback – Level 1.4

 

View File Request Data Flow

            Source: View Submitted Files

            Destination: Database

            Description: Student’s request view previously submitted lab files.

 

 

Lab File Data Flow

            Source: Database

            Destination: View Submitted Files

            Description: Student’s previously submitted lab files.

 

Error Report Request Data Flow

            Source: View Error Report

            Destination: Database

            Description: Request to view error report generated by grading system.

 

Error Report Data Flow

            Source: Database

            Destination: View Error Report

            Description: Error Report generated by grading system.

 

View Submitted Files Process

            Input Flows: Lab File

            Output Flows: View File Request

            Description: Displays student’s submitted lab file from database.

 

View Error Report Process

            Input Flows: Error Report

            Output Flows: Error Report Request

            Description: Displays student’s error report generated by grading system.

 

Database Data Store

            Input Flows: View File Request

            Output Flows: Error Report Request

            Description: Database containing usernames, passwords, submitted lab files,

                                 graded lab files, grading key, and the grading template.

 


Location – Lab Instructor – Login – Level 2.1

 

Login Info Data Flow

            Source: System Login

            Destination: Database

            Description: Sends lab instructor’s login info to database.

 

Confirmation Data Flow

            Source: Database

            Destination: System Login

            Description: Acceptance or rejection of login info.

 

Forgot Password Request Data Flow

            Source: Forgot Password

            Destination: Database

            Description: Request for email containing password.

 

Email With Password Data Flow

            Source: Database

            Destination: Forgot Password

            Description: Email containing lab instructor’s password.

 

System Login Process

            Input Flows: Confirmation

            Output Flows: Login Info

            Description: Confirms or rejects user’s attempt to login with username and

                     password.

 

Forgot Password Process

            Input Flows: Email with password

            Output Flows: Forgot Password Request

            Description: Sends user an email containing password.

 

Database Data Store

            Input Flows: Login Info, Forgot Password Request

            Output Flows: Confirmation, Email With Password

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

Location – Lab Instructor – Sort By – Level 2.2

 

Selected Section Data Flow

            Source: Sort By Section

            Destination: Database

            Description: Selection that lab instructor would like to sort by section.

 

Student List Data Flow

            Source: Database

            Destination: Sort By Section

            Description: Resulting student list when sorted by section.

 


Selected Lab Number Data Flow

            Source: Sort By Lab #

            Destination: Database

            Description: Selection that lab instructor would like to sort by lab number.

 

Student List Data Flow

            Source: Database

            Destination: Sort By Lab #

            Description: Resulting student list when sorted by lab #.

 

Sort By Section Process

            Input Flows: Student List

            Output Flows: Selected Section

            Description: Sorts all students by their assigned section.

 

Sort By Lab # Process

            Input Flows: Student List

            Output Flows: Selected Lab Number

            Description: Sorts all students by each assigned lab number.

 

Database Data Store

            Input Flows: Selected Section, Selected Lab Number

            Output Flows: Student List, Student List

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

Location – Lab Instructor  – View Feedback – Level 2.5

 

Error Report Request Data Flow

            Source: View Error Reports

            Destination: Database

            Description: Lab Instructor’s request to view student’s error report.

 

Error Report File Data Flow

            Source: Database

            Destination: View Error Reports

            Description: Student’s error report after grading by the system.

 

File Request Data Flow

            Source: View Submitted Files

            Destination: Database

            Description: Lab Instructor’s request to view student’s lab files.

 

Student Lab File Data Flow

            Source: Database

            Destination: View Submitted Files

            Description: Student’s original lab files that were submitted to the system.

 

View Error Reports Process

            Input Flows: Error Report File

            Output Flows: Error Report Request

            Description: Displays student’s error reports to the lab instructor.

 

View Submitted Files Process

            Input Flows: Student Lab File

            Output Flows: File Request

            Description: Displays student’s original lab files that were submitted to the 

                                 system.

 

Database Data Store

            Input Flows: Error Report Request, File Request

            Output Flows: Error Report File, Student Lab File

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

Location – Lecture Instructor – Login – Level 3.1

 

Login Info Data Flow

            Source: System Login

            Destination: Database

            Description: Sends lecture instructor’s login info to database.

 

Confirmation Data Flow

            Source: Database

            Destination: System Login

            Description: Acceptance or rejection of login info.

 

Forgot Password Request Data Flow

            Source: Forgot Password

            Destination: Database

            Description: Request for email containing password.

 

Email With Password Data Flow

            Source: Database

            Destination: Forgot Password

            Description: Email containing lecture instructor’s password.

 

System Login Process

            Input Flows: Confirmation

            Output Flows: Login Info

            Description: Confirms or rejects user’s attempt to login with username and

                     password.

 

Forgot Password Process

            Input Flows: Email with password

            Output Flows: Forgot Password Request

            Description: Sends user an email containing password.

 

Database Data Store

            Input Flows: Login Info, Forgot Password Request

            Output Flows: Confirmation, Email With Password

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

Location – Lecture Instructor – Sort By – Level 3.2

 

Selected Section Data Flow

            Source: Sort By Section

            Destination: Database

            Description: Selection that lecture instructor would like to sort by section.

 

Student List Data Flow

            Source: Database

            Destination: Sort By Section

            Description: Resulting student list when sorted by section.

 

Selected Lab Number Data Flow

            Source: Sort By Lab #

            Destination: Database

            Description: Selection that lecture instructor would like to sort by lab number.

 

Student List Data Flow

            Source: Database

            Destination: Sort By Lab #

            Description: Resulting student list when sorted by lab #.

 

Sort By Section Process

            Input Flows: Student List

            Output Flows: Selected Section

            Description: Sorts all students by their assigned section.

 

Sort By Lab # Process

            Input Flows: Student List

            Output Flows: Selected Lab Number

            Description: Sorts all students by each assigned lab number.

 

Database Data Store

            Input Flows: Selected Section, Selected Lab Number

            Output Flows: Student List, Student List

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

Location – Lecture Instructor – View Feedback – Level 3.3

 

Error Report Request Data Flow

            Source: View Error Reports

            Destination: Database

            Description: Lecture Instructor’s request to view student’s error report.

 

Error Report File Data Flow

            Source: Database

            Destination: View Error Reports

            Description: Student’s error report after grading by the system.

 


File Request Data Flow

            Source: View Submitted Files

            Destination: Database

            Description: Lecture Instructor’s request to view student’s lab files.

 

Student Lab File Data Flow

            Source: Database

            Destination: View Submitted Files

            Description: Student’s original lab files that were submitted to the system.

 

View Error Reports Process

            Input Flows: Error Report File

            Output Flows: Error Report Request

            Description: Displays student’s error reports to the lecture instructor.

 

View Submitted Files Process

            Input Flows: Student Lab File

            Output Flows: File Request

            Description: Displays student’s original lab files that were submitted to the 

                                 system.

 

Database Data Store

            Input Flows: Error Report Request, File Request

            Output Flows: Error Report File, Student Lab File

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

Location – Course Administrator – Login – Level 4.1

 

Login Info Data Flow

            Source: System Login

            Destination: Database

            Description: Sends course administrator’s login info to database.

 

Confirmation Data Flow

            Source: Database

            Destination: System Login

            Description: Acceptance or rejection of login info.

 

Forgot Password Request Data Flow

            Source: Forgot Password

            Destination: Database

            Description: Request for email containing password.

 

Email With Password Data Flow

            Source: Database

            Destination: Forgot Password

            Description: Email containing course administrator’s password.

 


System Login Process

            Input Flows: Confirmation

            Output Flows: Login Info

            Description: Confirms or rejects user’s attempt to login with username and

                     password.

 

Forgot Password Process

            Input Flows: Email with password

            Output Flows: Forgot Password Request

            Description: Sends user an email containing password.

 

Database Data Store

            Input Flows: Login Info, Forgot Password Request

            Output Flows: Confirmation, Email With Password

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

Location – Course Administrator – Sort By – Level 4.2

 

Selected Section Data Flow

            Source: Sort By Section

            Destination: Database

            Description: Selection that course administrator would like to sort by section.

 

Student List Data Flow

            Source: Database

            Destination: Sort By Section

            Description: Resulting student list when sorted by section.

 

Selected Lab Number Data Flow

            Source: Sort By Lab #

            Destination: Database

            Description: Selection that course administrator would like to sort by lab number.

 

Student List Data Flow

            Source: Database

            Destination: Sort By Lab #

            Description: Resulting student list when sorted by lab #.

 

Sort By Section Process

            Input Flows: Student List

            Output Flows: Selected Section

            Description: Sorts all students by their assigned section.

 

Sort By Lab # Process

            Input Flows: Student List

            Output Flows: Selected Lab Number

            Description: Sorts all students by each assigned lab number.

 


Database Data Store

            Input Flows: Selected Section, Selected Lab Number

            Output Flows: Student List, Student List

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

Location – Course Administrator – Manage Sections – Level 4.4

 

Lab Section Number Data Flow

            Source: Create Lab Sections

            Destination: Database

            Description: Lab section numbers for the semester.

 

Confirmation Data Flow

            Source: Database

            Destination: Create Lab Sections

            Description: Confirmation that lab sections have been created successfully.

 

Lecture Section Number

            Source: Create Lecture Sections

            Destination: Database

            Description: Lecture section numbers for the semester.

 

Confirmation Data Flow

            Source: Database

            Destination: Create Lecture Sections

            Description: Confirmation that lecture sections have been successfully created.

 

Create Lab Sections Process

            Input Flows: Confirmation

            Output Flows: Lab Section Number

            Description: Creates lab sections for the semester.

 

Create Lecture Sections Process

            Input Flows: Confirmation

            Output Flows: Lecture Section Number

            Description: Creates lecture sections for the semester.

 

Database Data Store

            Input Flows: Lab Section Number, Lecture Section Number

            Output Flows: Confirmation, Confirmation

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 


Location – Course Administrator – Register – Level 4.5

 

Instructor Info Data Flow

            Source: Register Instructor

            Destination: Database

            Description: Information for instructor of a lecture or lab section for the semester.

 

Confirmation Data Flow

            Source: Database

            Destination: Register Instructor

            Description: Confirmation that lecture instructor has been registered successfully.

 

Student Info Data Flow

            Source: Register Student

            Destination: Database

            Description: Information for student needed for registration.

 

Confirmation Data Flow

            Source: Database

            Destination: Register Student

            Description: Confirmation that student has been registered successfully.

 

Register Instructor Process

            Input Flows: Confirmation

            Output Flows: Instructor Info

            Description: Registers an instructor in the grading system for the semester.

 

Register Student Process

            Input Flows: Confirmation

            Output Flows: Student Info

            Description: Registers a student in the grading system.

 

Database Data Store

            Input Flows: Instructor Info, Student Info

            Output Flows: Confirmation, Confirmation

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

Location – Course Administrator – Upload Files – Level 4.7

 

Sample Lab File Data Flow

            Source: Upload Sample Lab Files

            Destination: Database

            Description: Sample lab file used for grading by the system.

 

Confirmation Data Flow

            Source: Database

            Destination: Upload Sample Lab Files

            Description: Confirmation that sample lab files have been uploaded to the system

                                 successfully.

 


Key File Data Flow

            Source: Upload Key

            Destination: Database

            Description: Key file used for grading by the system.

 

Confirmation Data Flow

            Source: Upload Key

            Destination: Database

            Description: Confirmation that key file has been uploaded to the key successfully.

 

Upload Sample Lab Files Process

            Input Files: Confirmation

            Output Files: Sample Lab File

            Description: Uploads sample lab files to the system which are used for grading.

 

Upload Key Process

            Input Files: Confirmation

            Output Files: Key File

            Description: Uploads key file to the system which is used for grading.

 

Database Data Store

            Input Files: Sample Lab File, Key File

            Output Files: Confirmation, Confirmation

            Description: Database containing usernames, passwords, submitted lab files,

         graded lab files, grading key, and the grading template.

 

Location – Course Administrator – View Feedback – Level 4.9

 

Error Report Request Data Flow

            Source: View Error Reports

            Destination: Database

            Description: Course administrator’s request to view student’s error report.

 

Error Report File Data Flow

            Source: Database

            Destination: View Error Reports

            Description: Student’s error report after grading by the system.

 

File Request Data Flow

            Source: View Submitted Files

            Destination: Database

            Description: Course administrator’s request to view student’s lab files.

 

Student Lab File Data Flow

            Source: Database

            Destination: View Submitted Files

            Description: Student’s original lab files that were submitted to the system.

 

View Error Reports Process

            Input Flows: Error Report File

            Output Flows: Error Report Request

            Description: Displays student’s error reports to the course administrator.

 

View Submitted Files Process

            Input Flows: Student Lab File

            Output Flows: File Request

            Description: Displays student’s original lab files that were submitted to the 

                                 system.

 

Database Data Store

            Input Flows: Error Report Request, File Request

            Output Flows: Error Report File, Student Lab File

            Description: Database containing usernames, passwords, submitted lab files,

                                 graded lab files, grading key, and the grading template.

V. Logical Data Stores

Table Name: PERSONAL_INFORMATION

 

username

            Type: varchar

            Description: The person’s username for the system

            Key:     yes

            Required: yes

            Length: 20

 

first_name

            Type: varchar

            Description: Persons first name

            Key: no

            Required: yes

            Length: 20

 

last_name

            Type: varchar

            Description: Persons last name

            Key:     no

            Required: yes

            Length: 20

 

email

            Type: varchar

            Description: Persons email address

            Key:     no

            Required: yes

            Length: 40

 

password

            Type: varchar

            Description: Persons password for the system

            Key: no           

            Required: yes

            Length: 20

 

account_type

            Type: varchar

            Description: the account type that they are assigned (ex. student, admin, lab                               and/or lecture instructor

            Key: no           

            Required: yes

            Length: 10

 

Table Name: STUDENT_FILES

 

username

            Type: varchar

            Description: The person’s username for the system

            Key: yes

            Required: yes

            Length: 20

 

lab_num

            Type: int

            Description: the lab number that corresponds to the submitted file

            Key: no

            Required: yes

            Length: 2

 

file_path

            Type: varchar

            Description: the location where the file is stored

            Key: no

            Required: yes

            Length: 50

 

file_name

            Type: varchar

            Description: the name of the file submitted

            Key: no

            Required: yes

            Length: 20

 

file_type

            Type: varchar

            Description: The type of file- can be lab, prelab or error report

            Key: no

            Required: yes

            Length: 10

 

date_submitted

            Type: Date

            Description: the date the file was submitted to the system

            Key: no

            Required: yes

            Length: 20

 

grade

            Type: int

            Description: the grade the student was given for this file

            Key: no

            Required: no

            Length: 3

 

 

Table Name: SECTIONS

 

section_number

            Type: varchar

            Description: the section number that is assigned to this lab/ lecture

            Key: yes

            Required: yes

            Length: 10

 

section_type

            Type: varchar

            Description: lab or lecture

            Key: no

            Required: yes

            Length: 10

 

instructor

            Type: varchar

            Description: the username of the instructor teaching this section

            Key: no

            Required: yes

            Length: 20

 

semester

            Type: varchar

            Description: the semester the section is being taught

            Key: no

            Required: yes

            Length: 10

 

 


Table Name: GRADING_KEY_FILES

 

file_name

            Type: varchar

            Description: the name of the file submitted

            Key: yes

            Required: yes

            Length: 20

 

lab_num

            Type: int

            Description: the lab number that corresponds with the submitted file

            Key: no

            Required: yes

            Length: 2

 

due_date

            Type: Date

            Description: the date the file is due to be submitted by the student

            Key: no

            Required: yes

            Length: 20

 

file_type

            Type: varchar

            Description: type of file that was submitted- Key file or sample Excel file

            Key: no

            Required: yes

            Length: 10

 

file_path

            Type: varchar

            Description: location where the file is stored

            Key: no

            Required: yes

            Length: 50

VI. Logical Format of Data Files and Databases

We will be using either Oracle DBMS or mySQL for our data storage. The files submitted to the system will not be stored in the tables, instead they will be stored in a separate directory and the path to the files will be stored in the database. We will be storing the following types of fields in our database: varchar, Date and int. Each field will have a maximum size as specified in our Logical Data Stores.

 


VII. Structure Diagrams

This structure diagram is a graphical representation of the structure of the Automated Excel Grading System.  The first diagram displays the system itself broken down into each user type’s interface:

 

Each of the user interfaces is broken down into the tasks that can be performed by each user:

 

 

 


VIII. Test Plan

All Testing Requirements can be found in the Automated Excel Grading System Test Plan which can be found on the Oasis Technologies Documents page.  The url below will guide you to it.

 

http://oraserv.cs.siena.edu/~perm_oasis/documents.html

 

IX. Subprogram Interface Specifications

 

The modules included with the Automated Excel Grading System are the Student, the Lab Instructor, the Lecture Instructor, and the Course Administrator. These four modules or users work independently of one another, although some data is linked to all modules through the database. Each of these modules work to achieve the desired output for the Automated Excel Grading System.

 

 

X. Documentation Prologue for Each Routine

 

Function: getWorkbook()

Input: File

Output: Workbook

Description: This creates a workbook object out of the .xls file

 

Function: getSheet()

Input: String

Output: Sheet

Description: opens the sheet of the workbook specified by the input parameter

 

Function: getCell()

Input: int, int

Output: Cell

Description: opens the cell specified by the two input parameters

 

Function:  getBackgroundColour()

Input: Cell

Output: Colour

Description: get the background color of the cell specified

 

Function: hasBorders()

Input: Cell

Output: boolean

Description: true if the cell specified has borders

 


Function: getBorderColour()

Input: Cell

Output: Colour

Description: gets the color of the borders on the cell

 

Function: getContents()

Input: Cell

Output: String

Description: gets the contents of the cell specified

 

Function: getFormula()

Input: Cell

Output: String  

Description: gets the formula associated with the specified cell

 

Function: getComment()

Input: Cell

Output: String

Description: gets the comment associated with the specified cell

 

Function: getFont()

Input: Cell

Output: Font

Description: gets the font attributed associated with the cell

 

Function:  isItalics()

Input: Font

Output: boolean

Description: true if the text in the cell is Italics

 

Function:  isBold()

Input: Font

Output: boolean

Description: true if the text in the cell is bold

 

Function:  getName()

Input: Font

Output: String

Description: gets the name of the font used

 

Function:  getPointSize()

Input: Font

Output: String

Description: gets the font size of the text

 

Function: getColour()

Input: Font

Output: Colour

Description: gets the color attributes of the font

 


Function: createWorkbook()

Input: File

Output: WriteableWorkbook

Description: creates a copy of the workbook specified

 

Function:  getSheet()

Input: WriteableWorkbook

Output: writeableSheet

Description: gets a sheet that can be edited from the workbook

 

 

Function: setComment()

Input: WriteableSheet

Output:

Description: inserts a comment into the writeable workbook

 

 

XI. Pseudo Code For Each Routine

 

Function: getWorkbook()

Specify a file to open

Convert the file to a workbook

Return the workbook

 

Function: getSheet()

Open  the workbook

Specify the sheet you want to open

Return the sheet

 

Function: getCell()

Open the workbook and sheet

Specify the cell to open

Open and return the cell

 

Function:  getBackgroundColour()

Specify the cell to open

Get the background color from the cell

Return the color object

 

Function: hasBorders()

Specify the cell to open

            Get the border information from the cell

            Return the boolean

 

Function: getBorderColour()

Specify the cell to open

Get the border color from the cell

Return the color object

 


Function: getContents()

Specify the cell to open

            Get the contents of the cell

            Return the string representation of the contents 

 

Function: getFormula()

Specify the cell to open

            Get the formula from the cell

            Return the String representation of the formula  

 

Function: getComment()

Specify the cell to open

Get the comment from the cell

Return the string representation of the comment

 

Function: getFont()

Specify the cell to open

Get the font object from the cell

Return the font object

 

Function:  isItalics()

Specify the cell to open

Get the font object from the cell

Get the italics attribute from the cell

Return the Boolean value of the italics state of the text

 

Function:  isBold()

Specify the cell to open

Get the font object from the cell

Get the bold attribute from the cell

Return the Boolean value of the bold state of the text

 

Function:  getName()

Specify the cell to open

Get the font object from the cell

Get the font name attribute from the cell

Return the string value of the font name of the text

 

Function:  getPointSize()

Specify the cell to open

Get the font object from the cell

Get the size attribute from the cell

Return the String value of the size of the text

 

Function: getColour()

Specify the cell to open

Get the font object from the cell

Get the color attribute from the cell

Return the Colour value of the color of the text

 


Function: getWorkbook()

Specify a file to open

Convert the file to a WriteableWorkbook

Return the WriteableWorkbook

 

Function: getSheet()

Open  the WriteableWorkbook

Specify the sheet you want to open

Return the WriteableSheet

 

Function: setComment()

            Open the Cell

            Specify the text to insert into the comment of the cell

            Set the cell comment

            Write the cell to the sheet

 

 

XII. Physical Data Structures and Data File Specifications

 

 

Personal Info – This table stores information about all users personal information.  All users will have data stores in this table pertaining to their email, name, password, and account type (Student, Lab Instructor, Lecture Instructor, or Course Administrator).  For Students there will also be information for both Lab and Lecture Section numbers.  For Instructors, it will contain their Lab or Lecture Section number.  The Course Administrator will not have data for the Lab and Lecture Section numbers.  This table will be used to display and change information about all users in the system.

 

 


 

Sections – This table contains information pertaining to sections.  It stores the name of the professor who teaches the section along with the Section Number and the Section Type.  Section Type can be either Lab Section or Lecture Section.  This table will be used to populate the lists of Students that all Instructors can view/alter.

 

 

 

Submissions – This table stores all information associated with every submitted file.  It contains the Email address of the Student who submitted it along with the Lab Number, File Name, Total Grade given, the Date the file was Submitted, the file that was submitted, and the submitted file with errors printed in it.  It also contains a field called “Status” which tells the system whether or not this file has been approved by the Lab Instructor for Students to view.  This table will be used to populate the list of labs that each user type can view along with store the error reports that they can view.

 

 

 

Errors – This table stores information about each error that is found in a Students submitted lab.  It contains the Email address of the Student who submitted the lab along with the Lab File Name, the Cell in which the error occurred, a brief description of the error that was made, the points that were given for this area of the Lab and the total number of points this area is worth.  This table will be used to display information about Students labs to Lab Instructors so that they can change or approve the grading the Automated Excel Grading System gives them.

 

 

 

Key Files – This table stores information about the Grading Keys that the system will use to grade the Students submissions.  It contains the Lab Number for each file, along with the Due Date for this lab.  It also contains the Location of this file and it’s Type, which is either a Key or a Sample File.  This table will be used by the System to match submitted Labs with their Grading Keys so that each can be graded and sent for Lab Instructor Approval.

 

 

 

Relationship Diagram – This diagram shows how all of our tables are inter-related and require eachothers information.

 

 

 


XIII. Packaging Specifications

 

The automated excel grading system will be installed on the Siena College Computer Science Departments “Oraserv” webserver, and our database will be a mySQL database. We will provide our clients with a backup copy of our entire system including the user interface and database tables in the form of a cd. Our project will be contained entirely in one directory, with multiple subdirectories, for ease of movement in the future; therefore all paths will be relative path names. The database however will not be contained within the Oraserv directory with the rest of the system, so an absolute path to the database will be used.

 

 

 

 

 

 

 

 

 

 


 

Appendices

 

I. Sources of Information

The information in this document was gathered from meetings with our clients, Ms. Jami Cotler and Dr. Scott Hunter, knowledge learned from Dr. Lederman’s Software Engineering lectures, the class textbook Software Engineering: A Practitioner’s Approach by Roger S. Pressman, and team websites from previous years located at: http://www.cs.siena.edu/~lederman/csis410/csis410.html

 

II. Gantt Chart

 

 

III. Glossary of Terms

 

Cell: The smallest component of a Microsoft Excel workbook.  Location is designated by it’s sheet, row, and column in the workbook.

 

Comments: Data stored in a Microsoft Excel workbook that pertains to a particular cell but is invisible unless user chooses to view the comment on a cell.

 

Gantt Chart:  A popular type of bar chart that illustrates a project schedule including start and finish dates, tasks, and events that are to occur to complete the project

 

HTML: Hypertext Markup Language (HTML) is programming language used in the creation of Web pages.

 

Java: A programming language used for developing object oriented programs.

 

JavaScript: Javascript is a scripting language developed by Netscape that can interact with HTML source code, enabling Web authors to spice up their sites with dynamic content.

 

MySQL: An open source relational database management system (RDBMS) that uses Structured Query Language (SQL), the most popular language for adding, accessing, and processing data in a database.

 

PHP: PHP Hypertext Preprocessor is a widely-used, open-source, general-purpose scripting language that is especially suited for web development.

 

Sheet: Component of a workbook.  Workbooks are composed of single or multiple sheets, each of which containing a spreadsheet.  It should be noted that sheets within workbooks may access each others contents.

 

Structure Diagrams: graphical representation of the structure of the Automated Excel Grading System

 

Student User/Account: The most basic user of this software.  Will be able to create their own accounts and use them to upload lab's and pre-lab's and also view their grades

 

Use Case Narrative: The basic functionality that the system will have for each of the users

 

Workbook: The type of files that Microsoft Excel uses which will be submitted to the Automated Excel Grading System for grading.  Has file extension “.xls”

 

WriteableSheet: Denoted by the Automated Excel Grading System as a sheet that can has permissions such that the system may alter its contents.

 

xls: File extension for Workbook.  See “Workbook.”