Preliminary Design

Client: Dr. Darren Lim, Assistant Professor

 

 

 

 

 

Proposed Project: Java Online Learning Toolkit (J.O.L.T.)

 

 

 

 

 

 

Delivered by: 518 Interactive

Team Members:

Lawrence Gregory

Christopher Hughto

Erik Stegmann

Connor Vander Bogart

Jedidiah Turnbull

 

 

 

Revision: 1.0

Date: 12/08/2009


Contents

1      Introduction. 1

1.1      Purpose. 1

1.2      Scope. 1

1.3      Audience. 2

2      JOLT Requirements Specification. 2

2.1      Product Overview and Summary. 2

2.2      Development, Operating, and Maintenance Environments. 2

2.3      Production Environment 4

2.4      Functional Requirements Inventory. 5

2.4.1      Functional Requirements: Student: 5

2.4.2      Functional Requirements: Faculty: 6

2.4.3      Functional Requirements: Course Coordinator: 7

2.4.4      Functional Requirements: Administrator: 8

2.4.5      Java SDK: 8

2.5      Non-Functional Requirements. 9

2.6      UML Deployment Diagram.. 10

2.7      Web Site Map. 11

2.7.1      Context Web Site Map. 12

2.7.2      Student Web Site Map. 13

2.7.3      Faculty Web Site Map. 14

2.7.4      Course Coordinator Web Site Map. 15

2.7.5      Administrator Web Site Map. 16

2.8      Data Flow Diagrams. 17

2.9      Activity Diagrams. 17

2.10       Data Dictionary. 17

3      Student User 18

3.1      Student User Narrative. 18

3.2      Preliminary Student User Screens. 18

3.2.1      JOLT Login Page. 19

3.2.2      Student Registration Page. 20

3.2.3      Student Registration Page (Error Message - Email) 21

3.2.4      Student Registration Page (Error Message – Invalid Field) 22

3.2.5      Student Registration Page (Completed) 23

3.2.6      Student Account Activation. 24

3.2.7      Invalid Login Screen. 25

3.2.8      Invalid Login Screen (After Dialog) 26

3.2.9      Account Lockout Screen. 27

3.2.10    Student Home Page. 28

3.2.11    Course Enrollment (Invalid PIN) 29

3.2.12    Course Enrollment (Completed) 30

3.2.13    Course Selection. 31

3.2.14    Section Home Page. 32

3.2.15    View Active Assignments. 33

3.2.16    Problem Set Overview.. 34

3.2.17    Solve Problem.. 35

3.2.18    Student Solution Attempt (Compile Error) 36

3.2.19    Student Solution Attempt (Incorrect Output) 37

3.2.20    Student Solution Attempt (Timeout) 38

3.2.21    Solve Problem (Reset Source Window) 39

3.2.22    Solve Problem (Navigate Away) 40

3.2.23    Updated Problem Set Overview Screen (Navigate Away) 41

3.2.24    Student Solution Attempt (Completed) 42

3.2.25    Updated Problem Set Screen. 43

3.2.26    View Gradebook. 44

3.2.27    View Profile. 45

3.2.28    Edit Profile. 46

3.2.29    Edit profile (Invalid Data) 47

3.2.30    Edit Profile (Invalid Email Address) 48

3.2.31    Edit Profile (New Email Address) 49

3.2.32    Edit Profile (Valid Update) 50

3.2.33    Logout 51

4      Faculty User 52

4.1      Faculty User Case Narrative. 52

4.2      Preliminary Faculty Screens. 53

4.2.1      JOLT Login. 53

4.2.2      Invalid Login Screen. 54

4.2.3      Invalid Login Screen (After Dialog) 55

4.2.4      Account Lockout Screen. 56

4.2.5      Faculty Home Page. 57

4.2.6      Section Home Page. 58

4.2.7      Create Problem.. 59

4.2.8      Create Problem (Invalid Field) 60

4.2.9      Create Problem (Max Test Cases) 61

4.2.10    Faculty Sandbox. 62

4.2.11    Edit Problem.. 63

4.2.12    Create Problem (Invalid Field Error) 64

4.2.13    Create Problem (Solution Compile Error) 65

4.2.14    Confirm Problem.. 66

4.2.15    Publish Problem (Completed) 67

4.2.16    Create Problem Set 68

4.2.17    Create Problem Set (Error) 70

4.2.18    Create Problem Set (No Problems Added Error) 71

4.2.19    Create Problem Set (Confirm) 72

4.2.20    Create Problem Set (Completed) 73

4.2.21    Edit Problem Set (Completed) 74

4.2.22    Activate/Assign Problem Set 75

4.2.23    Deactivate Problem Set 76

4.2.24    Create Announcement 77

4.2.25    Create Announcement (Add Recipients) 78

4.2.26    Create Announcement (Missing Field) 79

4.2.27    Create Announcement (No Recipients) 80

4.2.28    Create Announcement (Complete) 81

4.2.29    View Gradebook. 82

4.2.30    Edit Gradebook (Editing) 83

4.2.31    Edit Gradebook (Invalid Field) 84

4.2.32    Edit Gradebook (Blank) 85

4.2.33    Edit Gradebook (Complete) 86

4.2.34    Manage Pools. 87

4.2.35    View Sandbox. 88

4.2.36    View Profile. 89

4.2.37    Edit Profile. 90

4.2.38    Edit Profile (Error) 91

4.2.39    Edit Profile (Invalid Field) 92

4.2.40    Edit Profile (Completed) 93

4.2.41    Logout 94

5      Course Coordinator User 95

5.1.1      Course Coordinator User Case Narrative. 95

5.2      Preliminary Course Coordinator User Screens. 96

5.2.1      JOLT Login. 96

5.2.2      Invalid Login Screen. 97

5.2.3      Invalid Login Screen (After Dialog) 98

5.2.4      Account Lockout Screen. 99

5.2.5      Course Coordinator Home Page. 100

5.2.6      Manage Faculty Accounts. 101

5.2.7      Create Faculty Account 102

5.2.8      Create Faculty Account (Error) 103

5.2.9      Create Faculty Account (Error) 104

5.2.10    Create Faculty Account (Completed) 105

5.2.11    Edit Faculty Account 106

5.2.12    Edit Faculty Account (Error) 107

5.2.13    Edit Faculty Account (Error) 108

5.2.14    Edit Faculty Account (Completed) 109

5.2.15    Create Course Section. 110

5.2.16    Create Course Section (Error) 111

5.2.17    Edit Course Section. 112

5.2.18    Edit Course Section (Error) 113

5.2.19    Course Home Page. 114

5.2.20    View Gradebook. 115

5.2.21    Edit Gradebook (Editing) 116

5.2.22    Edit Gradebook (Invalid Field) 117

5.2.23    Edit Gradebook (Blank) 118

5.2.24    Edit Gradebook (Complete) 119

5.2.25    Create Problem.. 120

5.2.26    Create Problem (Invalid Field) 121

5.2.27    Create Problem (Max Test Cases) 122

5.2.28    Course Coordinator Sandbox. 123

5.2.29    Edit Problem.. 124

5.2.30    Create Problem (Invalid Field Error) 125

5.2.31    Create Problem (Solution Compile Error) 126

5.2.32    Confirm Problem.. 127

5.2.33    Publish Problem (Completed) 128

5.2.34    Create Problem Set 129

5.2.35    Create Problem Set (Error) 130

5.2.36    Create Problem Set (No Problems Added Error) 131

5.2.37    Create Problem Set (Confirm) 132

5.2.38    Create Problem Set (Completed) 133

5.2.39    Edit Problem Set (Completed) 134

5.2.40    Activate/Assign Problem Set 135

5.2.41    Deactivate Problem Set 136

5.2.42    Manage Pools. 137

5.2.43    Accept Private Problems to Course Pool 138

5.2.1      Generate Reports. 139

5.2.2      Create Announcement 140

