Preliminary
Design
Requested
by:
Dr.
Scott Hunter
Assistant
Professor
Siena
College
Computer
Science Department
Ms.
Jami Cotler
Instructor
Siena
College
Computer
Science Department
Excel
Grading System
NSG
Software
Prepared
by:
Matt Warner - Team
Leader
Justin Spegele -
Webmaster
Kristen Dobreski -
Librarian
Dan Lomanto -
Developer
November
30, 2005
Excel
Grading System
Requirements
Specification
Table
of Contents:
Preliminary
Design:
Section
1: External Design Specifications
1.1: User
Displays and Report Formats..........................................3-10
1.2: Detailed
Data Flow Diagrams..................................................11-14
Section
2: Architectural Design Specification
2.1: Structure
Diagram....................................................................15
2.2: Use
Cases.................................................................................16-18
2.3: Functional
Descriptions...........................................................18
2.4: Design
Environment Information............................................18-19
Section
3: Testing Requirements
3.1: Requirements
Inventory..........................................................19
3.2: Design
Inventory.....................................................................19
Section 4: Gantt Chart..............................................................................20
Section 5:
Glossary....................................................................................21-22
Section 1:
External Design Specifications
1.1:
User Displays and Report Formats
Course
Coordinator Main Page
Course
Coordinator Upload Key Page
Lab
Instructor Main Page
Lab
Instructor Grading Page
Student
Main Choose Lab
Student
Upload Lab
Lab
Summary Report
Lab
#__ Summary (For Student)
Name:
_______________________
Lab Time: ___________________
Lab Instructor:
__________________________
Lecture
Instructor:
________________________
Total Points
Received:
__________
Total Possible
Points: ___________
Percentage:
_________%
What Questions
Were Wrong:
(THIS SECTION
IS SHOWN MORE THAN ONCE PENDING ON HOW MANY THE STUDENT
GOT WRONG)
Question: ________________________________
Your Answer:
_____________________________
Correct Answer:
___________________________
1.1 Contd:
Report Summary
Report
Formats
Course
Coordinator
·
Logout
Logout of the XLS System.
·
Change
Password User can change their password.
·
Upload
Grading Key Choose the files to upload for the two part grading key.
·
View
Grading Summaries Choose from several different grading summaries, organized
as the user chooses.
·
Create
Student Account Add a new student account.
·
Edit
Student Account Change a student account.
·
Create
Instructor Account Add a new instructor account.
·
Edit
Instructor Account Change an instructor account.
Lab
Instructor
·
Logout
Logout of the XLS System.
·
Change
Password User can change their password.
·
Grade
Labs Initiate the grading process for the user-selected lab.
·
View
Grading Summaries Choose from several different grading summaries, organized
as the user chooses.
·
Edit
Grades Edit individual or class-wide grades.
·
View
Student View the grades of a particular student.
Lecture
Instructor
·
Logout
Logout of the XLS System.
·
Change
Password User can change their password.
·
View
Grading Summaries Choose from several different grading summaries, organized
as the user chooses.
Student
·
Logout
Logout of the XLS System.
·
Change
Password User can change their password.
·
Upload
Lab Upload all of the necessary lab files for the selected lab.
·
View
Grades Students can view their own grades.
1.2:
Detailed Data Flow Diagrams
LEVEL 0
Section
2: Architectural Design Specification
2.1:
Structure Diagram
2.2:
Use Cases
A use-case describes
how the system responds to the requests of different actors. These actors are the course coordinator, the
student, the lab instructor and the lecture instructor. Each story, or narrative, demonstrates the
users capabilities and privileges. The use-cases for our four actors are below.
Use-Case
for the Course Coordinator (Administrator):
1.
The
Course Coordinator logs into the same web interface as all other users of the
system. Upon visiting the webGUI and attempting a login, an authentication
method will be in place to assure the validity of the username and password. In
addition, authentication module will keep a running tally of failed logins, in
case of an attempted break-in.
2.
The
Course Coordinator, once logged into the system, will have the ability to add
new users to the system, as well as manage existing users. The admin will be
able to set access privileges over the student, lab instructor, and lecture
instructor accounts. The Course Coordinator will also be able to create a list
of assignments for each lab section. In addition, the Course Coordinator will
submit some form of grading key which the software will use in grading student
submitted files. Finally, the Course Coordinator will have the ability to view
some type of grading summary if they so choose.
3.
The
Course Coordinator will have the ability to change their own password if they
wish. They will be able to do this from the webGUI.
4.
The
Course Coordinator will have the ability to logout safely to protect their
account from accidental access by other users using the same computer system.
Student
Use-Case:
1.
The student is
a person registered in a lab for either CSIS-010 or CSIS-011. The student will go to the main login screen
and enter the username and password that will be issued by the Course
Coordinator.
2.
Once logged in
the student has a couple of options. The
student may submit the lab files that may be due for that week by clicking a
button that would help to navigate through the computer and find all the needed
files for that lab. Once all files have
been located, the student may then submit the lab.
3.
The student
may then choose to logout or check for labs that have been graded so far. For each lab that is graded a summary sheet
will be available to tell the student with information such as what grade was
received and what was done wrong along with all the examples that were
completed incorrectly. The student may
also view a summary of every lab that has been completed earlier in the
semester as well. As a last option, the
student may change the password that gives access to the account once the
student has logged in at least once.
Use-
Case for the Lab Instructor (Grader):
1.
The
lab instructor logs into the system through the web interface by entering their
unique user name and password. If the
lab instructor fails to enter in the correct password 3 times in a row, the
system will lock them out for security purposes. Once the lab instructor has
logged in successfully, they will see the home welcome page.
2.
The
lab instructor can view lab reports that have been submitted by students and
also student information, like section number and lecturer. They can look up
the student by section or by name from the drop down list. The lab instructor can also view the
generated grade reports, which is a summary of all grades given. The lab instructor can view the reports by
grades of the whole section or by each question. The lab instructor has the authority to
change grades that are correct but the system did not mark wrong. For example formulas in a cell can be entered
in a number of different ways. The
system may mark it wrong because it was not exact to the key, but it could
still be correct.
3.
The
lab instructor has the ability to override the grading system in order to
change a grade. In order to do this the
lab instructor must look at the grade reports and make the necessary changes. The system will allow this because the Lab
instructor has this privilege of changing grades and would recognize that from
their unique login.
4.
After
the lab instructor has graded the labs, the summary reports are sent back to
the server to be stored.
Use-
Case for the Lecture Instructor:
1.
The lecture
instructor is a person who teaches the lecture section of either CSIS-010 or
CSIS-011. The Lecture Instructor will go
to the main login screen and enter the username and password that will be
issued by the Course Coordinator.
2.
The
lecture instructor chooses a lab or lecture (if they have more than one). The main function that the lecture instructor
is able to do is to view grades and grading summaries about their students.
3.
In
order for the lecture instructor to view grades, Excel labs for the
instructors class must be uploaded and graded.
The lecture instructor can then choose to view a list of individual
grades or chooses from various summaries.
4.
The
lecture instructor has the option of viewing and/or printing the selected
reports
5.
Lastly,
the lecture instructor logs out and closes the web page.
2.3: Functional
Descriptions
The overall
functionality of this software that is being developed is to grade every single
lab that has been handed in by every CSIS-010 and CSIS-011 lab student so that
the Lab Instructor does not have to. The
surplus of labs that Lab Instructors get every week is very overwhelming, which
is the reason for the production of this software. Each lab will be submitted via the internet
after logging into the appropriate website.
Once a student submits a lab, a Lab Instructor may then correct that lab
or they may also correct a section of labs at once. The Lab Instructor will receive a summary
report for every single student for every lab that was submitted and
graded. The Lab Instructor will also be
able to override any corrections that the software has done since there may be
multiple acceptable answers to a single question. Since this software grades every lab, the Lab
Instructors time will now be able to be used more efficiently.
2.4: Design
Environment Information
Needs Apache 1.3.24 or better
Needs PHP 4.2.1 or better
Needs MySQL 3.23.29 or better.
Minimum 10 mb disk space.
Redhat linux kernel version 2.4.2
Production environment at-least the
above specifications.
Data store setup:
Class database table
Username field, type var char(length
10)
Is_student field, Boolean
Is_grader field, Boolean
Is_instructor field, Boolean
Users database table
Username field, type var char(length
10)
Email field, var char(length 20)
Password field, var char(sha1 fixed
length)
Is_student field, Boolean
Is_grader field, Boolean
Is_admin field, Boolean
Is_instructor field, Boolean
Submitted files and grading keys
Saved as comma separated value text files.
Section
3: Testing Requirements
3.1:
Requirement inventory
The
main requirement that this software must have in its inventory are the copies
of all the labs along with all the summaries of each graded lab. In order to do this though are steps that the
software must take. First the Student
has to submit a lab, which is of course at their discretion. Then the Lab Instructor will choose a section
of labs to grade. Only after doing
this will the desired result of graded
labs and summaries be available.
3.2:
Design Inventory
For the design, simplicity will be
the best path to take for this project.
Therefore we do not want to over clutter the website with useless or
impractical links everywhere. A common
occurrence on every page after logging in will be a link that will allow for
every user in the system to change their own password to whatever they would
like. The Course Coordinator and Lab
Instructor will have links allowing the maneuvering throughout the site to get
to any lab section desired. The Lab
Instructor will only have access to the grades of the students that are in
their lab sections. The Course
Coordinator on the other hand will be able to view any students grades.
Section
4: Gantt Chart
Section
5: Glossary
Code A
set of data or symbols that represent a string of instructions to the computer.
Course Coordinator The
administrator for the Excel Grading System.
Has the privileges to perform all tasks on the web interface as well as
view all information.
CSIS-010 Intro to Computer Applications. One of the Siena College courses that will be
using our Excel Grading System.
CSIS-011 Problem Solving with
Spreadsheets. Another course that will
be using our Excel Grading System.
Data Flow Diagram - A
representation of the functional decomposition of a system.
administrator
will be using on the website to wither grade or submit the labs.
Database - The
organization of all the labs into a structure that is simplest to the faculty
members and System Administrator.
Gantt Chart - A
chart that depicts progress in relation to time, often used in planning and
tracking a project.
Internet - An
interconnected system of networks that connects computers around the world.
Key The key is something that the
course coordinator uploads into the system in order for the labs submitted by
the students to be corrected against.
The key is a perfect copy of what the lab should look like.
Lab Instructor The
lab instructor may or may not be a lecture instructor. The lab instructor is a person who grades the
lab reports.
Lab Reports - A
summary of each lab that has been graded for each student who has submitted a
lab.
Lecture Instructor The
lecture instructor is a person who teaches a lecture section for either
CSIS-010 or CSIS-011. They have the
ability to view grades through the web interface and also grade summaries.
Software -
Written programs or procedures or rules and associated documentation pertaining
to the operation of a computer system and that are stored in read/write memory.
Student The student, one of the four main
users within the system, is a person enrolled in either CSIS-010 or
CSIS-011. They have the ability to
submit lab reports and view their own grades.
UI (User Interface) - This is
the interface that each faculty member, student, and system.
Use-Case Describes how the system responds to
the requests of different actors.