Design Document

Team Builder

Robert Drake, Brian Kopecky, & Chris Moore


Table of Contents


Design Approach

Our software is designed to be a series of PHP scripts hosted by the ME Department that will allow Rose-Hulman faculty to form teams of people.  These scripts will interface with an MS-SQL Server database.  All administration and use of this program will be entirely web-page driven.  Administrators will control who has access to particular features as well as ultimate control over survey and question database maintenance.  Surveyors, primarily faculty, will be able to create surveys and create/edit teams based on these surveys.  The team members will be able to fill out and edit surveys given to them.


System Architecture

Software and External Interacting Entitles


User Interface

<Each component in this section must have a unique ID to support cross-referencing.   For instance, you might want to use 1, 1.1, 1.2, and so forth for the IDs.  In the detailed design, you will want to refer back to the appropriate IDs from this section .>

1 Entity-Relationship Diagram

<INSERT MODIFIED PANDA ERD>

2 Display Screen Formats, Menus, and Fault Handling

2.1 Main menu

Display

Contains access to all sub screens that a given user has access to.

Display Components

·        Links for each accessible feature

Error Handling

·        None

2.2 Create Survey 1

Display

Contains entry form for creator to enter preliminary information.

Display Components

·        Survey name text box

·        Description text box

·        Surveyees text box

·        Deadline text box

Error Handling

·        If survey name is taken return same page with a message noting this and survey name highlighted in red

·        If surveyees do not exist return same page with a message noting this and surveyees that don’t exist highlighted in red

·        If deadline has already occurred return same page with a message noting this and date highlighted in red

2.3 Create Survey 2

Display

Contains entry forms for adding existing questions and link to take you to create new question page as well as a display of questions you have already added.

Display Components

·        Drop-down box of existing public questions and private questions

·        Button to add selected questions

·        Button to remove selected questions

Error Handling

·        None

2.4 Create/Edit Question

Display

Contains entry forms for creating/editing a question.  The created question may be added to public or private question collections.

Display Components

·        Text field for question name

·        Text field for question prompt

·        Radio Buttons for question type

·        Text fields for available responses where appropriate

Error Handling

·        If something incomplete or range is not possible pop up a message box saying so

2.5 Take Survey

Display

Contains list of links to all the surveys you currently have accessible.  At the end of each link it states COMPLETE or INCOMPLETE to tell the person whether they have filled out the survey already.

Display Components

·        Links to all the survey that person currently has access to

Error Handling

·        None

2.6 Survey

Display

Contains questions as set up by survey creator

Display Components

·        Depends on individual survey

Error Handling

·        Depends on individual survey

2.7 View Results

Display

Contains list of links to all the results from individual surveys that have been completed.  Also there is a link for viewing aggregate data like average GPA or the class percentage of a particular minority.

Display Components

·        Links to all the survey results that person currently has access to

·        Non-link list of people who did not submit surveys

·        Link to page showing aggregate data

Error Handling

·        None

2.8 Individual  Results

Display

Contains question results as answered.

Display Components

·        Depends on individual survey

Error Handling

·        Depends on individual survey

2.9 Aggregate  Results

Display

Contains raw data and numerical/graphical analysis as appropriate to each survey.

Display Components

·        Depends on individual survey

Error Handling

·        Depends on individual survey

2.10 Make Teams

Display

Contains a list of links to all surveys you have access to.

Display Components

·        List of links to all surveys to which you have access.

Error Handling

·        None

2.11 Team Editing

Display

Contains a table of current teams and their respective members that allow the professor to view currently formed teams and revise them via a combination of radio buttons.

Display Components

·        A table of radio buttons and links of each team and its members

·        A Move Members button

Error Handling

·        None

 

3 Human Interfaces

3.1 Web Browser

All user interaction will be through a web browser.  We will test for support in the latest versions of Internet Explorer and Mozilla Firebird.


Data Storage/Format

<If data structures, input and/or output data files (not program files), or databases are to be used with the software, then describe them here.

The information in this section should not be repeated in other sections, but you may cross-reference back to it, such as from the detailed design.

Entity relationship diagrams from the requirements document should be converted into the data structures, files, or databases that will contain the data.  All sizes, formats, and estimated/actual data quantity should be given.>

4 Files

4.1 Team Making Algorithm Input

4.2 Team Making Algorithm Output

5 Databases


External System Interfaces

6 MS-SQL

MS-SQL is used to store a database containing data for all of the surveys, responses, etc. in the system.

 


Detailed Design

7 ME Department Server

7.1 Web Interface

Use Case 01: Main Page – Team Maker

Overview

Preconditions

Scenario
 

User Action

Software Reaction

1. Create Survey is selected