5.2.3      Create Announcement (Add Recipients) 141

5.2.4      Create Announcement (Missing Field) 142

5.2.5      Create Announcement (No Recipients) 143

5.2.6      Create Announcement (Complete) 144

5.2.1      View Profile. 145

5.2.2      Edit Profile. 146

5.2.3      Edit Profile (Error) 147

5.2.4      Edit Profile (Invalid Field) 148

5.2.5      Edit Profile (Completed) 149

5.2.1      Logout 150

6      Administrator User 151

6.1      Administrator User Case Narrative. 151

6.2      Preliminary Administrator User Screens. 151

6.2.1      JOLT Login. 152

6.2.2      Invalid Login Screen. 153

6.2.3      Administrator Home Page. 154

6.2.4      Manage Course Coordinators. 155

6.2.5      Create Course Coordinator Account 156

6.2.6      Create Course Coordinator Account (Error) 157

6.2.7      Create Course Coordinator Account (Completed) 158

6.2.8      Edit Course Coordinator Account 159

6.2.1      Create Faculty Account 160

6.2.2      Create Faculty Account (Error) 161

6.2.3      Create Faculty Account (Error) 162

6.2.4      Create Faculty Account (Completed) 163

6.2.5      Edit Faculty Account 164

6.2.6      Edit Faculty Account (Error) 165

6.2.7      Edit Faculty Account (Error) 166

6.2.8      Edit Faculty Account (Completed) 167

6.2.9      Create Course. 168

6.2.10    Create Course (Error) 169

6.2.11    Create Course (Confirm) 170

6.2.12    Create Course (Completed) 171

6.2.13    Edit Course. 172

6.2.14    Edit Course (Error) 173

6.2.15    Edit Course (Completed) 174

6.2.1      View Gradebook. 175

6.2.2      Edit Gradebook (Editing) 176

6.2.3      Edit Gradebook (Invalid Field) 177

6.2.4      Edit Gradebook (Blank) 178

6.2.5      Edit Gradebook (Complete) 179

6.2.6      Create Problem.. 180

6.2.7      Create Problem (Invalid Field) 181

6.2.8      Create Problem (Max Test Cases) 182

6.2.9      Course Coordinator Sandbox. 183

6.2.10    Edit Problem.. 184

6.2.11    Create Problem (Invalid Field Error) 185

6.2.12    Create Problem (Solution Compile Error) 186

6.2.13    Confirm Problem.. 187

6.2.14    Publish Problem (Completed) 188

6.2.15    Create Problem Set 189

6.2.16    Create Problem Set (Error) 190

6.2.17    Create Problem Set (No Problems Added Error) 191

6.2.18    Create Problem Set (Confirm) 192

6.2.19    Create Problem Set (Completed) 193

6.2.20    Edit Problem Set (Completed) 194

6.2.21    Activate/Assign Problem Set 195

6.2.22    Deactivate Problem Set 196

6.2.23    Manage Pools. 197

6.2.24    Accept Private Problems to Course Pool 198

6.2.25    Generate Reports. 199

6.2.26    Create Announcement 200

6.2.27    Create Announcement (Add Recipients) 201

6.2.28    Create Announcement (Missing Field) 202

6.2.29    Create Announcement (No Recipients) 203

6.2.30    Create Announcement (Complete) 204

6.2.31    View Profile. 205

6.2.32    Edit Profile. 206

6.2.33    Edit Profile (Error) 207

6.2.34    Edit Profile (Invalid Field) 208

6.2.35    Edit Profile (Completed) 209

6.2.36    Logout 210

7      Appendices. 211

7.1      Appendix 1: Sources of Information. 211

7.2      Appendix 2: Glossary of Terms. 212

7.3      Appendix 3:Current Timeline (GANTT Chart) 214

............................................................... 214

7.4      Appendix 4: Spring 2010 Timeline (GANTT Chart) 215

 


1         Introduction

 

1.1       Purpose

This document broadens the software requirements identified for the Java Online Learning Toolkit (JOLT) for the client, Dr. Darren Lim, Assistant Professor of the Computer Science Department of Siena College.  The software requirements have been previously defined in the Software Requirements Specification (SRS) document; however, the requirements defined within this document supersede those of the SRS.

This document contains a preliminary user interface for JOLT.  The interface is organized by user type, starting with Student, then progressing to Faculty, then Course Coordinator, and finally Administrator.  The user-specific interfaces are laid out in a sequential manner, starting with the first task a user completes to the last task a user completes.

This document serves these main purposes:

·         To provide a preliminary interface design for all users of JOLT.

·         To provide a more complete Requirements Inventory.

 

There are several supplementary documents to this design document, which are available under the “Documents” menu of the 518 Interactive Website.  These documents include:

 

·         Data Flow Diagram Document:  Provides a graphical representation of how data is transmitted and manipulated within JOLT.

·         Activity Diagram Document: Provides a graphical representation of how specific tasks are accomplished within JOLT.

·         Data Dictionary: Provides a repository of all the data entities that JOLT utilizes.

·         Test Plan Document: For the scope of this document, the Test Plan Document provides three unit tests.

 

The screenshots provided within this document are subject to change for the Detailed Design Document, which will be delivered in the Spring 2010 semester.

All references to Source Code imply Java™ Source Code, made to work with Java™ Version 1.6

 

1.2       Scope

The requirements and screen designs in this document comprise the scope of JOLT’s requirements and interface.  This Preliminary Design document supersedes any prior documents as the descriptor of JOLT’s requirements. 

 

1.3       Audience

This document is intended for 518 Interactive, Dr. Lim, members of the Fall 2009 Software Engineering I class, and the other clients, Dr. Lederman and Dr. Breimer.

2         JOLT Requirements Specification

 

2.1       Product Overview and Summary

The proposed Java Online Learning Toolkit  (JOLT) is a comprehensive web application designed to enhance the experience of learning the Java programming language.  JOLT shall allow for students enrolled in programming courses to solve programming problems, which are created and entered by the Computer Science faculty.  JOLT shall provide a personal gradebook for all students, as well as a course gradebook for Computer Science faculty members which will be used to track progress.

 

2.2       Development, Operating, and Maintenance Environments

JOLT will be developed in Siena College’s Software Engineering Lab, located in Roger Bacon, third floor.  The members of 518 Interactive will be using the following resources:

 

Windows Machine:

·         Operating System: Microsoft Windows Vista Enterprise

o   Build: 6002

o   Revision: 18005

o   Service Pack 2

·         Processor: Intel® Core™2 Duo CPU

·         Model: E7500

·         Speed 2.93 GHz

·         Memory (RAM): 4.00 GB

·         System Type: 32-bit

·         Dual Monitor Setup

·         Software Installed:

o   Microsoft Office 2007 (Including Microsoft Project)

o   Macromedia Dreamweaver, Fireworks, Flash , Freehand, Studio (2004 Versions)

o   Internet Explorer, Mozilla Firefox, Google Chrome


 

Macintosh Machine:

·         Operating System: Apple Mac OS X

o   Version 10.4.11

o   Model: iMac5

·         Processor: Intel Core2 Duo

o   Speed: 2 GHz

·         Memory (RAM): 1.00 GB

·         Dual Monitor Setup

·         Software Installed:

o   Microsoft Office 2004 for Mac

o   Macromedia Dreamweaver, Fireworks, Flash, Freehand, Studio (2004 Versions)

o   Safari, Mozilla Firefox

 

JOLT will be implemented, and designed to run on the following specifications:

·         Operating System: CentOS (Linux) Release 5.2 (Final)

·         Server Name: oraserv.cs.siena.edu

·         CPU Type: x86_64

·         Web Server: Apache Version 2.2.9

·         PHP Version: 5.2.6

·         Database: MySQL Version 5.0.45; Oracle Version 9i

·         Java™ Version: 1.6.0_10-rc

·         Java™ SE Runtime Environment: Build 1.6.0_10-rc-b28

