Requirements Specification
Requested By: Dr. Scott Hunter
Assistant Professor of Computer Science
Computer Science Department of
Ms. Jami Cotler
Instructor/Lecturer of Computer Science
Computer Science Department of
Dr. Tim Lederman
Professor of Computer Science
Computer Science Department of
Automated Excel Grading System
Oasis Technologies
Prepared By:
Brian Salmon
Vincent Leone
Jim Dzembo
Chris Mahar
Josh Yerkie
Automated Excel Grading System
Requirements Specification
Table of Contents:
I. Product
Overview and Summary
II. Development,
Operating and Maintenance Environments.
IV. External
Interfaces and Data Flows
VIII. Early
Subsets and Implementation Priorities.
IX. Foreseeable
Modifications and Enhancements
XII. Design
Hints and Guidelines
I. Product Overview and Summary
II. Development, Operating and Maintenance
Environments
The development of the Automated Excel Grading System will
be done on a combination of Windows and Macintosh based computers. It will run
on
III. Use Case Narrative
Student
The students will have the ability to login to the website with a username and password, if they do not have a username they will be able to create their own accounts. Once the student logs in they will be able to upload their pre-labs and have the system grade them. After the pre-lab is graded it will provide a report to the student with all of their errors. The students will also be able to submit their labs, and the labs will be graded, and the grade will be displayed to the student after it is approved by the instructor.
Lab Instructor
The instructor will receive a report of what the students got correct and incorrect on the pre-labs for use in determining where the problem areas are. The system will also grade the labs for the instructor and display each student’s grade. The lab instructors will have the ability to view the errors on each lab and override the grade in the system if what the system classified as an error is deemed acceptable by the instructor. The lab instructors will also be able to sort students by the lab that the student attends and the lab number that they wish to view.
Lecture Instructor
Lecture Instructors will have the ability to view student’s lab grades in the system that the lab instructor has approved.
Course Administrator
The course administrator will have the ability to edit accounts and override any registration errors made by the students. The course administrator will be able to submit the keys for grading, and in addition to these features, will have all the features of the lab instructor.
IV. External Interfaces and Data Flows
External Interfaces:
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.
Register View:
This is the view students will see when attempting to create an account. They will fill in their Name, Username, Password twice for verification, Lecture Section, and Lab Section and then click on a "Register" button to finish their registration.
Student View:
This is a view of what the students will see when they log into the system. 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 pre-labs.
Lab Instructor View 1:
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 2:
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.
Lecture Instructor View 1:
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 2:
This is where the grades selected in Lecture Instructor View 1 are displayed.
Course Administrator View 1:
This is the area where the Course Administrator 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, a single lecture session, or all students. Then they will select if they want to view all labs or a specific lab.
Course Administrator View 2:
This is where the grades selected in Course Administrator View 1 are displayed. From this screen they will also be able to launch the screen to edit a student's account (Course Administrator View 3).
Course Administrator View 3:
When the Course Administrator chooses a student whose account needs to edited, 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, and lab section.
Data Flow Diagrams:
Level 0 Context Free Diagram
This diagram is a general overview of the users and how they will interact with the Automated Excel Grading System.
Level 1
This diagram is a more in depth description of how the users will interact with the interface including how the database will be utilized to retrieve information.
Level 2 Grading System
This diagram shows how the grading system works. The main process is to grade the lab and pre lab files, and this shows how the grading system will retrieve files and the key, and store the results after grading.
Level 3 User Interface
This diagram shows the detailed design of how the users will interact with the interface and how the interface will interact with the database. It also shows the processes that the users will be able to perform on the system.
V. Functional Requirements
We will attempt to achieve the following functional requirements for the Automated Excel Grading System:
VI. Performance Requirements
The Automated Excel Grading System will be designed to work on most web browsers. We will be testing our system on the following web browsers: Microsoft Internet Explorer 6.0 and 7.0, Mozilla Firefox 1.0.7, and Safari 2.0.1.
The online interface will be designed to work on any screen resolution.
VII. Exception Handling
The system will have the ability to alert the user in specific cases:
· If an incorrect log in name or password is entered the user will be alerted and asked to re-enter his/her user name and password.
· When a lab and pre-lab are submitted it will show the student a list of the assignments submitted to verify that their lab or pre-lab was correctly and completely submitted.
· If the user submits a file with an unrecognizable extension it will let the user know that they have submitted an incorrect file.
VIII. Early Subsets and Implementation Priorities
The most important aspects of the Automated Excel Grading System are as follows:
· A user-friendly interface.
· A grading system for labs that provides both grades and feedback regarding errors made to both the student and the lab instructor.
· A grading system for pre-labs which will provide immediate feedback to both students and lab instructors.
· The ability for instructors to change/edit grades.
IX. Foreseeable Modifications and Enhancements
If time and resources allows we will consider making the following enhancements to the software:
- Updates on Student Account homepages to tell them that a pre-lab/lab is due soon or is, in fact, over-due.
- Updates on Lab Instructor homepage of highest occurring problem area’s on pre-labs.
- Show errors directly on students excel files in the form of comments.
- Create user interface for instructor to generate grading keys.
X. Acceptance Criteria
The Automated Excel Grading System will complete the following tasks in a web-based environment for each user type:
1. Student Accounts:
· Have the ability to create an account with their name, email address, class section number, and lab section number.
· Have the ability to log onto the system via a website and view a homepage oriented for students.
· Have the ability to upload Pre-Labs to the system an infinite amount of times and receive prompt graded feedback.
· Have the ability to upload Labs which Lab Instructors will be able to view.
· Have the ability to view graded Labs with explanations of errors made. This will be done on a page easily navigated to from the Student homepage.
2. Lab Instructor Accounts:
· Have the ability to log onto the system via a website and view a homepage oriented for Lab Instructors.
· Have the ability to easily navigate through the website from their homepage to other useful pages that will perform further tasks as described in bullets below.
· Have the ability to view all grades of their students by choosing a section. This will be done on a page easily navigated to from the Lab Instructor home page.
· Have the ability to view graded Labs, including explanations of errors and change grades as needed and then mark the lab grade correct so it can be uploaded to the student’s grades. This will be done on a page easily navigated to from the Lab Instructor home page.
3. Lecture Instructor Accounts:
4. Course Administrator Accounts:
XI. Testing Requirements
The Automated Excel Grading System will be tested with
a series of sample lab keys and solutions that will be provided to us by our
client Ms. Jami Cotler. We will test the
student accounts by creating new accounts in the system in various correct and
incorrect ways. We will also attempt to upload the sample labs and pre-labs in
various correct and incorrect ways in order to ensure the grade and error
reports are accurate. We will test the Lab
Instructor accounts by checking the labs we uploaded with the student accounts
and attempt to change the grade in the system and then view the grade. We will test the Lecture Instructor accounts
by attempting to view the grades of labs we submitted with the student account
and approved with the Lab Instructor account. We will test the Course
Administrator account by uploading the lab key samples.
XII. Design Hints and Guidelines
The system will be designed to work on any computer with an internet connection using the 3 most popular internet browsers:
Microsoft Internet Explorer 6.0 and 7.0
Mozilla Firefox 1.0.7
XIII. Gantt Chart
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. Glossary of Terms
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.
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.