1. User is brought to Create Survey page (Use Case 2.2.1)

2. Edit Survey is selected

2. User is brought to Create Survey page (Use Case 2.2.1)

3. Take Survey is Selected

3. User is brought to Take Survey page (Use Case 2.3.1)

4. View Results is selected

4. User is brought View Results page (Use Case 2.2.6)

5. Make Teams is selected

5. User is brought to Make Teams page (Use Case 2.2.3)

6. Edit Teams is selected

6. User is brought to Edit Teams page (Use Case 2.2.5)

7. Log Out is selected

7. User is logged out of the system (Use Case x.x.x)

Scenario Notes

Post Conditions

Required GUI

Use Cases Utilized

Timing Constraints

Use Case 02: Main Page – Create Survey

Overview

Preconditions

Scenario
 

User Action

Software Reaction

1. User enters survey information/constraints

1. Information and constraints are set for the survey (Use Case 2.2.1.2 and 2.2.1.3)

2. User adds a question to the current survey

2. The question is added to the current survey (Use Case 2.2.1.4)

3. User edits a question that is already added to the survey

3. The questions is modified to reflect the changes the user makes (Use Case 2.1.4)

4. User creates a new question

4. The question is added to the database and to the current survey (Use Case 2.2.7)

5. User removes a question from the current survey

5. The question is removed from the current survey (Use Case x.x.x)

6. User finalizes a survey

6. The survey is saved to the database (Use Case x.x.x)

Scenario Notes

Post Conditions

Required GUI

Use Cases Utilized

Timing Constraints

Use Case 03: Main Page – Take Survey

Overview

Preconditions

Scenario
 

User Action

Software Reaction

1. User selects a survey from the list of available surveys

1. The user is taken to that survey (Use Case 2.3.1.1)

2. User selects/types answers to whichever questions they want

2. The answers are marked and readied for recording (Use Case 2.3.1.1 and 2.3.1.2)

3. User submits answers

3. The answers to the survey are recorded to the database (Use Case 2.3.1)

Scenario Notes

Post Conditions

Required GUI

Use Cases Utilized

Timing Constraints

Use Case 04: Main Page – View Results

Overview

Preconditions

Scenario
 

User Action

Software Reaction

1. User selects a survey from a list of those which they previously created

1. The user is taken to a list of results they can view for the selected survey (Use Case 2.2.6.1 and 2.2.6.2)

2. User selects Summary

2. A summary of the aggregate results from the survey (Use Case 2.2.6.2)

3. User selects an individual student

3. The responses of the selected student are displayed (Use Case 2.2.6.1)

Scenario Notes

Post Conditions

Required GUI

Use Cases Utilized

Timing Constraints

Use Case 05: Main Page – Make Teams

Overview

Preconditions

Scenario
 

User Action

Software Reaction

1. User selects a survey from a list of available surveys

1. The user is taken to a page where they specify the weighting for each question (Use Case 2.2.3)

2. User weighs each question individually

2. The weighting for each question is remembered  for use with the Team Creation Algorithm (Use Case 2.2.3.1)

3. User requests teams creation

3. The algorithm creates teams and the user is presented with the results (Use Case 2.2.3)

Scenario Notes

Post Conditions

Required GUI

Use Cases Utilized

Timing Constraints

Use Case 06: Main Page – Edit Teams

Overview

Preconditions

Scenario
 

User Action

Software Reaction

1. User selects a set of teams from a list of available teams

1. The user is taken to a page from which they can move students between teams (Use Case 2.2.5)

2. User selects a team member and marks them to be moved to the specified team

2. The marked team members are moved to the respective teams (Use Case 2.2.5.1)

Scenario Notes

Post Conditions

Required GUI

Use Cases Utilized

Timing Constraints

Use Case 06: Main Page – Log Out

Overview

Preconditions

Scenario
 

User Action

Software Reaction

1. User logs out

1. The user is logged out (Use Case x.x.x)

Scenario Notes

Post Conditions

Required GUI

Use Cases Utilized

Timing Constraints

 


Implementation Platform

8 Development Platform

9 Client Delivery Platform


Requirements Issues List

Items

None


Cross-Reference Table

<This table should show exactly how each ID in the design corresponds to some aspect of the Requirements Specification Document>
 

Requirements ID and Heading Name

Design ID and Heading Name

<id and heading name for a grouping of full-sentence requirements - one per row>

  • <ids and heading names of the design components corresponding to the full-sentence requirements grouping - one per bullet (omit bullet if only one)>

To Do List

Items

None


Revision History

Date

Name

Revision

02/02/2003

Robert Drake,

Brian Kopecky

Initial Creation

05/14/2003

Chris Moore

Re-write to correct entire document