·         Java HotSpot™ 64-Bit Server VM: Build 11.0-b15, mixed mode)

 

Users of JOLT will be able to access the web application through an Internet connection, with any of the following browsers (of the latest version):

·         Microsoft Internet Explorer

·         Mozilla Firefox

·         Apple Safari

·         Google Chrome

·         Opera Software’s Opera Browser

 

 

The operating and maintenance environments have not been determined at this time.


2.3       Production Environment

The production environment is the set of hardware, software, and tools that a system will run on.  JOLT is planned to be run on Siena’s oraserv server (oraserv.cs.siena.edu), which has the following characteristics.

·         Operating System: CentOS (Linux) Release 5.2 (Final)

·         Server Name: oraserv.cs.siena.edu

·         CPU Type: x86_64

·         Web Server: Apache Version 2.2.9

·         PHP Version: 5.2.6

·         Database: MySQL Version 5.0.45;

·         Java™ Version: 1.6.0_10-rc

·         Java™ SE Runtime Environment: Build 1.6.0_10-rc-b28

·         Java HotSpot™ 64-Bit Server VM: Build 11.0-b15, mixed mode)

 

 

 


2.4        Functional Requirements Inventory

The following list outlines the required functionality to be included in the final solution.

Java Online Learning Toolkit will be a web-based application viewable on the major browsers. Browsers included will be Internet Explorer 8, Mozilla Firefox, Safari, and Google Chrome.

All references to Source Code imply Java™ Source Code, made to work with Java™ Version 1.6

The requirements are listed according to User Case, as follows:

 

2.4.1 Functional Requirements: Student:

·         Will be able to register online with the system

o   Will receive email confirmation following registration

·         Will be able to log into system.

o   A failed log in will display an appropriate error message.

o   A link to an identity validation page will be provided if password is forgotten.

·         Will be able to enroll into courses they are currently taking

o   PIN number provided by instructor required to enroll into course on the system

·         Will be able to view announcements sent to them.

·         Will be able to view problem sets for each course they are in enrolled in

o   Will be able to view each individual problem within the problem set

o   Will be able to view hints and solutions to individual problems, if provided by problem creator.

·         Will be able to submit solutions to individual problems within active problem sets in the form of Java™ source code

o   Code will be compiled by the system online

o   Student will receive immediate, automatic feedback on compile errors, if any

o   Student will receive immediate, automatic feedback on how their solution compares to the test cases

·         Will be able to complete problem sets

o   Will be able to navigate to individual problems in a problem set without completing them in a specific order   

o   Will be able to save any progress made for a problem or problem set

·         Will be able to view grades for each assignment in each class they are enrolled in.

·         Will be able to view all previously submitted solutions

o   Will have access to their solutions and grades for all prior classes they were enrolled in.

·         Will be able to log out

 

 


 

2.4.2 Functional Requirements: Faculty:

·         Will be able to log into the system

·         Will be able to create individual problems

o   Individual problems that are partially completed by faculty are saved to a sandbox area, until they are complete.

§  Once complete, problem gets transferred to private pool.

·         Will be able to create problem sets

o   Will be able to import previously created problems to a problem set

o   Will be able to import problems from the course pool to a problem set

o   Will be able to import problems from the global pool to a problem set

o   Will be able to individually create each problem for a problem set

·         Will be able to assign problems they create to a category

·         Will be able to assign a grading scheme to problem sets

o   Will be able to assign a point value to specific problems within the problem set

·         Will be able to assign problem sets to the students in the courses they teach

o   Will be able to set activation date and time of problem set

o   Will be able to set expiration date and time of problem set

·         Will be able to submit problems to a Course Pool

·         Will be able to search a Course Pool for problems

·         Will be able to search the Global Pool for problems

·         Will be able to view a grade book for each of the courses

·         Will be able to modify grades for all students in each of the courses they are currently teaching

·         Will be able to post announcements to students in their courses

·         Will be able to view announcements sent to them.

·         Will be able to interact with JOLT as a student user

·         Will be able to log out

 


 

2.4.3 Functional Requirements: Course Coordinator:

·         Will be able to log into the system

·         Will be able to create faculty accounts

·         Will be able to assign faculty to a course

·         Will be able to create problems and problem sets for courses they are in charge of

o   Individual problems that are partially completed by Course Coordinators are saved to a sandbox area, until they are complete.

§  Once complete, problem gets transferred to private pool.

·         Will have access to course tools which will provide statistics on problems and grades                              for a course

o   Will be able to create reports over multiple sections of a course involving all problems and problem sets or any subset thereof.   

o   Reports may include general statistics such as number of participants, average score, median, low score, and high score.                                 

·         Will be able to manage the course pool for each course they are in charge of

o   Will be able to add, modify, or delete any problem in their course pool

o   Will be able to submit problems to the global pool

·         Will be able to modify grades for all students currently enrolled in a course they currently manage

o   Will be able to keep track of all grades and any adjustments that are made

·         Will be able to create announcement for all faculty and students of courses they manage or any subset thereof

·         Will be able to log out

 


 

2.4.4 Functional Requirements: Administrator:

·         Will be able log in

·         Will be able to manage all accounts on the system

·         Will be able to create course coordinator and faculty accounts

o   Will be able to assign courses to course coordinators

·         Will have the same abilities as a course coordinator

·         Will be able to manage the global pool of problems

·         Will have access to tools for management of all accounts

o   Will be able to modify all account information for any user

o   Will be able to delete accounts

o   Will be able reset locked accounts

·         Will be able to create announcements for all course coordinators, faculty and students, or any subset thereof

·         Will be able to log out

 

 

2.4.5 Java SDK:

·         Will accept and attempt to compile all Java™ source code submitted by students

o   Will output compile errors, when applicable

o   Will create Java™ Byte Code upon a successful compilation

·         Will execute all successfully compiled Java™ solutions

o   Will monitor students’ submissions while they are running for runtime errors

o   Will kill a student’s submission if it takes too long to run (Timeout)

·         Will record the output generated from the students’ submissions

 

 

 

 


 

2.5       Non-Functional Requirements

A non-functional requirement is a requirement that specifies criteria that can be used to judge the operation of a system, rather than specific behaviors.  They are typically used to describe the qualities of a system.  Given this definition, there is no concrete way to measure whether or not a non-functional requirement has been met.

Non-Functional requirements have not yet been formally defined for JOLT.


2.6       UML Deployment Diagram

Deployment Diagrams are a Unified Modeling Language (UML) based diagram used to show devices and execution environments for a system.  It represents the physical layout of the System.  The Deployment Diagram for JOLT below shows the different browsers connecting via HTTP to JOLT.  It also shows the Development Environment connecting via SSH.  Finally JOLT is using various components and devices such as a database, and temporary directory.

 

                                                                                                                                                                                                                                                                                                                                                               


2.7       Web Site Map

A Web Site Map is a diagram that shows the structure of a website.  It allows the user to see the functionality available at any part of the site.  The following elements are used to build a Web Site Map:

Home Page: Denotes the main page for each user within JOLT.

Home: Denotes the initial page that all users see when navigating to JOLT.

Form: Denotes web pages that contain fields for users to input data.

Web Page: Denotes a generic page within JOLT.

Page Redirect: Denotes a forced change (by JOLT) in where the user is within the system.

Link: Shows links on a given Web Page.
Possible Page Result Link: Denotes a page that a user *may* see, depending on conditions within the page they are currently on.

Part of Common Header: Denotes pages that are common to all users, regardless of position within the diagram.

 

 


2.7.1 Context Web Site Map

This shows the initial pages for JOLT.  All subsequent Web Site Map diagrams show the User Home Pages broken down.


2.7.2 Student Web Site Map

 


2.7.3 Faculty Web Site Map


2.7.4 Course Coordinator Web Site Map


2.7.5 Administrator Web Site Map

 

2.8       Data Flow Diagrams

