Preliminary Design
Requested
by: Dr. Darren Lim
Assistant Professor
Department of Computer Science
Dr.
Manimoy Paul
Assistant Professor
Department
of Quantitative Business Analysis
International Online Survey
(IOS)
Bad Robot Enterprises
Prepared
by: Paul Borchers
Ryan May
Ryan Rose
Vito Urbano
Section 1: Product Overview
and Summary------------------------------------------------------- 4
External Design Specifications--------------------------------------------------------------------- 4
Section 2: User displays,
report formats, and user command summary------------------------ 4
2.1:
Login Page------------------------------------------------------------------------------- 4
2.2:
Teacher Account
Creation Page------------------------------------------------------ 5
2.3: Student Account Creation
Page------------------------------------------------------- 6
2.4:
Administrator Welcome
Page--------------------------------------------------------- 7
2.5:
Teacher Welcome
Page---------------------------------------------------------------- 8
2.6:
Student Welcome
Page---------------------------------------------------------------- 9
2.7.1: Administrator Account Management
Page------------------------------ 10
2.7.2: Teacher Account Management
Page------------------------------------- 11
2.8:
Administrator
Account Creation Page----------------------------------------------- 12
2.9:
User Page
(Teacher)------------------------------------------------------------------- 13
2.10:
User Page
(Student)------------------------------------------------------------------- 14
2.11:
List Current Users Page-------------------------------------------------------------- 15
2.12:
List Current Users Results
Page----------------------------------------------------- 16
2.13:
Teacher Initial
Survey Creation Page---------------------------------------------- 17
2.14.0: Add a Question Page (Blank)------------------------------------------- 18
2.14.1:
Demographic--------------------------------------------------------------- 19
2.14.2:
Scale------------------------------------------------------------------------ 20
2.14.3: Multiple
Choices---------------------------------------------------------- 21
2.14.4: Text
2.14.5:
Image----------------------------------------------------------------------- 23
2.15.1: Teacher Edit Survey Page (Blank)----------------------------------------------- 24
2.15.2: Teacher Edit Survey
Page--------------------------------------------------------- 25
2.16: Student Account Management
Page------------------------------------------------ 26
2.17.1: Student Survey
Page---------------------------------------------------------------- 27
2.1721: Teacher Preview of Survey
Page------------------------------------------------- 28
2.18: Search Results
Page------------------------------------------------------------------- 29
2.19: Lost Password Recovery
Page------------------------------------------------------ 30
2.20: Format of results downloads--------------------------------------------------------- 31
Section 3: Logical data
stores------------------------------------------------------------------------ 32
Section 4: Logical data
dictionary------------------------------------------------------------------- 34
Architectural Design Specification---------------------------------------------------------------- 52
Section 5: Structure
diagram------------------------------------------------------------------------- 52
Section 6: Data Flow Diagrams
(See attached Data Flow Diagram Document)-------------- 52
Testing Requirements------------------------------------------------------------------------------- 52
Section 7: Functional
Requirements Inventory---------------------------------------------------- 52
7.1: Non-Functional Requirements
Inventory-------------------------------------------- 57
Section 8: Acceptance Test
(See attached Test Plan Document)-------------------------------- 57
Section 9: Unit Tests (See
attached Test Plan Document)--------------------------------------- 57
Section 10:
Appendix--------------------------------------------------------------------------------- 58
10.1 Glossary of
Terms--------------------------------------------------------------------- 58
10.2 Timeline (Gantt
chart)----------------------------------------------------------------- 59
Section
1: Product Overview and Summary
A great deal of information on
certain topics can be gained through the use of surveys. The International
Online Survey (IOS) system will provide users with the ability to create and
take surveys through a web-based program.
Teachers will be able to create surveys and give them to their students
and students will be able to take these surveys quickly and easily. Both types
of users will be able to view survey results to gain the data they need or
desire. Administrators will oversee this program and maintain functionality of
the IOS.
External
Design Specifications
Section
2: User displays, report formats, and user command summary
2.1:
Login Page
This is the page
that all users will see when first locating the website. This page is where all users will enter their
username and password. If a user has not
already created an account, they can click on the appropriate "Register
Now" link that will take them to the account creation page.
2.2:
Teacher Account Creation Page
This page is reached
when the user has selected from the login page to register as a teacher. They
are required to provide a user name and password.
2.3:
Student Account Creation Page
This page is reached when the user has selected from the
login page to register as a student. They are required to provide a user name
and password as well as some of their personal information.
2.4:
Administrator Welcome Page
The user is directed to this page when they have signed in
as an administrator. They will see features available to only administrators in
the top menu bar. They will also have access to information such as website
survey statistics, user login information, and surveys.
2.5:
Teacher Welcome Page
The user is directed to this page when they have signed in
as a teacher. They will see features available to only teachers in the top menu
bar as well as their history of surveys, and active and unpublished surveys.
2.6:
Student Welcome Page
The user is directed to this page when they have signed in
as a student. They will see features available to only students in the top menu
bar as well as their history of completed surveys and non – completed surveys.
2.7.1:
Administrator Account Management Page
This page allows an administrator to modify their account
password.
2.7.2:
Teacher Account Management Page
This page allows a teacher to modify their account password.
2.8:
Administrator Account Creation
Page
This page allows the Administrator to manage the creation of
student and teacher accounts.
2.9:
User Page (Teacher)
This page is reached by clicking a teacher's name in the Administrator welcome page. The page displays a unique teacher's account information and statistics.
2.10:
User Page (Student)
This page is reached by clicking a student's name in the
Administrator welcome page. The page displays a unique student's personal
information as well as their survey taking statistics.
2.11:
List Current Users Page
This page allows the administrator to browse all accounts.
2.12:
List Current Users Results Page
This page is reached by clicking search or a sort letter on
the list current users page. The users are displayed according to the client's
search preference.
2.13:
Teacher Initial Survey Creation
Page
This page is reached from the create a survey link which can
be seen by teacher accounts. The page is the first page a teacher will see
before going on to adding questions to their survey. The page requires the
teacher to enter a survey name and topic as well as making their survey
anonymous or protected.
2.14.0:
Teacher Add a Question Page
(Blank)
This page is reached either through the blank edit survey page or after adding a question. This page only consists of a drop down of question types.
2.14.1: Demographic
These pages allows for a teacher to create a survey. They are provided with different questions to chose from including demographic, multiple choice, textbox, rating scale, and image related questions.
2.14.2: Scale
These pages allows for a teacher to create a survey. They are provided with different questions to chose from including demographic, multiple choice, textbox, rating scale, and image related questions.
2.14.3: Multiple Choice
These pages allows for a teacher to create a survey. They are provided with different questions to chose from including demographic, multiple choice, textbox, rating scale, and image related questions.
2.14.4: Text Box
These pages allows for a teacher to create a survey. They are provided with different questions to chose from including demographic, multiple choice, textbox, rating scale, and image related questions.
2.14.5: Image
These pages allows for a teacher to create a survey. They are provided with different questions to chose from including demographic, multiple choice, textbox, rating scale, and image related questions.
2.15.1: Teacher Edit
Survey Page (Blank)
This page is reached after submitting the required
information on the create a survey page. Clicking the "add a question
button" will bring the teacher to a page where they can finally start to
choose between questions to add to their survey.
2.15.2: Teacher Edit
Survey Page
2.16: Student Account
Management Page
This page allows a student to edit their account information such as their username, password, and personal information.
2.17.1: Student Survey
Page
This page allows the student to answer questions of a survey that they have been given permission to take.
2.17.2: Teacher Preview of
Survey Page
This page allows a teacher to look at what their survey would look like at their current progress.
2.18: Search Results Page
This page is reached by clicking search or a sort letter on
the list current users page. The users are displayed according to the client's
search preference.
2.19:
Lost Password Recovery Page
This page is reached by clicking the "forgot your
password?" link on the login page. The user is required to fill in information
to have their password emailed to them.
2.20 Format of results downloads
This is the format
of the file that is downloaded when a teacher clicks on the download txt file
button next to the survey name on the Teacher Welcome Page.
Section
3: Logical data stores
The following information presents a preliminary description of the data stored in the International Online Survey database. The data is presented in a layout of the table structure. Primary Keys are underlined.
Table: Administrator/Teacher
Fields:
E-mail: VARCHAR(25)
-User's e-mail address
Password:
VARCHAR(12)
-User's password
Question: VARCHAR(50)
-User’s
secret question
Answer:
VARCHAR(50)
-User’s answer to the secret question
User_type:
VARCHAR(15)
-The type of user
Table: Student
Fields:
Lname: VARCHAR(20)
-User's last name
Fname: VARCHAR(20)
-User's first name
E-mail:
VARCHAR(25)
-User’s e-mail address
Password:
VARCHAR(12)
-User’s password
Question: VARCHAR(50)
-User’s
secret question
Answer:
VARCHAR(50)
-User’s answer to the secret question
Gender:
VARCHAR(6)
- User’s gender
Bdate: VARCHAR(8)
-User’s birth date
State: VARCHAR(20)
-State that user lives in
Tzone: VARCHAR(25)
-Time zone that user lives in
Zcode: VARCHAR(10)
-User’s zip code
Alt_e-mail: VARCHAR(25)
-User’s alternate e-mail address
User_type:
VARCHAR(15)
-The type of user
Table: Survey
Fields:
ID: NUMBER
-Survey’s identification number
Name:
VARCHAR(50)
-Survey’s name
Creators: VARCHAR(50)
-Survey’s creator
Password:
VARCHAR(12)
-Survey’s password if protected
Qtype: VARCHAR(20)
-Survey
question type
Answer:
VARCHAR(50)
-Answer to survey question
Stype: VARCHAR(15)
-Type of survey
Sdate: VARCHAR(8)
-Survey date
Slocation: VARCHAR(20)
-Location of survey
User_type:
VARCHAR(15)
-The type of user
Section
4: Logical data dictionary
Administrator Homepage Data Flow
Description: Main page for Administrator.
Location: 0,1
Source: Database
Destination: Administrator
Administrator Login Information Data Flow
Description: Administrators information to log in.
Location: 0
Source: Administrator
Destination: Maintain Website
Registration Request Data Flow
Description: Request for accounts from Student or Teacher.
Location: 0
Source: Teacher/Student
Destination: Administrator
Teacher Registration E-mail Data Flow
Description: E-mail to Teacher confirming account creation.
Location: 0
Source: Administrator
Destination: Teacher
Student Registration E-mail Data Flow
Description: E-mail to Student confirming account creation with or without password.
Location: 0
Source: Administrator
Destination: Student
Maintain Website Process
Description: General Action described for the Administrator general duties.
Location: 0
Source: Database
Destination: Administrator
Administrator Login Verification Data Flow
Description: Administrators login information checked against database entry.
Location: 0
Source: Maintain Website
Destination: Database
Survey Diagnostics Data Flow
Description: Information about Surveys size, dates, names, etc.
Location: 0
Source: Administrator
Destination: Database
Administrative Maintenance Data Flow
Description: Edited information about Teachers, Students, Surveys.
Location: 0
Source: Database
Destination: Maintain Website
Account Request Data Flow
Description: General account information request to edit/create/delete.
Location: 0, 1
Source: Administrator
Destination: Database
Account Information Data Flow
Description: Teacher and Student account information.
Location: 0, 1
Source: Database
Destination: Maintain Website
Teacher Homepage Data Flow
Description: Main page for general access to Teachers account.
Location: 0, 1
Source: Database
Destination: Teacher
Teacher Login Information Data Flow
Description: Teacher information to log in.
Location: 0, 1
Source: Teacher
Destination: Manage Teacher Request
Teacher Registration Request Data Flow
Description: Request sent to the Administrator for an account.
Location: 0, 1
Source: Teacher
Destination: Administrator
Teacher Registration E-mail Data Flow
Description: E-mail sent to Teacher from the Administrator to confirm account creation.
Location: 0, 1
Source: Administrator
Destination: Teacher
Teacher Login Verification Data Flow
Description: Message sent to program confirming correct Teacher Login.
Location: 0, 1
Source: Database
Destination: Manage Teacher Request
Survey Data Data Flow
Description: Information directly used in the creation of a survey.
Location: 0, 1
Source: Manage Teacher Request
Destination: Database
Survey Results Request Data Flow
Description: Teacher/Students request for survey results.
Location: 0, 1
Source: Manage Teacher Request/Manage Student Request
Destination: Database
Survey Results Data Flow
Description: Statistical Data compiled for analysis.
Location: 0, 1, 1
Source: Database
Destination: Manage Teacher Request/Manage Student Request
Student Homepage Data Flow
Description: Main page for general access to Student account.
Location: 0
Source: Database
Destination: Student
Manage Teacher Request Process
Description: General Action described for the Teacher general duties.
Location: 0
Source: Database
Destination: Teacher
Manage Student Request Process
Description: General Action described for the Student general duties.
Location: 0
Source: Database
Destination: Student
Student Login Information Data Flow
Description: Student information to log in.
Location: 0, 1
Source: Student
Destination: Manage Student Request
Student Registration Request Data Flow
Description: Request sent to Administrator for account activation.
Location: 0, 1
Source: Student
Destination: Administrator
Student Registration E-mail Data Flow
Description: E-mail sent to student confirming account creation.
Location: 0, 1
Source: Administrator
Destination: Student
Survey Request Data Flow
Description: Request for given survey so that it can be taken.
Location: 0, 1
Source: Manage Student Request
Destination: Database
Survey Data Flow
Description: Actual survey to be taken.
Location: 0
Source: Database
Destination: Manage Student Request
Login Information Data Flow
Description: Administrators login information.
Location: 1
Source: Administrator
Destination: Verify Administrator Login
Verify Administrator Login Process
Description: Source that takes in Administrator’s login information.
Location: 1
Source: Database
Destination: Administrator
User Verification Data Flow
Description: Verification of Administrator’s login information.
Location: 1
Source: Verify Administrator Login
Destination: Database
Control Panel Data Flow
Description: Tools used by Administrator to edit surveys/accounts.
Location: 1
Source: Retrieve Administrator Website
Destination: Administrator
Retrieve Administrator Website Process
Description: Creation of Administrators website from database information.
Location: 1
Source: Database
Destination: Administrator
Account Page Data Flow
Description: Specific webpage that shows the accounts for the Administrator to edit.
Location: 1
Source: Manage User Accounts
Destination: Administrator
Manage User Accounts Process
Description: Administrators utility for editing other user accounts.
Location: 1
Source: Database
Destination: Administrator
Manage User Account Data Data Flow
Description: Data that has been manipulated to change entries in the database.
Location: 1
Source: Manage User Accounts
Destination: Database
Survey Page Request Data Flow
Description: Administrator request to survey edit page.
Location: 1
Source: Administrator
Destination: Manage Surveys
Manage Surveys Process
Description: Administrators ability to edit surveys.
Location: 1
Source: Database
Destination: Administrator
Manage Survey Data Data Flow
Description: Actual changes in survey data.
Location: 1
Source: Manage Surveys
Destination: Database
All Active Surveys Data Flow
Description: List of all surveys currently in progress and completed.
Location: 1
Source: Database
Destination: Manage Surveys
Feedback Data Flow
Description: User feedback to Administrator.
Location: 1
Source: Database
Destination: Manage Surveys
Survey Page Data Flow
Description: Administrators webpage for editing surveys.
Location: 1
Source: Manage Surveys
Destination: Administrator
Verify Teacher Login Process
Description: Ability of our program to check login for Teacher.
Location: 1
Source: Database
Destination: Teacher
Register Teacher Account Process
Description: Our programs ability to set up an account creation for a Teacher.
Location: 1
Source: Database
Destination: Teacher
Create Survey Process
Description: The program that allows Teachers to create surveys.
Location: 1
Source: Database
Destination: Teacher
Verify Student Login Process
Description: Ability of our program to check login for Student.
Location: 1
Source: Database
Destination: Student
Register Student Account Process
Description: Our programs ability to set up an account creation for a Student.
Location: 1
Source: Database
Destination: Student
Fill Out Survey Process
Description: Ability of Student to take a survey.
Location: 1
Source: Database
Destination: Student
Profile Change Conformation Data Flow
Description: Message sent to Administrator showing Change in Administrator Account Information.
Location: 2
Source: Change Administrator Account Information
Destination: Administrator
Administrator Information Data Flow
Description: Personal information the Administrator may need for loging in purposes.
Location: 2
Source: Administrator
Destination: Change Administrator Account Information
Change Administrator Account Information Process
Description: A process taken by the Administrator within our program.
Location: 2
Source: Database
Destination: Administrator
Add Teacher Request Data Flow
Description: The data needed to create a Teacher account.
Location: 3
Source: Administrator
Destination: Add Teacher Account
Create Teacher Request Data Flow
Description: Request to the database creating a Teacher account.
Location: 3
Source: Add Teacher Account
Destination: Database
Teacher Account Information Data Flow
Description: Teacher account personal information.
Location: 3
Source: Database
Destination: Add Teacher Account
Add Teacher Account Process
Description: Ability of creating a new Teacher account with information from the database.
Location: 3
Source: Database
Destination: Administrator
Delete Teacher Request Data Flow
Description: Administrators request to delete a Teacher Account.
Location: 3
Source: Administrator
Destination: Delete Teacher Account
Delete Teacher Account Process
Description: Programs ability to delete a Teacher Account.
Location: 3
Source: Database
Destination: Administrator
Add Student Request Data Flow
Description: Request to create a Student Account.
Location: 3
Source: Administrator
Destination: Add Student Account
Add Student Account Process
Description: Ability of program to Create a Student Account.
Location: 3
Source: Database
Destination: Administrator
Create Student Request Data Flow
Description: Data sent to Database to create a Student Account.
Location: 3
Source: Add Student Account
Destination: Database
Delete Student Account Process
Description: Programs ability to send data to Database to delete a Student Account.
Location: 3
Source: Database
Destination: Administrator
Delete Student Request Data Flow
Description: Data sent to Database to delete a Student Account.
Location: 3
Source: Delete Student Account
Destination: Database
Student Account Information Data Flow
Description: Specific information about the Student Account
Location: 3
Source: Database
Destination: Delete Student Account
Student Account Information Data Flow
Description:
Location:
Source:
Destination:
Survey Password Data Flow
Description: Anonymous survey takers password for specific survey to take.
Location: 0
Source: Anonymous
Destination: Manage Student/Anonymous Request
Anonymous Survey Data Flow
Description: Survey that an Anonymous Survey taker, takes.
Location: 0
Source: Manage Student/Anonymous Request
Destination: Anonymous
Download Results Process
Description: The action our program takes when a request for the survey data is made.
Location:
Source:
Destination:
Add Survey Process
Description: Process of adding a survey to the database.
Location: 2
Source: Database
Destination: Teacher
Add Survey Request Data Flow
Description: Request to the Database to add a survey
Location: 2
Source: Add Survey
Destination: Database
Add Survey Conformation Data Flow
Description: Data sent to Teacher when a survey is successfully added.
Location: 2
Source: Database
Destination: Teacher, Add Survey
Delete Survey Process
Description: Programs ability to delete a survey from the database.
Location: 2
Source: Database
Destination: Teacher
Delete Survey Request Data Flow
Description: Teachers request to delete a survey from the Database.
Location: 2
Source: Teacher
Destination: Delete Survey
Delete Survey Conformation Data Flow
Description: Conformation sent to the Teacher that a survey delete was a success.
Location: 2
Source: Database
Destination: Delete Survey, Teacher
Edit Survey Process
Description: Process in which the Teacher edits a survey.
Location: 2
Source: Database
Destination: Teacher
Edit Survey Conformation Data Flow
Description: Database conformation sent to the Teacher to confirm an edit succeeded.
Location: 2
Source: Database, Edit Survey
Destination: Teacher, Edit Survey
Results Gathering Process
Description: Programs ability to gather the information from the taken surveys so a teacher can see the results.
Location: 2
Source: Database
Destination: Teacher
Download Results Process
Description: The ability of the program to download survey results in many forms that the Teacher/Student may need for data collection.
Location: 3
Source: Database
Destination: Teacher, Student
Architectural
Design Specification
Section
5: Structure diagram
Structure Diagram - The Structure Diagram is used to provide
a road map of how the application is built by using the data flow diagram as a
template.
Section
6: Data Flow Diagrams
See
attached Data Flow Diagram Document.
Testing
Requirements
Section
7: Functional Requirements Inventory
The following list outlines the required functionality to be included in the final solution. The requirements are listed according to user case and then by screens the user will view.
General:
Administrator:
Login Screen:
Welcome Screen:
Manage Account Screen:
Change User Password Screen:
Create An Account Screen:
List Current Users Screen:
List Current Users Results Screen:
Teacher:
Login Screen:
Welcome Screen:
Manage Account Screen:
User Screen:
Create a Survey Screen:
View Results Screen:
Student:
Login Screen:
Welcome Screen:
Manage Account Screen:
User Screen:
Take a Survey Screen:
Teacher/Student:
Search Results Screen:
Password Recovery
Screen:
7.1: Non-Functional Requirements Inventory
Section
8: Acceptance Test
See attached Test
Plan Document.
Section
9: Unit Tests
See attached Test
Plan Document.
Section
10: Appendix
10.1
Glossary of Terms
CSS – Cascading Style Sheets – These are used to describe a specific style for a web page or set of pages, a website.
Database - A collection of data arranged for ease and speed of search and retrieval.
Data Flow Diagram – A representation of the functional decomposition of a system.
Gantt Chart - A chart that depicts progress of jobs in relation to time. It is often used in planning and tracking a project.
Hypertext Markup Language (HTML) – Predominant markup language used for the creation of web pages.
Internet - A vast computer network linking smaller computer networks worldwide. The Internet includes commercial, educational, governmental, and other networks, all of which use the same set of communications protocols.
Internet Explorer(IE) – Microsoft based program used for browsing the Internet.
Linear Sequential Model / Classic Waterfall Model – A systematic, sequential approach to software development that begins at the system level and progresses through analysis, design, coding, testing, and support.
MySQL – A Multithreaded, multi-user Relational Database Management System.
OS X - The latest operating system for Macintosh computers, based on the Linux kernel but with a more user-friendly graphic interface. It includes networking capabilities.
PHP – PHP Hypertext Preprocessor – An open source (free) programming language that is used for dynamic pages and is a high-level scripting language.
Profiles – User created accounts that will be customizable according to each specific person.
XHTML – Extensible HyperText Markup Language – has same
capabilities of HTML but is more restricted to allow for conformity among
multiple platforms.