The Data Flow Diagrams (DFDs) are used for structure analysis and design.  DFDs show the flow of data from external entities into the system.  DFDs also show how the data moves and is transformed from one process to another, as well as its logical storage. 

Data Flow Diagrams are in an accompanied document titled “Data Flow Diagrams”, which can be found under the “Documents” link of the 518 Interactive Website.

 

 

 

2.9       Activity Diagrams

Activity Diagrams are a UML (Unified Modeling Language) specified diagram which shows workflows of stepwise activities and actions, with support for choice, iteration, and concurrency.  It outlines the process that Actors (both human and non-human) go through while interacting with the System to accomplish a specific task. 

Activity Diagrams are in an accompanied document titled “Activity Diagrams”, which can be found under the “Documents” link of the 518 Interactive Website.

 

 

 

2.10  Data Dictionary

The Data Dictionary lists all data entities within JOLT.    

The Data Dictionary is in an accompanied document titled “Data Dictionary”, which can be found under the “Documents” link of the 518 Interactive Website.

 


3         Student User

 

3.1       Student User Narrative

Students shall have the ability to register an account with the System.  Once registered, students will be able to log into the system via their unique username and password.  Once logged in, students will be able to enroll in only the courses they are currently taking.  Students will have the ability to view problems in a categorized manner.  Students will also be able to take exams and solve individual problems created by their instructor.  Students will be able to solve problems by submitting Java source code, which the system will compile and run against provided test data. While solving a set of problems, students will be able to navigate from problem to problem without completing them in a specific order. Students will be able to save their progress for any individual problem and work on it again during a later session.

Students will have a report card view which will allow them to view their own grades and progress in all current and past courses.  Students will be able to browse all of their own solutions as well.

 

3.2       Preliminary Student User Screens

The Student User shall have the following screens available. 

 


3.2.1 JOLT Login Page

 

This is the initial screen that Students will be presented with when they navigate to JOLT.  It prompts for a username and password, and provides a link for registration and forgotten password. 

 


 

3.2.2 Student Registration Page

 

This is the screen that Students will be presented with when they click the “Register” link on the Login Page.   Students are asked to provide information that is required for registration with JOLT.


3.2.3 Student Registration Page (Error Message - Email)

 

 

This is an example of an error message that Students would see if they fail to provide a valid email address.


3.2.4 Student Registration Page (Error Message – Invalid Field)

 

 

This is an example of an error message that Students would see if they fail to fill out all fields for registration.


3.2.5 Student Registration Page (Completed)

 

 

This is a confirmation screen that is displayed to Students when they successfully provide all required fields for registration.  The screen asks Students to follow the instructions provided in the email that was sent by JOLT.

 


3.2.6 Student Account Activation

 

This is the initial page again, but this time, a message is displayed to the Student which shows that their account has been activated.  Students reach this screen by clicking the link provided in the email that was sent to them when they registered with JOLT.


3.2.7 Invalid Login Screen

This error message will appear when a Student user enters an incorrect Username or Password.

 

 


3.2.8 Invalid Login Screen (After Dialog)

This is what the Student will see after clicking “Ok” in the Invalid Login error message.  This screen indicates that the Student has X more login attempts before their account is locked out.


3.2.9 Account Lockout Screen

This screen appears when a Student user has too many incorrect login attempts for a particular username, and is locked out of the system.


3.2.10  Student Home Page

This screen appears once a Student user successfully authenticates with JOLT.  This screen indicates that the Student is not enrolled in any courses.

 


 

3.2.11  Course Enrollment (Invalid PIN)

This screen is shown when a user attempts to enter an incorrect PIN to enroll in a course.


3.2.12  Course Enrollment (Completed)

This screen is shown when a Student user enters a correct PIN to register for a course.


3.2.13  Course Selection

This screen shows a Student user who is enrolled in multiple courses over multiple semesters.  Student users have access to all prior courses.


3.2.14  Section Home Page

This is an example Section Home Page that a Student user would see once selecting a Section on their Home Page.


3.2.15  View Active Assignments

This is the active assignments page that a Student User will see once selecting the “Active Assignments” link on the Section Homepage.  The Assignments are clickable, which bring the Student to the Assignment’s Overview Page.

 

 


3.2.16  Problem Set Overview

This is an example Problem Set Overview Screen.  This screen shows each problem within the problem set, as well as each problem’s category, point value, and completion status.


3.2.17  Solve Problem

This is an example Solve Problem screen.  The Student User is presented with the Problem Name, Description, and a text area for inputting Java™ Source Code.  The text area is pre-populated with a method signature.


3.2.18  Student Solution Attempt (Compile Error)

This is the Solve Problem Screen with an example Compile Error.  This is shown when a Student enters Java™ Source Code that is not syntactically correct, and then pushes the “Compile, Save, Run” Button.


3.2.19  Student Solution Attempt (Incorrect Output)

This is the Solve Problem Screen with incorrect output.  This is shown when a Student clicks the “Compile, Save, Run” button after entering Java™ Source Code that is syntactically correct, but produces the wrong output.


3.2.20  Student Solution Attempt (Timeout)

This is the Solve Problem Screen with a timeout error.  This is shown when a Student clicks the “Compile, Save, Run” button after entering Java™ Source Code that is syntactically correct, but fails to complete execution within a reasonable amount of time.  This time limit is to be determined at a later date.


3.2.21  Solve Problem (Reset Source Window)

This is the Solve Problem Screen with a dialog asking if the Student wants to reset the Source Code window back to the default signature.  This appears when the Student clicks the “Reset Problem” button.

 

 


3.2.22  Solve Problem (Navigate Away)

This pop up will appear if the user has code entered into the “Source Code” text area and clicks on a link other than “Compile, Save, Run” to navigate to another page.  If the Student decides they still want to navigate away from this screen they will click “Yes”, their code will be saved to the database and the problem and problem set marked INC for incomplete. If the Student clicks “No” the popup will disappear, no navigation will occur and the screen will be just as the Student left it before they clicked the link.


3.2.23  Updated Problem Set Overview Screen (Navigate Away)

This is an example Problem Set Overview screen with an Incomplete Problem.  This occurs when a student navigates away from a problem once attempting to solve it.

 


3.2.24  Student Solution Attempt (Completed)

This screen appears when the Student enters a Java™ solution that passes all of the provided test cases.


3.2.25  Updated Problem Set Screen

This is an example Problem Set Overview Screen showing a completed problem.  The Students total score is shown on the bottom.

 


3.2.26  View Gradebook

This is an example of the Student gradebook for a particular section.  This screen is sortable by name, due date, and grade.  The Assignment Name fields are clickable, with each link bringing you to the respective Problem Set Overview.


3.2.27  View Profile

 This screen appears when the Student clicks the “Profile” button in the header of any page.  It shows the Student’s profile information.


3.2.28  Edit Profile

This screen allows a Student user to edit their profile information.  The Students gets here by clicking the “Edit Profile” button on the Student Profile Page.


3.2.29  Edit profile (Invalid Data)

This screen appears when a Student tries to save changes to their profile with invalid or missing data.  The invalid fields are indicated to the user.


3.2.30  Edit Profile (Invalid Email Address)

This message appears when the Student enters an invalid email address on the Edit Profile screen.

 


3.2.31  Edit Profile (New Email Address)

This message appears when the Student enters a new email address in the Edit Profile Screen.  They are required to validate the new email address.

 


3.2.32  Edit Profile (Valid Update)

This screen shows a confirmation that the Student user has successfully updated their account information.

 

 

 


3.2.33   Logout

This screen shows a Student who has just logged out of JOLT by clicking the Logout button in the header.


4         Faculty User

 

4.1       Faculty User Case Narrative

Faculty shall have the ability to log into the system via a unique username and password.  Once logged in, Faculty will be able to select a course and then create individual problems as well as problem sets for that course.  Each problem will be categorized based on type and difficulty.  Faculty will be able to assign a grading scheme to problems and problem sets.  Each problem created will have the ability to be modified; however, all changes will be recorded into the System as a new problem.  This will allow users to view problems and problem sets in a temporal manner.  

Faculty will have the ability to submit their problems and problem sets to a “Course Pool”, which will allow other faculty members who teach the same course access to their problems and problem sets. Faculty will have the ability to search a Course Pool or the Global Pool.

Faculty will have a grade book view which will allow them to see the progress of each student that they instruct or have previously instructed. Faculty will have the ability to alter any grade that was assigned to a student in their course. Faculty will have the ability to send a broadcast message to students that they instruct.  Faculty will have the ability to go into a Student mode which will modify their access to that of a Student.

 

 


4.2       Preliminary Faculty Screens

The Faculty User shall have the following screens available. 

 

4.2.1 JOLT Login

 

This is the initial screen that Faculty will be presented with when they navigate to JOLT.  It prompts for a username and password, and provides a link for forgotten password.  Note that faculty accounts are created by Course Coordinators and/or the Administrator.  No self-registration is allowed. 

 


4.2.2 Invalid Login Screen

This error message will appear when a Faculty user enters an incorrect Username or Password.

 

 


4.2.3 Invalid Login Screen (After Dialog)

This is what the Faculty will see after clicking “Ok” in the Invalid Login error message.  This screen indicates that the Faculty has X more login attempts before their account is locked out.


4.2.4 Account Lockout Screen

This screen appears when a Faculty user has too many incorrect login attempts for a particular username, and is locked out of the system.


4.2.5 Faculty Home Page

This is the Faculty Home Page.  This page is pre-populated with their courses by the Course Coordinator.  From here, the Faculty can select a course, or create an announcement. 

 


4.2.6 Section Home Page

This is the Section home page for a Faculty member.  From here, they can manage the gradebook, assignments, and pools.  They can also create a problem or problem set.

 


4.2.7 Create Problem

This is the Create Problem page for a faculty member.  From here, the faculty enters all information about a problem.


4.2.8 Create Problem (Invalid Field)

This screen shows an error message indicating an invalid field is present on the Create Problem Screen.


4.2.9 Create Problem (Max Test Cases)

This screen shows a problem with the maximum amount of test cases allowed (25).  Notice the “Add Problem” button is no longer available.


4.2.10  Faculty Sandbox

This is the Faculty sandbox.  The sandbox stores all problems that are not completed and ready for the pool.  Clicking the “Save Problem” button on the Create problem screen will store the problem in the sandbox.  Clicking a problem name will bring up a window to edit the problem.


4.2.11  Edit Problem

This is the edit problem screen that the Faculty user will see when they choose to edit a problem from either their private pool, the course pool, the global pool, or the sandbox.


4.2.12  Create Problem (Invalid Field Error)

This pop up will display if the user has an invalid or missing field when they select the create problem button. The missing field or fields will be highlighted in red.

 

 

4.2.13  Create Problem (Solution Compile Error)

This screen will appear when the Faculty user clicks the “Create Problem” button with invalid code inputted in the “Solution Code text box. The compiler will output the error to the screen above the “Solution Code” box.


4.2.14  Confirm Problem

This screen shows a summary of the new problem about to be created.

 


4.2.15  Publish Problem (Completed)

This screen shows a confirmed problem that has been added to the Faculty private pool.  

 


4.2.16  Create Problem Set

This is an example of the Create Problem Set Screen.  Faculty can use problems from their own pool, the course pool, or the global pool when creating a Problem Set.  Clicking on a problem in the problem set area will allow the faculty user to edit the problem.  Point values can be assigned to each problem.


4.2.17  Create Problem Set (Error)

This is an example error message showing invalid fields on the Create Problem Set Screen.

 

 

4.2.18  Create Problem Set (No Problems Added Error)

This is an example error message showing a Problem Set with no problems added to it.


4.2.19  Create Problem Set (Confirm)

This is the confirmation screen for creating a new Problem Set.  Clicking “Create Problem Set” will add the problem set to the pool.  Clicking “Edit Problem Set” will allow the user to go back and make changes.


4.2.20  Create Problem Set (Completed)

This is a confirmation message showing a created Problem Set.  There is a button to go to their Pool screen.

 


4.2.21  Edit Problem Set (Completed)

This is the screen for Editing an existing Problem Set.  The format of the screen is identical to the Create Problem Set screen.  All error screens for Edit Problem Set are identical to the ones for Create Problem Set.


4.2.22  Activate/Assign Problem Set

This is the screen to activate a Problem Set for a specific course.  Problem Sets can either be activated instantly, or set to be active at a later date.

 


4.2.23  Deactivate Problem Set

This screen allows users to deactivate any active problem set for a specific course.  This screen is only used for manual deactivation.  JOLT will automatically deactivate problem sets once the expiration date and time have been passed.


4.2.24  Create Announcement

This is the screen to create an announcement to be broadcast to users.  Users select recipients of the announcement, and provide a title and announcement text.


4.2.25  Create Announcement (Add Recipients)

This screen shows an announcement with populated data and selected recipients.  Using the left and right arrow buttons add and remove users from the recipient list.


4.2.26  Create Announcement (Missing Field)

This shows an error message for a missing field when creating an announcement. This appears once the user selects the “Post Announcement” button.


4.2.27  Create Announcement (No Recipients)

This shows an error message when creating an announcement with no recipients. This appears once the user selects the “Post Announcement” button.


4.2.28  Create Announcement (Complete)

This shows a successfully created announcement.  This appears once the user selects the “Post Announcement” button.


4.2.29  View Gradebook

This is the gradebook view for a specific course for a faculty user.  Clicking on an Assignment Name brings the user to the Problem Set Overview screen.  Clicking on the grade allows the user to change the grade.


4.2.30  Edit Gradebook (Editing)

This shows a user editing a student’s grade.  Clicking the grade changes the field to a text box for editing.

 


4.2.31  Edit Gradebook (Invalid Field)

Inputting an invalid grade prohibits the user from updating the grade.


4.2.32  Edit Gradebook (Blank)

Leaving the field blank disallows the user from updating the grade field.  They are instructed to use the “Delete” field if they wish to delete the grade.


4.2.33  Edit Gradebook (Complete)

Once updating a grade, the user remains at the gradebook screen, but the student’s grade has been updated, as well as the High, Average, and Low scores.


4.2.34  Manage Pools

Clicking the “Manage Pools” button on the Section Home Page brings the user to this screen.  Problems and Problem Sets can be dragged from the Course and Global pools to the user’s private pool.  Problems and Problem Sets can be requested to be added to the Course Pool by dragging them to the Course Pool.


4.2.35  View Sandbox

Clicking the “View Sandbox” button on the Pools page allows the user to manage their sandbox.  From here, they can create a new problem, remove a problem from the sandbox, or transfer the problem to their private pool.  Clicking the problem name allows the user to edit the problem.


4.2.36  View Profile

Clicking the “Profile” button in the header will bring faculty members to this screen, where they can view their profile information.  There is a button to update their information as well.


4.2.37  Edit Profile

This screen allows a Faculty user to edit their profile information.  The Faculty user gets here by clicking the “Edit Profile” button on the Faculty Profile Page.

 


4.2.38  Edit Profile (Error)

This error message is shown when a faculty user tries to update their email address with an invalid email address.


4.2.39  Edit Profile (Invalid Field)

This error message is shown when a Faculty user tries to update their profile information with invalid or missing information.


4.2.40  Edit Profile (Completed)

This screen is shown when a Faculty user successfully updates their profile information.


4.2.41  Logout

This screen shows a Faculty who has just logged out of JOLT by clicking the Logout button in the header.

 


5         Course Coordinator User

 

5.1.1 Course Coordinator User Case Narrative

The Course Coordinator shall have the ability to log into the System via a unique username and password.  Once logged in, the Course Coordinator will be able to create Faculty accounts.  The Course Coordinator will also be able to create courses and assign the courses to specific Faculty members.  The Course Coordinator will have access to course-wide reporting tools, which will allow for statistical analysis of problems and problem sets.

            The Course Coordinator will be able to manage the “Course Pool” for each course they manage.  The Course Coordinator will be responsible for adding, modifying, and deleting problems and problem sets from the pool.  The Course Coordinator submits problems and problem sets to the “Global Pool” for use by all faculty members.

            The Course Coordinator will be able to send broadcast messages to faculty members and students that participate in the courses that the Course Coordinator manages, or a subset thereof.


5.2       Preliminary Course Coordinator User Screens

The Course Coordinator shall have the following screens available. 

5.2.1 JOLT Login

 

This is the initial screen that Course Coordinator will be presented with when they navigate to JOLT.  It prompts for a username and password, and provides a link for forgotten password.  Note that Course Coordinator accounts are created by the Administrator.  No self-registration is allowed. 

 


5.2.2 Invalid Login Screen

This error message will appear when a Course Coordinator user enters an incorrect Username or Password.

 

 


5.2.3 Invalid Login Screen (After Dialog)

This is what the Course Coordinator will see after clicking “Ok” in the Invalid Login error message.  This screen indicates that the Course Coordinator has X more login attempts before their account is locked out.


5.2.4 Account Lockout Screen

This screen appears when a Course Coordinator user has too many incorrect login attempts for a particular username, and is locked out of the system.


5.2.5 Course Coordinator Home Page

 

This is the screen that the Course Coordinator is presented with after they successfully log in.  They have the ability to manage faculty accounts or select a course.

 


5.2.6 Manage Faculty Accounts

This screen is reached from the “Manage Faculty” button on the Course Coordinator screen.   This screen allows Course Coordinators to edit and add faculty accounts.


5.2.7 Create Faculty Account

This screen is used by the Course Coordinator to create a Faculty account.  The Course Coordinator has the ability to assign course sections to the new faculty at this time.


5.2.8 Create Faculty Account (Error)

This screen shows an error in creating a Faculty Account.  An invalid email address has been provided.  This message would appear after clicking the “Create Account” button.


5.2.9 Create Faculty Account (Error)

This screen shows an error in creating a Faculty Account.  There are invalid or blank fields present on the form.  This message would appear after clicking the “Create Account” button.

 


5.2.10  Create Faculty Account (Completed)

This is a confirmation message telling the Course Coordinator that they have registered a faculty account.


5.2.11  Edit Faculty Account

This screen allows a Course Coordinator to edit a faculty member’s account.  They can manipulate any field, as well as add/remove sections to/from the faculty account.

 


5.2.12  Edit Faculty Account (Error)

This screen shows that an invalid email address has been entered when editing a Faculty account.  This appears after clicking the “Save Changes” button.

 


5.2.13  Edit Faculty Account (Error)

This screen shows invalid/blank fields are present on the form when editing a Faculty account.  This appears after clicking the “Save Changes” button.


5.2.14  Edit Faculty Account (Completed)

This screen confirms that the Course Coordinator has successfully updated the faculty account.


5.2.15  Create Course Section

This screen allows the Course Coordinator to create a new section.

 

 


5.2.16  Create Course Section (Error)

This screen indicates an error in one or more fields while creating a new section.  This appears after clicking the “Add Section” Button.


5.2.17  Edit Course Section

This screen allows a Course Coordinator to edit an existing Course Section.


5.2.18  Edit Course Section (Error)

This screen indicates an error in one or more fields while editing an existing section.  This appears after clicking the “Update Section” Button.

 


5.2.19  Course Home Page

This is a course homepage for a Course Coordinator.  The main functions are available on the buttons on the left.


5.2.20  View Gradebook

This is the gradebook view for a specific course for a Course Coordinator user.  Clicking on an Assignment Name brings the user to the Problem Set Overview screen.  Clicking on the grade allows the user to change the grade.


5.2.21  Edit Gradebook (Editing)

This shows a user editing a student’s grade.  Clicking the grade changes the field to a text box for editing.

 


5.2.22  Edit Gradebook (Invalid Field)

Inputting an invalid grade prohibits the user from updating the grade.


5.2.23  Edit Gradebook (Blank)

Leaving the field blank disallows the user from updating the grade field.  They are instructed to use the “Delete” field if they wish to delete the grade.


5.2.24  Edit Gradebook (Complete)

Once updating a grade, the user remains at the gradebook screen, but the student’s grade has been updated, as well as the High, Average, and Low scores.


5.2.25  Create Problem

This is the Create Problem page for a Course Coordinator.  From here, the user enters all information about a problem.


5.2.26  Create Problem (Invalid Field)

This screen shows an error message indicating an invalid field is present on the Create Problem Screen.


5.2.27  Create Problem (Max Test Cases)

This screen shows a problem with the maximum amount of test cases allowed (25).  Notice the “Add Problem” button is no longer available.


5.2.28  Course Coordinator Sandbox

This is the Course Coordinator sandbox.  The sandbox stores all problems that are not completed and ready for the pool.  Clicking the “Save Problem” button on the Create problem screen will store the problem in the sandbox.  Clicking a problem name will bring up a window to edit the problem.


5.2.29  Edit Problem

This is the edit problem screen that the Course Coordinator will see when they choose to edit a problem from either, the course pool, the global pool, or the sandbox.


5.2.30  Create Problem (Invalid Field Error)

This pop up will display if the user has an invalid or missing field when they select the create problem button. The missing field or fields will be highlighted in red.

 

 

5.2.31  Create Problem (Solution Compile Error)

This screen will appear when the Course Coordiantor clicks the “Create Problem” button with invalid code inputted in the “Solution Code text box. The compiler will output the error to the screen above the “Solution Code” box.


5.2.32  Confirm Problem

This screen shows a summary of the new problem about to be created.

 


5.2.33  Publish Problem (Completed)

This screen shows a confirmed problem that has been added to the course pool.

 


5.2.34  Create Problem Set

This is an example of the Create Problem Set Screen.  Course Coordinators can use problems from the course pool, or the global pool when creating a Problem Set.  Clicking on a problem in the problem set area will allow the Course Coordinator to edit the problem.  Point values can be assigned to each problem.


5.2.35  Create Problem Set (Error)

This is an example error message showing invalid fields on the Create Problem Set Screen.

 

 

5.2.36  Create Problem Set (No Problems Added Error)

This is an example error message showing a Problem Set with no problems added to it.


5.2.37  Create Problem Set (Confirm)

This is the confirmation screen for creating a new Problem Set.  Clicking “Create Problem Set” will add the problem set to the pool.  Clicking “Edit Problem Set” will allow the user to go back and make changes.


5.2.38  Create Problem Set (Completed)

This is a confirmation message showing a created Problem Set.  There is a button to go to their Pool screen.

 


5.2.39  Edit Problem Set (Completed)

This is the screen for Editing an existing Problem Set.  The format of the screen is identical to the Create Problem Set screen.  All error screens for Edit Problem Set are identical to the ones for Create Problem Set.


5.2.40  Activate/Assign Problem Set

This is the screen to activate a Problem Set for a specific course.  Problem Sets can either be activated instantly, or set to be active at a later date.

 


5.2.41  Deactivate Problem Set

This screen allows users to deactivate any active problem set for a specific course.  This screen is only used for manual deactivation.  JOLT will automatically deactivate problem sets once the expiration date and time have been passed.

 


5.2.42  Manage Pools

This is the pool management screen for Course Coordinators.  They have the option to drag problems from the Global Pool to the Course Pool, and from their Private Pool to the Course Pool.  They will be able to drag from the Global and Course Pools to their Private Pool.  There is a button to promote pending problems from faculty to the Course Pool.


5.2.43  Accept Private Problems to Course Pool

Clicking the “Promote Problems” button brings the Course Coordinator to this screen.  From here, the Course Coordinator has the ability to approve or reject problems to the Course Pool.  Clicking the problem name allows the Course Coordinator to view the problem details.

 


5.2.1 Generate Reports

This screen allows Course Coordinators to generate reports based on a set of attributes for one or more sections within a course.  The “Generate Reports” button of the Course Coordinator home page gets the user to this page.

*Report details have not been finalized at this time.*


5.2.2 Create Announcement

This is the screen to create an announcement to be broadcast to users.  Users select recipients of the announcement, and provide a title and announcement text.


5.2.3 Create Announcement (Add Recipients)

This screen shows an announcement with populated data and selected recipients.  Using the left and right arrow buttons add and remove users from the recipient list.


5.2.4 Create Announcement (Missing Field)

This shows an error message for a missing field when creating an announcement. This appears once the user selects the “Post Announcement” button.


5.2.5 Create Announcement (No Recipients)

This shows an error message when creating an announcement with no recipients. This appears once the user selects the “Post Announcement” button.


5.2.6 Create Announcement (Complete)

This shows a successfully created announcement.  This appears once the user selects the “Post Announcement” button.


5.2.1  View Profile

Clicking the “Profile” button in the header will bring Course Coordiantor members to this screen, where they can view their profile information.  There is a button to update their information as well.


5.2.2 Edit Profile

This screen allows a Course Coordinator user to edit their profile information.  The Course Coordinator user gets here by clicking the “Edit Profile” button on the Course Coordinator Profile Page.

 


5.2.3 Edit Profile (Error)

This error message is shown when a Course Coordinator user tries to update their email address with an invalid email address.


5.2.4 Edit Profile (Invalid Field)

This error message is shown when a Course Coordinator user tries to update their profile information with invalid or missing information.


5.2.5 Edit Profile (Completed)

This screen is shown when a Course Coordinator user successfully updates their profile information.

 


5.2.1 Logout

This screen shows a Course Coordinator who has just logged out of JOLT by clicking the Logout button in the header.

 

 


6         Administrator User

 

6.1       Administrator User Case Narrative

The Administrator shall be able to log into the System via a unique username and password. Once logged in, the Administrator will be able to create and manage Course Coordinator, Faculty, and Student accounts. The Administrator has the same abilities as a Course Coordinator.  The Administrator will be able to send broadcast messages to all users, or a subset thereof.  The Administrator will manage the “Global Pool” of problems and problem sets.

 

6.2       Preliminary Administrator User Screens

The Administrator shall have the following screens available. 


6.2.1 JOLT Login

 

This is the initial screen that Course Coordinator will be presented with when they navigate to JOLT.  It prompts for a username and password, and provides a link for forgotten password.  Note that Course Coordinator accounts are created by the Administrator.  No self-registration is allowed. 

 


6.2.2 Invalid Login Screen

This error message will appear when the Administrator user enters an incorrect Username or Password.

 

 

 


6.2.3 Administrator Home Page

This is the home page for the Administrator.  The Administrator has the ability to manage Course Coordinator Accounts and Faculty Accounts from the home screen.  The Administrator can also create announcements and generate reports from this screen.  




6.2.4 Manage Course Coordinators

This screen is reached from the “Manage Course Coordinators” button on the Administrator home page.  This screen allows the Administrator to edit and add Course Coordinator accounts.


6.2.5 Create Course Coordinator Account

This screen allows the Administrator to create a Course Coordinator account, and assign them to courses. 


6.2.6 Create Course Coordinator Account (Error)

This screen shows an error message indicating that the Administrator has invalid/black fields when creating a Course Coordinator account.  This message appears when the “Create Account” button is clicked.


6.2.7 Create Course Coordinator Account (Completed)

This screen shows a confirmation telling the Administrator that they have successfully created a Course Coordinator account.


6.2.8 Edit Course Coordinator Account

This screen allows the Administrator to edit a Course Coordinator account.  They get here from the Manage Course Coordinators screen.


6.2.1 Create Faculty Account

This screen is used by the Administrator to create a Faculty account.  The Administrator has the ability to assign course sections to the new faculty at this time.


6.2.2 Create Faculty Account (Error)

This screen shows an error in creating a Faculty Account.  An invalid email address has been provided.  This message would appear after clicking the “Create Account” button.


6.2.3 Create Faculty Account (Error)

This screen shows an error in creating a Faculty Account.  There are invalid or blank fields present on the form.  This message would appear after clicking the “Create Account” button.

 


6.2.4 Create Faculty Account (Completed)

This is a confirmation message telling the Course Coordinator that they have registered a faculty account.


6.2.5 Edit Faculty Account

This screen allows the Administrator to edit a faculty member’s account.  They can manipulate any field, as well as add/remove sections to/from the faculty account.

 


6.2.6 Edit Faculty Account (Error)

This screen shows that an invalid email address has been entered when editing a Faculty account.  This appears after clicking the “Save Changes” button.

 


6.2.7 Edit Faculty Account (Error)

This screen shows invalid/blank fields are present on the form when editing a Faculty account.  This appears after clicking the “Save Changes” button.


6.2.8 Edit Faculty Account (Completed)

This screen confirms that the Administrator has successfully updated the faculty account.


6.2.9 Create Course

This screen allows the Administrator to create a course


6.2.10  Create Course (Error)

This screen shows an error indicating missing or invalid fields on the Create Course screen.

 


6.2.11  Create Course (Confirm)

This screen shows the Administrator about to create a new course.  This screen is reached after inputting valid data in the Create Course screen and clicking the “Add Course” button.


6.2.12  Create Course (Completed)

This is a confirmation screen alerting the Administrator that the course has been created successfully.


6.2.13  Edit Course

This screen is reached from the “Manage Courses” screen.  This screen allows the Administrator to edit course information.


6.2.14  Edit Course (Error)

This screen shows an error indicating missing or invalid fields on the Edit Course screen.


6.2.15  Edit Course (Completed)

This screen alerts the Administrator that the course has been successfully updated.

 


6.2.1 View Gradebook

This is the gradebook view for a specific course for the Administrator user.  Clicking on an Assignment Name brings the user to the Problem Set Overview screen.  Clicking on the grade allows the user to change the grade.


6.2.2 Edit Gradebook (Editing)

This shows a user editing a student’s grade.  Clicking the grade changes the field to a text box for editing.

 


6.2.3 Edit Gradebook (Invalid Field)

Inputting an invalid grade prohibits the user from updating the grade.


6.2.4 Edit Gradebook (Blank)

Leaving the field blank disallows the user from updating the grade field.  They are instructed to use the “Delete” field if they wish to delete the grade.


6.2.5 Edit Gradebook (Complete)

Once updating a grade, the user remains at the gradebook screen, but the student’s grade has been updated, as well as the High, Average, and Low scores.


6.2.6 Create Problem

This is the Create Problem page for the Administrator.  From here, the user enters all information about a problem.


6.2.7 Create Problem (Invalid Field)

This screen shows an error message indicating an invalid field is present on the Create Problem Screen.


6.2.8 Create Problem (Max Test Cases)

This screen shows a problem with the maximum amount of test cases allowed (25).  Notice the “Add Problem” button is no longer available.


6.2.9 Course Coordinator Sandbox

This is the Administrator sandbox.  The sandbox stores all problems that are not completed and ready for the pool.  Clicking the “Save Problem” button on the Create problem screen will store the problem in the sandbox.  Clicking a problem name will bring up a window to edit the problem.


6.2.10  Edit Problem

This is the edit problem screen that the Administrator will see when they choose to edit a problem from either, the course pool, the global pool, or the sandbox.


6.2.11  Create Problem (Invalid Field Error)

This pop up will display if the user has an invalid or missing field when they select the create problem button. The missing field or fields will be highlighted in red.

 

 

6.2.12  Create Problem (Solution Compile Error)

This screen will appear when the Administrator clicks the “Create Problem” button with invalid code inputted in the “Solution Code text box. The compiler will output the error to the screen above the “Solution Code” box.


6.2.13  Confirm Problem

This screen shows a summary of the new problem about to be created.

 


6.2.14  Publish Problem (Completed)

This screen shows a confirmed problem that has been added to the course pool.

 


6.2.15  Create Problem Set

This is an example of the Create Problem Set Screen.  Administrators can use problems from the course pool, or the global pool when creating a Problem Set.  Clicking on a problem in the problem set area will allow the Course Coordinator to edit the problem.  Point values can be assigned to each problem.


6.2.16  Create Problem Set (Error)

This is an example error message showing invalid fields on the Create Problem Set Screen.

 

 

6.2.17  Create Problem Set (No Problems Added Error)

This is an example error message showing a Problem Set with no problems added to it.


6.2.18  Create Problem Set (Confirm)

This is the confirmation screen for creating a new Problem Set.  Clicking “Create Problem Set” will add the problem set to the pool.  Clicking “Edit Problem Set” will allow the user to go back and make changes.


6.2.19  Create Problem Set (Completed)

This is a confirmation message showing a created Problem Set.  There is a button to go to their Pool screen.

 


6.2.20  Edit Problem Set (Completed)

This is the screen for Editing an existing Problem Set.  The format of the screen is identical to the Create Problem Set screen.  All error screens for Edit Problem Set are identical to the ones for Create Problem Set.


6.2.21  Activate/Assign Problem Set

This is the screen to activate a Problem Set for a specific course.  Problem Sets can either be activated instantly, or set to be active at a later date.

 


6.2.22  Deactivate Problem Set

This screen allows users to deactivate any active problem set for a specific course.  This screen is only used for manual deactivation.  JOLT will automatically deactivate problem sets once the expiration date and time have been passed.

 


6.2.23  Manage Pools

This is the pool management screen for Administrators.  They have the option to drag problems from the Global Pool to the Course Pool, and from their Private Pool to the Course Pool & Global Pool.  They will be able to drag from the Global and Course Pools to their Private Pool.  There is a button to promote pending problems from the course pool to the Global Pool


6.2.24  Accept Private Problems to Course Pool

Clicking the “Promote Problems” button brings the Administrator to this screen.  From here, the Administrator has the ability to approve or reject problems to the Global Pool.  Clicking the problem name allows the Administrator to view the problem details.

 


6.2.25  Generate Reports

This screen allows Administrators to generate reports based on a set of attributes for one or more sections within a course.  The “Generate Reports” button of the Administrator home page gets the user to this page.

*Report details have not been finalized at this time.*


6.2.26  Create Announcement

This is the screen to create an announcement to be broadcast to users.  Users select recipients of the announcement, and provide a title and announcement text.


6.2.27  Create Announcement (Add Recipients)

This screen shows an announcement with populated data and selected recipients.  Using the left and right arrow buttons add and remove users from the recipient list.


6.2.28  Create Announcement (Missing Field)

This shows an error message for a missing field when creating an announcement. This appears once the user selects the “Post Announcement” button.


6.2.29  Create Announcement (No Recipients)

This shows an error message when creating an announcement with no recipients. This appears once the user selects the “Post Announcement” button.


6.2.30  Create Announcement (Complete)

This shows a successfully created announcement.  This appears once the user selects the “Post Announcement” button.


6.2.31   View Profile

Clicking the “Profile” button in the header will bring the Administrator member to this screen, where they can view their profile information.  There is a button to update their information as well.


6.2.32  Edit Profile

This screen allows the Administrator user to edit their profile information.  The Administrator user gets here by clicking the “Edit Profile” button on the Administrator Profile Page.

 


6.2.33  Edit Profile (Error)

This error message is shown when the Administrator user tries to update their email address with an invalid email address.


6.2.34  Edit Profile (Invalid Field)

This error message is shown when the Administrator user tries to update their profile information with invalid or missing information.


6.2.35  Edit Profile (Completed)

This screen is shown when the Administrator user successfully updates their profile information.

 


6.2.36  Logout

This screen shows the Administrator who has just logged out of JOLT by clicking the Logout button in the header.

 

 

 

 

 


 

7         Appendices

 

·         Appendix 1: Sources of Information

·         Appendix 2: Glossary of Terms

·         Appendix 3: Current Timeline (Gantt Chart)

·         Appendix 4: Spring 2010Timeline (Gantt Chart)

 

 

7.1       Appendix 1: Sources of Information

Information found within this Requirement Specification document has been obtained through meetings with our client, Dr. Darren Lim. Information was also obtained through Dr. Lederman’s Software Engineering lectures. Information has also been collected from various internet resources, as well as requirement specification documents from previous years.

 


 

7.2       Appendix 2: Glossary of Terms

   The following are a list of technical terms used within the document.  This section is provided to clarify their meaning.

Actor: An entity in UML Use Case Diagrams and UML Activity Diagrams.  It represents the human and non-human external entities (outside the system boundary) that interact with the system.

Activity Diagram: A diagram based on the Unified Model Language (UML).  This represents the processes that comprise a certain activity within the system.  These diagrams are generally created with the perspective of an actor in mind.

Client: Used to refer to Dr. Darren Lim, the client of 518 Interactive who requested JOLT.

Compiler: A program that reads in source code and generates an executable.

CSS: Cascading Style Sheets – Used within HTML documents in order to control the presentation of web pages.

DFD: Data Flow Diagrams are used to show how data moves and is processed within a system.  There are various levels to DFDs, with each subsequent level providing more detail than the previous.

Hardware: The tangible components of a computer and server.  Examples include monitors, disk drives, printers, keyboard, processor, and memory.

HTML: Hypertext Markup Language is the scripting language used to describe the information contained on a website.  HTML utilizes Cascading Style Sheets (CSS) to generate the style of the page.  HTML and CSS are parsed by web browsers, such as Internet Explorer and Firefox, to render the websites for users.

Java: A programming language which the System will be able to compile and execute.  This language will be used by the students to solve the assigned problems.

Java Byte Code: The output of the Java™ compiler upon successful compilation of Java™ source code.  Java Byte Code is read by the Java™ runtime environment, which in turn executes the proper machine-level commands.

Java SDK: Software Development Kit for Java – a collection of tools used by developers to aid in the creation of programs.  The Java SDK includes the Java™ (V. 1.6) compiler.  The Java™ SDK also includes the Java™ (V. 1.6) runtime environment, which allows for Java™ Byte Code to be executed.

JOLT: Java Online Learning Toolkit is the name of the system being developed for Dr. Lim, the client of 518 Interactive.

MySQL: A free implementation of a Relational Database Management System.  Used to store and retrieve information relevant to the website, such as usernames, passwords, problems, solutions, and scores.  Accessing information within the database is achieved by submitting a “query” in the Structured Query Language (SQL) form.

PHP: PHP Hypertext Processor is a programming language used to create dynamic web sites.  Has the ability to interact with a database.

Software: The intangible components of a computer and server.  It is a set of machine-level instructions that is run from within the memory, and is used to perform a specific set of functions.   Examples include Microsoft Word, Adobe Photoshop, and Mozilla Firefox.

Source Code: A document that a compiler parses to generate machine code (which the computer can run directly), or code that gets interpreted by a third-party application, which then gets executed.

Source/Sink: This is a term used within Data Flow Diagrams to represent an entity that either provides (source) or receives (sink) data. 

System: Used within this document to describe the Java Online Learning Toolkit (JOLT).

UML: Unified Modeling Language is the industry-standard language for the specification, visualization, construction, and documentation of the components of software systems.

Use Case Diagram: Represents the high-level functions of the system. It also depicts how actors interact with each of those functions.          

 


 

7.3       Appendix 3:Current Timeline (GANTT Chart)    

        

 


 

7.4       Appendix 4: Spring 2010 Timeline (GANTT Chart)

Note: Team and Client Meetings are shown for completeness.  Actual meeting times have not yet been established.