DPS Logo

Dynamic Presentation System

http://dpsys.sourceforge.net/
http://sourceforge.net/projects/dpsys/

Requirements Specification

Version 2.0

Authors

An Do <ad68ATdrexelDOTedu>
Lay Gauv <lcg22ATdrexelDOTedu>
Sarith Kim <sk63ATdrexelDOTedu>
John Trainer <jwt25ATdrexelDOTedu>
Rami Quezada <rq23ATdrexelDOTedu>

Table of Contents

1.       Introduction

1.1.       Description of DPS

1.2.       Purpose

1.3.       Scope

1.4.       Overview

2.       Functional Requirements

2.1.       DPS/Base

2.1.1.       Description

2.1.2.       Launching DPS/Base

2.1.3.       Menu Options

2.1.3.1.       File

2.1.3.2.       Tools

2.1.3.3.       Help

2.1.4.       Opening and Closing Presentations

2.1.4.1.       Open File

2.1.4.2.       Close File

2.1.5.       Setting Display Types

2.1.5.1.       Single

2.1.5.2.       Mirrored

2.1.5.3.       Chained

2.1.6.       Working with Displays

2.1.6.1.       Verifying Display IDs

2.1.6.2.       Selecting a Display

2.1.6.3.       Swapping

2.1.6.4.       Duplicating

2.1.6.5.       Screen Drawing

2.1.6.6.       Using Slide View Panel

2.1.7.       Working with the Single Display Type

2.1.7.1.       Backtracking to Beginning Slide

2.1.7.2.       Backtracking to Previous Slide

2.1.7.3.       Advancing to Next Slide

2.1.7.4.       Advancing to Ending Slide

2.1.8.       Working with Mirrored Display Type

2.1.8.1.       Backtracking to Beginning Slide

2.1.8.2.       Backtracking to Previous Slide

2.1.8.3.       Advancing to Next Slide

2.1.8.4.       Advancing to Ending Slide

2.1.9.       Working with Chained Display Type

2.1.9.1.       Locking

2.1.9.2.       Backtracking to Beginning Slide

2.1.9.3.       Backtracking to Previous Slide

2.1.9.4.       Advancing to Next Slide

2.1.9.5.       Advancing to Ending Slide

2.1.10.       Password Protecting DPS/Base

2.1.10.1.       Setting a Password

2.1.10.2.       Changing a Password

2.1.11.       Working with HELP

2.1.11.1.       HELP Contents

2.1.11.2.       About DPS

2.1.12.       Exiting DPS/Base

2.2.       DPS/Satellite

2.2.1.       Description

2.2.2.       Launching DPS/Satellite

2.2.3.       Networking with DPS/Base Server

2.2.3.1.       Logging into DPS/Base Server

2.2.3.2.       Browsing for DPS/Base Servers

2.2.4.       Menu Options

2.2.4.1.       File

2.2.4.2.       Tools

2.2.4.3.       Help

2.2.5.       Opening and Closing Presentation File

2.2.5.1.       Open File

2.2.5.2.       Close File

2.2.6.       Setting Display Types

2.2.6.1.       Single

2.2.6.2.       Mirrored

2.2.6.3.       Chained

2.2.7.       Working with Displays

2.2.7.1.       Verifying Display IDs

2.2.7.2.       Selecting a Display

2.2.7.3.       Swapping

2.2.7.4.       Duplicating

2.2.7.5.       Screen Drawing

2.2.8.       Working with Single Display Type

2.2.8.1.       Backtracking to Starting Slide

2.2.8.2.       Backtracking to Previous Slide

2.2.8.3.       Advancing to Next Slide

2.2.8.4.       Advancing to Ending Slide

2.2.9.       Working with Mirrored Display Type

2.2.9.1.       Backtracking to Starting Slide

2.2.9.2.       Backtracking to Previous Slide

2.2.9.3.       Advancing to Next Slide

2.2.9.4.       Advancing to Ending Slide

2.2.10.       Working with Chained Display Type

2.2.10.1.       Locking

2.2.10.2.       Backtracking to Starting Slide

2.2.10.3.       Backtracking to Previous Slide

2.2.10.4.       Advancing to Next Slide

2.2.10.5.       Advancing to Ending Slide

2.2.11.       Working with HELP

2.2.11.1.       HELP Contents

2.2.11.2.       About DPS

2.3.       Exiting

2.3.1.       Exiting DPS/Satellite

2.3.2.       Exiting All From Satellite

3.       Non-functional Requirements

3.1.       End User to Deliverable Requirements

3.2.       Installation Requirements

3.3.       Development and System Feature Availability Requirements

3.4.       Programming Languages

3.5.       Other Requirements

4.       Context Diagram

5.       Use Cases

5.1.       Diagram

5.2.       Verify Valid IP and Password

5.3.       Connect to DPS/Base Server

5.4.       Presentation Slide

6.       Test Plans

6.1.       Features to be Tested

6.1.1.       GUI Test

6.1.1.1.       DPS/Base

6.1.1.2.       DP/Satellite

6.1.1.3.       DPS Displays

6.1.2.       Network Test

6.2.       Features Not to be Tested

6.2.1.       Maximum User Limit

6.2.2.       Security

6.3.       Item Pass Criteria

6.3.1.       GUI Test

6.3.1.1.       DPS/Base

6.3.1.1.1.       Startup

6.3.1.1.2.       Loading

6.3.1.1.3.       Tool Bar

6.3.1.1.4.       WhiteBoard

6.3.1.1.5.       Help

6.3.1.1.6.       Exit

6.3.1.1.7.       Swap Display

6.3.1.1.8.       Duplicate Display

6.3.1.1.9.       Load Presentation

6.3.1.1.10.       File Browse

6.3.1.1.11.       Single Display

6.3.1.1.12.       Mirrored Display

6.3.1.1.13.       Chained Display

6.3.1.1.14.       Slide View

6.3.1.2.       DPS/Satellite

6.3.1.2.1.       Startup

6.3.1.2.2.       Loading

6.3.1.2.3.       Tool Bar

6.3.1.2.4.       WhiteBoard

6.3.1.2.5.       Help

6.3.1.2.6.       Exit

6.3.1.2.7.       Swap Display

6.3.1.2.8.       Duplicate Display

6.3.1.2.9.       Load Presentation

6.3.1.2.10.       File Browse

6.3.1.2.11.       Single Display

6.3.1.2.12.       Mirrored Display

6.3.1.2.13.       Chained Display

6.3.1.3.       DPS Display

6.3.1.3.1.       Startup

6.3.1.3.2.       Display ID

6.3.1.3.3.       Exit

6.3.1.4.       DPS/Base Basic Function Test

6.3.1.4.1.       Startup

6.3.1.4.2.       Showing Display IDs

6.3.1.4.3.       Swap Display

6.3.1.4.4.       Load Presentation

6.3.1.4.5.       File Browse

6.3.1.4.6.       Slide Control

6.3.1.4.6.1.       Single Display

6.3.1.4.6.2.       Mirrored Display

6.3.1.4.6.3.       Chained Display

6.3.1.4.7.       Display Options

6.3.1.4.7.1.       Single Display

6.3.1.4.7.2.       Mirrored Display

6.3.1.4.7.3.       Chained Display

6.3.1.4.8.       Duplicate Display

6.3.1.4.9.       Slide View

6.3.1.5.       DPS/Satellite Basic Function Test

6.3.1.5.1.       Startup

6.3.1.5.2.       Show Display IDs

6.3.1.5.3.       Swap Display

6.3.1.5.4.       Load Presentation

6.3.1.5.5.       File Browse

6.3.1.5.6.       Slide Control

6.3.1.5.6.1.       Single Display

6.3.1.5.6.2.       Mirrored Display

6.3.1.5.6.3.       Chained Display

6.3.1.5.7.       Display Options

6.3.1.5.7.1.       Single Display

6.3.1.5.7.2.       Mirrored Display

6.3.1.5.7.3.       Chained Display

6.3.1.5.8.       Duplicate Display

7.       System Evolution

7.1.       Overview

7.2.       External Documentation

7.3.       Evolutionary Changes

7.4.       Internal Documentation

7.5.       Major Design Decisions

7.6.       Changes and their Impact

7.7.       Past Versions

7.8.       Future Work

7.8.1.       File Format

7.8.2.       Multiple Clients

7.8.3.       Slide Images

7.8.4.       DPS/Satellite for Tablet PC

7.8.5.       Interactive Flash Tutorial for DPS

8.       Glossary

1. Introduction

1.1. Description of DPS

DPS, the Dynamic Presentation System, aims to make the use of multiple displays in presentations such that individuals with even just basic computer usage skills can conduct these presentations without the wasted time of manually configuring a multiple display computer system and handling of multiple presentation applications at once. DPS can also optionally employ the use of a Personal Data Assistant (PDA) in order to conduct the presentation remotely. The system will allow the user to not only advance the slide presentation on one display, but may be used to display a history of slides across all available screens, display different presentations on different screens simultaneously, or any of the other possibilities which will be outlined in this document.

1.2. Purpose

Recent years have seen the steady decline in cost of computing equipment of all types. Due to this, institutions of education and businesses have seen fit to outfit classrooms and conference rooms with powerful computers and projection equipment. Instructors, business professionals in the field, and several others have made good use of this functionality, leading to increased clarity and productivity. Traditional presentation devices such as overhead projectors have seen less use as the modern projection equipment propagates even further.

In using digital projection equipment with computers, a tendency towards single-slide presentations using Microsoft PowerPoint and other presentation tools is readily seen. This sometimes leads to presenters moving back and forth through a series of slides in order to touch upon a point made earlier in the presentation. While this is more a nuisance than a problem, perhaps with the downward trend in prices of digital projection equipment an improvement can be made.

In the past, presenters using multiple screens to present several items simultaneously were required to manually position presentation tools within each screen. In addition, presenters had to directly manipulate several applications whenever one of the screens needed to be updated.

Dynamic Presentation System will streamline the usage of additional projectors or other displays by making the setup process very user-friendly. DPS will provide the flexibility to use one presentation with multiple projectors in several different ways. It will also give users the ability to manipulate multiple presentations with a single interface. DPS shall allow the user to put more effort into giving his or her presentation rather than worrying over multiple simultaneously running copies of Microsoft PowerPoint and confusing display settings.

1.3. Scope

Developers will use this document to look over the requirements and constraints of the system.

System testers will use this document to compare the output of the system with the expected output. They will also use the test plans in this document to run the system tests.

1.4. Overview

This document describes the requirements necessary to provide a presentation system that supports multiple displays controlled by a simple user interface and, optionally, a network-connected PDA device. It will also list all constrains of the system.

The Functional Requirements section of this document will outline exactly how the system and its applications will function, and what the user can expect.

The Non-functional Requirements section will present a list of conditions that the software shall meet, such as the computers the system shall be able to function on and conditions related to the user experience.

The Context Diagram and Use Cases sections provide a quick overview of how the user fits in to the functionality of the system, and how the user interacts with the system.

The Test Plans are a list of tests and passing results which will be used to determine whether the software is functionally complete and meets all of the requirements.

System Evolution gives a look into the future expansions of the Dynamic Projection System, and what functionality it will take on in later revisions.

2. Functional Requirements

2.1. DPS/Base

2.1.1. Description

DPS/Base is the software running on the desktop system which the displays are connected to. The DPS/Base system will also host the server with which the DPS/Satellite client will communicate. The user is allowed to control and manipulate the presentation using DPS/Base.

2.1.2. Launching DPS/Base

Input: User executes DPS/Base.
Output:
  1. All displays shall be blank and display solid black.
  2. Each display shall show its ID number in the upper right hand corner of the screen in light gray for five seconds.
  3. DPS/Base interface shall appear.
[Image of the main DPS/Base user interface with no file loaded.]

2.1.3. Menu Options

[Image of the menu bar.]

The menu bar consists of three items for the user to select from.

  • Opening and closing files functionality is under FILE.
  • Presentation functionalities are under TOOLS.
  • Help and information about DPS is under HELP.
2.1.3.1. File
[Image of the File menu.]
Input: User clicks FILE from the menu bar.
Output: FILE menu shall expand to show the FILE menu items.
Input: No presentation is currently open on current display.
Output: The CLOSE entry of the FILE menu shall be disabled.
Input: Presentation is loaded on current display.
Output: The CLOSE entry of the FILE menu shall be enabled.
Input: User clicks RECENT FILES of the FILE menu.
Output: RECENT FILES list shall expand to show the recent files.
2.1.3.2. Tools
[Image of the Tools menu.]
Input: User clicks on TOOLS from the menu bar with no file opened.
Output:
  1. TOOLS menu shall expand to show the TOOLS menu items.
  2. DRAW, DUPLICATE, LOCK, and SWAP DISPLAY shall be disabled.
Input: User clicks on TOOLS from the menu bar with a file opened.
Output:
  1. TOOLS menu shall expand to show the TOOLS menu items.
  2. All menu items shall be enabled.
Input: User clicks on CURRENT DISPLAY from menu bar.
Output: CURRENT DISPLAY submenu shall show.
2.1.3.3. Help
[Image of the Help menu.]
Input: User clicks on HELP from the menu bar.
Output: HELP menu shall expand to show the HELP menu items.

2.1.4. Opening and Closing Presentations

This section describes what happens when the user wishes to open or close a presentation. Essentially, it will function much like any other application which can open and close files. As with most of these applications, DPS/Base will be using standard controls.

2.1.4.1. Open File
Input: User presses the CONTROL and F keys on the keyboard.
Output: The File Browse dialog shall appear.
Input: User clicks OPEN FILE from the menu bar.
Output: The File Browse dialog shall appear.
[Image of the file browse dialog invoked by the Open File menu item.]
Input: User clicks an item from the Look In combo box.
Output: The file list panel shall change to the location selected by the user and display the file list of that location.
Input: Currently viewed location has been changed.
Output:
  1. The Look In combo box will display the new folder location.
  2. The Go to the Last Folder Visited button shall be enabled.
  3. If the selection is the Desktop, the Up One Level button shall be disabled.
  4. If the selection is something other than Desktop, the Up One Level button shall be enabled.
  5. The list panel shall list the files contained in that folder.
Input: User clicks the Go to the Last Folder Visited button.
Output: The currently viewed location will become the last folder visited.
Input: User clicks the Up One Level button.
Output: The currently viewed location will become the parent folder of the current location.
Input: User clicks the pull-down arrow of the File Name combo box.
Output: File paths previously opened in DPS on the system shall be displayed.
Input: User clicks a file path from the File Name history combo box.
Output: Selected file path shall be displayed as the selected entry in the File Name combo box.
Input: User clicks a file type from the File of Type combo box to specify what type of file to display.
Output:
  1. Selected item from the File of Type combo box shall be displayed as the selected item.
  2. Items corresponding to the selected file type will display in the list panel.
Input: User clicks the Cancel button.
Output: File Browse window shall disappear.
Input: User clicks the Open button.
Output: Display Options dialog shall appear.
Input:
  1. User clicks on an item in the RECENT FILE list.
  2. File selected exists on the system.
Output:
  1. Selected item from the RECENT FILE list shall open up.
  2. Slide view panel of DPS/Base interface shall fill up with picture representation of each slide in that file.
  3. Status bar on DPS/Base interface shall display file name and current slide index.
Input:
  1. User clicks on an item in the RECENT FILE list.
  2. File selected no longer exists on the system.
Output: A dialog box alerting the user that the file selected no longer exists will be presented.
[Image of the main DPS/Base user interface with a presentation loaded.]
2.1.4.2. Close File
Input: User clicks on CLOSE from the menu bar.
Output:
  1. The file on the selected display will close.
  2. The GUI elements for the selected display and, if applicable, other displays using the same presentation will reset to their original startup conditions.
  3. The display or displays on which the presentation was loaded shall be blanked and returned to its original startup condition.

2.1.5. Setting Display Types

Enables the user to choose between three different types of presentation style. After openning a file from the Open File dialog, Display Options dialog will appear.

Input:
  1. User selects a display type.
  2. User selects one or more display IDs in the choose ID list.
Output: The OK button shall be enabled.
Input: User clicks the CANCEL button.
Output: The Display Options shall close and retun to the DPS/Base interface.
2.1.5.1. Single

Single Display refers to the display type which allows the user to show a presentation on a single display. The Single Display type can only be assigned to a single monitor, and there can only be as many Single Displays as there are displays connected to the system (the primary controlling display excluded).

[Image of the Display Options dialog with Single Display selected.]
Input:
  1. User selects the SINGLE DISPLAY type.
  2. User selects a Display ID from the list.
  3. User clicks OK button.
Output:
  1. The Display Options dialog shall close and return to the DPS/Satellite main window.
  2. The first slide of the file that was loaded shall show on the selected Display ID.
  3. Slide view panel of DPS/Base interface shall fill up with picture representation of each slide in that file.
  4. Status bar on DPS/Base interface shall display file name and current slide index.
2.1.5.2. Mirrored

Mirrored Display refers to the display type which allows the user to show a presentation simultaneously on two or more displays. This is very similar to the Single Display type except in the fact that all screens with the Mirrored Display type will advance or backstep at the same time in the same presentation using the slide control. Multiple Mirrored Display type groups are permitted on a system, limited by the number of displays available (not including the primary controlling display).

[Image of the Display Options dialog with Mirrored Display selected.]
Input:
  1. User selects the MIRRORED DISPLAY type.
  2. User selects two or more Display ID from the list.
  3. User clicks OK button.
Output:
  1. The Display Options dialog shall close and return to the DPS/Satellite main window.
  2. The first slide of the file that has been loaded shall be shown on all displays in this Mirrored Display group.
  3. Slide view panel of DPS/Base interface shall fill up with picture representation of each slide in that file.
  4. Status bar on DPS/Base interface shall display file name and current slide index.
2.1.5.3. Chained

A chained display opens a single file for multiple displays, but shows them on each selected display in progression. Each time the slide chain is advanced, the older slides move to the next display in the chain while the next slide is loaded into the first display. There can be multiple chained presentation if there are enough displays to host the chained type.

[Image of the Display Options dialog with Chained Display selected.]
Input:
  1. User selects the CHAINED DISPLAY type.
  2. User selects two or more Display IDs from the list.
  3. User clicks OK button.
Output:
  1. The Display Options dialog shall close.
  2. The first slide of the file that was loaded shall show on the lowest selected Display ID.
  3. Slide view panel of DPS/Base interface shall fill up with picture representation of each slide in that file.
  4. Status bar on DPS/Base interface shall display file name and current slide index.

2.1.6. Working with Displays

2.1.6.1. Verifying Display IDs

Enables the user to verify the Display IDs of each display on DPS/Base. The IDs will appear at the upper right hand corner of the displays for 5 seconds in light gray and then disappear.

Input: User clicks on SHOW DISPLAY IDs from the TOOLS menu bar.
Output: Each display shall show its ID number in the upper right hand corner of the screen in light gray for five seconds.
Input: User clicks on SHOW IDs button on the DPS/Base interface.
Output: Each display shall show its ID number in the upper right hand corner of the screen in light gray for five seconds.
2.1.6.2. Selecting a Display

Enables the user to select which display to work with during the presentation. This is a combo box appearing in the toolbar of the main DPS/Base application.

2.1.6.3. Swapping

Enables the user to switch/re-order the positions of a display without manually moving the display device. The displays will be swap a long with it contents as well.

Input: User presses the CONTROL and P keys on the keyboard.
Output:
  1. Swap Displays dialog shall appear.
  2. Each display shall show its ID number in the upper right hand corner of the screen in light gray.
Input: User clicks on SWAP DISPLAYS from TOOLS menu bar.
Output:
  1. Swap Displays dialog shall appear.
  2. Each display shall show its ID number in the upper right hand corner of the screen in light gray.
Input: User clicks on SWAP DISPLAYS button on the interface.
Output:
  1. Swap Displays dialog shall appear.
  2. Each display shall show its ID number in the upper right hand corner of the screen in light gray.
[Image of the Swap Display dialog.]
Input:
  1. User selects the first Display ID from the Display A combo box.
  2. User selects a different Display ID from the Display B combo box.
Output: The APPLY button shall become enabled.
Input: User clicks the APPLY button.
Output:
  1. The Display IDs of the selected displays shall be swapped.
  2. APPLY button shall be disabled.
  3. Combo boxes Display A and Display B will be reset to blank entries.
Input: User clicks the OK button.
Output:
  1. The Display IDs of the selected displays shall be swapped.
  2. The Swap Displays window shall close.
  3. The Display ID numbers shall be removed from their respective displays.
Input: User selects the CANCEL button.
Output:
  1. The Swap Displays window shall close.
  2. The Display ID numbers shall be removed from their respective displays.
2.1.6.4. Duplicating

Enables the user to make a quick copy of a slide to a different display.

Input: User presses CONTROL and D keys on the keyboard.
Output: Duplicate Display dialog shall appear.
Input: User clicks DUPLICATE from CURRENT DISPLAY submenu of TOOLS menu.
Output: Duplicate Display dialog shall appear.
Input: User clicks on DUPLICATE button on the interface.
Output: Duplicate Display dialog shall appear.
[Image of the Duplicate Display dialog.]
Input: User clicks OK button.
Output: Selected Target Display shall display the same slide as current display.
Input: User clicks APPLY button.
Output:
  1. Selected Target Display shall display the same slide as a current display.
  2. Duplicate Display dialog shall still be visible.
Input: User clicks CANCEL button.
Output: Duplicate Display dialog shall disappear.
2.1.6.5. Screen Drawing

Enables the user to sketch notes or comments on the slides during the presentation. These notes or comments will not remain on the slides after the drawing panel is closed.

Input: User clicks DRAW from CURRENT DISPLAY submenu of TOOLS menu.
Output: Drawing dialog shall appear with current slide on whiteboard panel.
Input: User clicks DRAW button on the interface.
Output: Drawing dialog shall appear with current slide on whiteboard panel.
[Image of the Draw dialog and interface.]
Input: User clicks on color panel.
Output: Drawing pen color shall be the selected color.
Input: User clicks on the whiteboard panel and draws.
Output: Movement of the drawing pen shall reflect on the whiteboard panel and the current slide on the display.
Input: User clicks on CLEAR button.
Output: Drawings done to the current slide and whiteboard panel shall be erased.
Input: User clicks on CLOSE button.
Output:
  1. Drawing dialog shall disappear.
  2. Drawings done to the current slide shall be erased.
2.1.6.6. Using Slide View Panel

Enables user to skip slides easily without having to browse back and forth through the presentation slides to go to a particular slide. Only the single and mirrored display types will be able to use this feature. The chained display type will not have the ability to perform this functionality.

[Image of the main DPS/Base user interface after clicking a slide.]
Input: User clicks a slide picture on the slide view panel.
Output:
  1. The current display shall move to the selected slide.
  2. A border shall surround the selected slide in the slide view.
  3. Status bar of the DPS/Base interface shall show the slide index of the selected slide.

2.1.7. Working with the Single Display Type

This section describes how the user can interact with slides loaded on a display of the Single type.

[Image of the slide controls available on the main DPS/Base user interface.]
2.1.7.1. Backtracking to Beginning Slide
Input: User clicks TO START button on the DPS/Base interface.
Output:
  1. The current display shall move to the starting slide of the presentation.
  2. A border shall surround the first slide in the slide view.
  3. Status bar of the DPS/Base interface shall show the slide index of the first slide.
  4. The TO START and BACK button shall be disable.
2.1.7.2. Backtracking to Previous Slide
Input: User clicks BACK button on the DPS/Base interface.
Output:
  1. The current display shall move to the previous slide of the presentation.
  2. A border shall surround the previous slide in the slide view.
  3. Status bar of the DPS/Base interface shall show the slide index of the previous slide.
  4. If previous slide is the first slide, the TO START and BACK button shall be disable.
2.1.7.3. Advancing to Next Slide
Input: User clicks NEXT button on the DPS/Base interface.
Output:
  1. The current display shall move to the next slide of the presentation.
  2. A border shall surround the next slide in the slide view.
  3. Status bar of the DPS/Base interface shall show the slide index of the next slide.
  4. If the next slide is the last slide, the NEXT and TO END button shall be disable.
2.1.7.4. Advancing to Ending Slide
Input: User clicks TO END button on the DPS/Base interface.
Output:
  1. The current display shall move to the last slide of the presentation.
  2. A border shall surround the last slide in the slide view.
  3. Status bar of the DPS/Base interface shall show the slide index of the last slide.
  4. The NEXT and TO END button shall be disable.

2.1.8. Working with Mirrored Display Type

This section describes how the user can interact with slides loaded on displays of the Mirrored type.

[Image of the slide controls available on the main DPS/Base user interface.]
2.1.8.1. Backtracking to Beginning Slide
Input: User clicks TO START button on the DPS/Base interface.
Output:
  1. The current display and its mirrored partner shall move to the starting slide of the presentation.
  2. A border shall surround the first slide in the slide view.
  3. Status bar of the DPS/Base interface shall the show slide index of the starting slide.
  4. The TO START and BACK button shall be disable.
2.1.8.2. Backtracking to Previous Slide
Input: User clicks BACK button on the DPS/Base interface.
Output:
  1. The current display and its mirrored partner shall move to the previous slide of the presentation.
  2. A border shall surround the previous slide in the slide view.
  3. Status bar of the DPS/Base interface shall show the slide index of the previous slide.
  4. If the previous slide is the last slide, the TO START and BACK button shall be disable.
2.1.8.3. Advancing to Next Slide
Input: User clicks NEXT button on the DPS/Base interface.
Output:
  1. The current display and its mirrored partner shall move to the next slide of the presentation.
  2. A border shall surround the next slide in the slide view.
  3. Status bar of the DPS/Base interface shall the show slide index of the next slide.
  4. If the next slide is the last slide, the NEXT and TO END button shall be disable.
2.1.8.4. Advancing to Ending Slide
Input: User clicks TO END button on the DPS/Base interface.
Output:
  1. The current display and its mirrored partner shall move to the last slide of the presentation.
  2. A border shall surround the last slide in the slide view.
  3. Status bar of the DPS/Base interface shall the show slide index of the last slide.
  4. The NEXT and TO END button shall be disable.

2.1.9. Working with Chained Display Type

This section describes how the user can interact with slides loaded on a displays of the Chained type.

[Image of the slide controls available on the main DPS/Base user interface.]
2.1.9.1. Locking

Locking can be use to only lock a display that is part of a chained type. By locking the display, nothing can modify this display.

Input:
  1. User clicks the LOCK button on the DPS/Base interface.
  2. Current display is not locked.
Output:
  1. Current display shall be locked.
  2. A checkmark shall appear next to the LOCK menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
  3. The LOCK button shall be replaced with the UNLOCK button.
Input:
  1. User clicks the UNLOCK button on the DPS/Base interface.
  2. Current display is locked.
Output:
  1. Current display shall no longer be locked.
  2. The checkmark shall disappear next to the LOCK menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
  3. The UNLOCK button shall be replaced by the LOCK button.
Input:
  1. User clicks the checkmarked LOCK menu item of the CURRENT DISPLAYS submenu from the TOOLS menu bar.
  2. Current display is locked.
Output:
  1. Current display shall no longer be locked.
  2. A checkmark shall disappear from the LOCK menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
  3. The LOCK button shall be replaced with the UNLOCK button.
Input:
  1. User clicks the uncheckmarked LOCK menu item of the CURRENT DISPLAYS submenu from the TOOLS menu bar.
  2. Current display is not locked.
Output:
  1. Current display shall be locked.
  2. A checkmark shall appear next to the LOCK menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
  3. The LOCK button shall be replaced with the UNLOCK button.
2.1.9.2. Backtracking to Beginning Slide
Input: User clicks the TO START button on the DPS/Base interface.
Output:
  1. The lowest non-locked displays ID shall move to the starting presentation slide while other non-locked displays will set to blank.
  2. Disable the TO START and PREVIOUS buttons.
  3. Color border around slide pictures in the slide view panel shall border the new slide.
  4. Status bar of the DPS/Base interface shall show the new slide index.
2.1.9.3. Backtracking to Previous Slide
Input:
  1. User clicks the PREVIOUS button on the DPS/Base interface.
  2. Previous slide in the chain is not the starting presentation slide.
Output:
  1. The presentation on all non-locked displays shall move to the previous slide in the chain.
  2. Color border around slide pictures in the slide view panel shall border the new slide.
  3. Status bar of the DPS/Base interface shall show the new slide index.
Input:
  1. User clicks the PREVIOUS button on the DPS/Base interface.
  2. Previous slide in the chain is the starting presentation slide.
Output:
  1. The presentation on all non-locked displays shall move to the previous slide in the chain.
  2. Disable the TO START and PREVIOUS buttons.
  3. Color border around slide pictures in the slide view panel shall border the new slide.
  4. Status bar of the DPS/Base interface shall show the new slide index.
2.1.9.4. Advancing to Next Slide
Input:
  1. User clicks the NEXT button on the DPS/Base interface.
  2. Next slide in the chain is not the last presentation slide.
Output:
  1. The presentation on all non-locked displays shall move to the next slide in the chain.
  2. Color border around slide pictures in the slide view panel shall border the new slide.
  3. Status bar of the DPS/Base interface shall show the new slide index.
Input:
  1. User clicks the NEXT button on the DPS/Base interface.
  2. Next slide in the chain is the last presentation slide.
Output:
  1. The presentation on all non-locked displays shall move to the next slide in the chain.
  2. Disable the NEXT and TO END buttons.
  3. Color border around slide pictures in the slide view panel shall border the new slide.
  4. Status bar of the DPS/Base interface shall show the new slide index.
2.1.9.5. Advancing to Ending Slide
Input: User clicks the TO END button on the DPS/Base interface.
Output:
  1. The lowest non-locked displays ID shall move to the last presentation slide whily other non-locked displays will be in the chain of ending slides.
  2. Disable the NEXT and TO END buttons.

2.1.10. Password Protecting DPS/Base

In order to prevent unauthorized remote control of DPS/Base presentations using a copy of DPS/Satellite or some other tool, a password protection scheme will be included. This will require a password to be set within DPS/Base before remote connections are permitted. Any remote connections must supply the correct password in order to gain control of the system.

[Image of the Set Password dialog.]
Input: User clicks on SET PASSWORD from tools menu bar.
Output: Set Password dialog shall appear.
2.1.10.1. Setting a Password
Input: No password has been previously set by the user.
Output: Current Password text field shall be disabled.
Input: A password has been set previously.
Output: Current Password text field shall be enabled.
[Image of the dialog appearing after a password had been set successfully.]
Input:
  1. Current Password text field is disabled.
  2. New Password and Confirm Password fields contain matching entries.
  3. User clicks OK button.
Output:
  1. Set Password dialog shall disappear.
  2. Password Success message prompt shall appear.
Input:
  1. Confirm Password entry matches the previously set password.
  2. New Password and Confirm Password fields contain matching entries.
  3. User selects OK Button.
Output:
  1. Set Password dialog shall disappear.
  2. Password Success message prompt shall appear.
Input: User clicks OK button on the Password Success message prompt.
Output: Password Success message prompt shall disappear.
2.1.10.2. Changing a Password
[Image of the dialog appearing if the new password and confirm new password fields are not equal.]
Input:
  1. New Password and Confirm Password fields do not contain matching entries.
  2. User selects OK button.
Output: New Password Do Not Match dialog shall appear.
Input: User clicks OK button on the New Password Do Not Match message prompt.
Output: New Password Do Not Match message prompt shall disappear.
[Image of the dialog appearing if the current password does not match the one entered by the user.]
Input: Confirm Password text field entry does not match the previously set password.
Output: Current Password is Incorrect message prompt shall appear.
Input: User clicks OK button on Current Password is Incorrect message prompt.
Output: Current Password is Incorrect message prompt shall disappear.

2.1.11. Working with HELP

The Help feature will be using the stardard Help interface component where .CHM files shall need to be generated for this purpose.

2.1.11.1. HELP Contents
Input: User clicks on HELP CONTENTS from the HELP menu bar.
Output: HELP CONTENTS dialog appears.
[Image of the DPS Help Contents window invoked by the Help menu.]
Input: User selects a node of the help tree.
Output:
  1. Selected node shall be highlighted.
  2. Selected node shall display its child node help items.
Input: User selects a child node of the help tree.
Output: Right panel shall display the contents of the child node help item.
[Image of the DPS Help Contents window with the Index tab selected.]
Input: User selects on the INDEX tab.
Output: Index interface shall appear on the left panel.
Input: User types in a keyword to find.
Output: Matching item for the input characters shall be highlighted in the list.
Input:
  1. User selects an item from the INDEX panel.
  2. User clicks on DISPLAY button.
Output: Right panel shall display the content of the selected item.
Input: User selects the CLOSE button.
Output: The HELP topic dialog shall disappear.
2.1.11.2. About DPS
Input: User clicks ABOUT DPS from the HELP menu bar
Output: About DPS dialog shall appear.
[Image of the About DPS dialog.]
Input: User clicks OK button.
Output: About DPS dialog shall disappear.

2.1.12. Exiting DPS/Base

Input: User clicks on EXIT from the menu bar.
Output: EXIT DPS message prompt shall appear.
Input: User presses ALT and Q keys on the keyboard.
Output: EXIT DPS message prompt shall appear.
[Image of the DPS exit confirmation dialog.]
Input: User clicks YES button on EXIT DPS message prompt.
Output:
  1. DPS/Base program shall terminate.
  2. All displays shall return to original display and resolution size.
Input: User clicks NO button on EXIT DPS message prompt.
Output: DPS/Base program shall return to previous state.

2.2. DPS/Satellite

2.2.1. Description

DPS/Satellite is the software that runs on the PDA. It is similar to the one running on the desktop computer but the satellite act mor of a client controlling the desktop computer.

2.2.2. Launching DPS/Satellite

Input: User executes DPS/Satellite.
Output: Connect to Server dialog shall appear to allow the user to create a connection between the DPS/Satellite and a DPS/Base server.

2.2.3. Networking with DPS/Base Server

There are two ways to connect to the DPS/Base Server. This way are through knowing the actual DPS/Base Server IP or browsing for the DPS/Base servers. There will not be any DNS look up for domain name. It shall only take in IP addresses.

2.2.3.1. Logging into DPS/Base Server
[Image of the server connection dialog which is displayed on DPS/Satellite after it is executed.]
Input: User enters IP address.
Output: Connect button shall be enabled.
Input: Connect button is selected with stylus.
Output: Conncetion status dialog shall appear.
Input: User enters invalid IP address.
Output: Error icon shall appear near the Server IP text area.
Input: DPS/Base server detects incorrect passwsord during connection attempt.
Output:
  1. Connect to DPS/Base server dialog shall appear.
  2. Error icon shall appear near the password text area.
Input: User selects X with the stylus.
Output: Connect to DPS/Base server window shall disappear.
Input: User selects BROWSE button with the stylus.
Output: Search for DPS server window shall appear.
2.2.3.2. Browsing for DPS/Base Servers
[Image of the server browsing dialog.]
Input: User selects a server from the DPS server list box with the stylus.
Output:
  1. Selected server shall be highlighted.
  2. The OK button shall be enabled.
Input: User selects the SEARCH button with the stylus.
Output: DPS server list box shall be filled with DPS servers detected on the network.
Input: User selects the CANCEL button with the stylus
Output:
  1. The Search for DPS server window shall disappear return to the Connect to DPS/Base server window.
  2. The selected DPS server shall be inserted in the Server IP text area of the Connect to DPS/Base server window.
Input: User selects the CANCEL button with the stylus
Output: Search for DPS server window shall disappear and return to the Connect to DPS/Base server window.

2.2.4. Menu Options

[Image of the DPS/Satellite menu bar.]

The menu bar consists of three items for the user to select from. Opening and closing files functionality is under FILE. Presentation functionality is under TOOLS. Help and information about DPS is under HELP.

2.2.4.1. File
[Image of the DPS/Satellite File menu.]
Input: User selects the FILE menu from the menu bar with the stylus.
Output: The FILE menu shall expand to show the FILE menu entires.
Input: No presentation is currently open on the selected display.
Output: The CLOSE menu item under FILE menu shall be disabled.
Input: File presentation is loaded on current display.
Output: The CLOSE menu item of the FILE menu bar shall be disabled.
2.2.4.2. Tools
[Image of the DPS/Satellite Tools menu.]
Input: User selects the TOOLS menu from the menu bar with the stylus.
Output: The TOOLS menu shall expand to show the TOOLS menu entires.
Input: User selects the CURRENT DISPLAY submenu from the TOOLS menu bar with a stylus.
Output: Submenu of CURRENT DISPLAY shall expand.
Input: User selects the TOOLS menu from the menu bar with the stylus.
Output: The TOOLS menu shall expand to show the TOOLS menu entries.
Input: Current display is not a part of a chained presentation.
Output: The LOCK menu item under the CURRENT DISPLAY submenu of the TOOLS menu bar shall be disabled.
Input: Current display is a part of a chained presentation.
Output: The LOCK menu item under CURRENT DISPLAY submenu of the TOOLS menu bar shall be enabled.
2.2.4.3. Help
[Image of the DPS/Satellite Help menu.]
Input: User selects HELP menu from the menu bar with the stylus.
Output: The HELP menu shall expand to show the HELP menu entries.

2.2.5. Opening and Closing Presentation File

Opening presentation file through the DPS/Satellite is a little different than the DPS/Base. Information from the DPS/Base file/folder system will be sent to the DPS/Satellite allowing the user to select which file or folder to open.

2.2.5.1. Open File
Input: User selects the OPEN FILE menu item from the FILE menu bar with the stylus.
Output: The Open File dialog shall appear.
[Image of the file opening dialog.]
Input: User selects an item from the Look In combo box with the stylus.
Output: The file list view shall change to the location selected by the user and display the file list of that location.
Input: Currently viewed location has been changed.
Output:
  1. The Look In combo box will display the new folder location.
  2. If the selection is the Desktop, the UP button shall be disabled.
  3. If the selection is something orthan than Desktop, the UP button shall be enabled.
  4. The list view shall list the files contained in that folder.
Input: User selects the UP button with the stylus
Output: The currently viewed location will become the parent folder for the current location.
Input: User select a file from the the file list with the stylus.
Output:
  1. The OPEN button show be enabled.
  2. The selected file in the file list shall be highlighted.
Input: User selects the OPEN buton with the stylus.
Output:
  1. The Open File dialog shall disappear.
  2. The Displays Option dialog shall appear to allow the user to select the Display Types (see section 2.2.6).
Input: User selects the CANCEL button with the stylus.
Output: The Open File dialong shall disappear and return to the DPS/Satellite main window.
2.2.5.2. Close File
Input: User selects the CLOSE menu item from the FILE menu bar with the stylus.
Output: User is prompted with a modal question dialog asking if the user is sure to exit.
Input: User selects the OK button from the prompted question dialog with the stylus.
Output:
  1. The prompted question dialog shall disappear and returning to the DPS/Satellite main window.
  2. Prsentation loaded into current display shall be unloaded and the screen is blanked.
Input: User selects the NO button from the prompted question dialog with the stylus.
Output: The prompted question dialog show disappear and returning to the DPS/Satellite main window.

2.2.6. Setting Display Types

Enables the user to choose between three different types of presentation style.

Input:
  1. User selects a display type with the stylus.
  2. User selects one or more display IDs in the choose ID list.
Output: The OK button shall be enabled.
Input: User selects the CANCEL button.
Output: The Display Options shall close and retun to the File Open dialog window.
2.2.6.1. Single

Single Display is a display type which refer to how all slides of an open file are shown on only one screen.

[Image of the Display Options dialog on DPS/Satellite with Single Display selected.]
Input:
  1. User selects the SINGLE DISPLAY type with the stylus.
  2. User selects a Display ID from the list with the stylus.
  3. User selects the OK button.
Output:
  1. The Display Options dialog shall close and return to the DPS/Satellite main window.
  2. The file that was loaded shall show on the selected Display ID.
2.2.6.2. Mirrored

Mirrored Display is a display type which refer to how all slides of an open file are shown on multiple selected screens. All screens with the mirrored display type will advance or backstep at the same time using the slide control.

[Image of the Display Options dialog on DPS/Satellite with Mirrored Display selected.]
Input:
  1. User selects the MIRRORED DISPLAY type with the stylus.
  2. User selects two or more Display ID from the list with the stylus.
  3. User selects the OK button.
Output:
  1. The Display Options dialog shall close and return to the DPS/Satellite main window.
  2. The file that was loaded shall show on all the selected Display ID.
2.2.6.3. Chained

A chained display opens a single file for multiple displays, but shows them on each selected display in progression. Each time the slide chain is advanced, the older slides move to the next display in the chain while the next slide is loaded into the first display.

[Image of the Display Options dialog on DPS/Satellite with Chained Display selected.]
Input:
  1. User selects the CHAINED DISPLAY type with the stylus.
  2. User selects two or more Display ID from the list with the stylus.
  3. User selects the OK button.
Output:
  1. The Display Options dialog shall close.
  2. The file that was loaded shall show on the lowest selected Display ID.

2.2.7. Working with Displays

2.2.7.1. Verifying Display IDs

Enables the user to verify the Display IDs of each display connected to the computer system running DPS/Base. The IDs will appear at the upper right hand corner of the displays for 5 seconds in light gray and then disappear.

Input: User selects the SHOW DISPLAY ID button with the stylus.
Output: Each display shall show its ID number int the upper right hand corner of the screen in light gray for five seconds.
Input: User selects the SHOW DISPLAY ID menu item from the TOOLS menu bar with the stylus.
Output: Each display shall show its ID number in the upper right hand corner of the screen in light gray for five seconds.
2.2.7.2. Selecting a Display

Enables the user to select which display to work with during the presentation.

Input:
  1. User selects the Display ID from the combo box in the DPS/Satellite main window with the stylus.
  2. The selected display has no file presentation.
Output:
  1. The selected display shall show a blank screen.
  2. All buttons and menu item except the SWAP DISPLAYS button and menu item shall be disabled.
Input:
  1. User selects the Display ID from the combo box in the DPS/Satellite main window with the stylus.
  2. The selected display has a file presentation.
Output:
  1. The selected display shall show its current slide.
  2. Dependent on the slide, all buttons and menu item shall be enabled.
2.2.7.3. Swapping

Enables the user to switch/re-order the positions of a display without manually moving the display device.

Input: User selects the SWAP DISPLAYS button with the stylus.
Output:
  1. Each displays shall show it's ID number in the upper right hand corner of the screen in light gray.
  2. The Swap Displays modal dialog shall appear.
[Image of the Swap Display dialog on DPS/Satellite.]
Input: User selects the SWAP DISPLAYS menu item under the TOOLS menu bar with the stylus.
Output:
  1. Each displays shall show it's ID number in the upper right hand corner of the screen in light gray.
  2. The Swap Displays modal dialog shall appear.
Input:
  1. User selects the first Display ID from the Display A combo box with the stylus.
  2. User selects a different Display ID from the Display B combo box.
Output: The APPLY button shall become enabled.
Input: User selects the APPLY button with the stylus.
Output:
  1. The Disply IDs of the selected display shall be swapped.
  2. The APPLY button shall be disabled.
  3. Display A and Display B combo box shall be reset to blank entries.
  4. The Display ID numbers shall be removed from their respective displays.
Input: User selects the OK button with the stylus.
Output:
  1. The Display IDs of the selcted displays shall be swapped.
  2. The Swap Displays dialog shall disappear and return to the DPS/Satellite main window.
  3. The DIsplay ID number shall be removed from their respective displays.
Input: User selects the CANCEL button with the stylus.
Output: The Swap Displays window shall disappear and return to DPS/Satellite main window.
2.2.7.4. Duplicating

Enables the user to make a quick copy of a slide to a different display.

Input: If no presentation files were opened.
Output: The DUPLICATE SLIDE button and DUPLICATE SLIDE menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
Input: If a presentation file were loaded.
Output: All menu items, bars, and buttons shall be enabled.
Input: User selects the DUPLICATE button witht he stylus.
Output: The Duplicate Slide modal dialog shall appear.
Input: User selects the DUPLICATE SLIDE menu item of CURRENT DISPLAYS submenu under the TOOLS menu bar with the stylus.
Output: The Duplicate Slide modal dialog shall appear.
[Image of the Duplicate Slide dialog on DPS/Satellite.]
Input: User selects a Display ID from the combo box with the stylus.
Output: The APPLY button shall be enabled.
Input: User selects the APPLY button.
Output:
  1. The combo box shall resent to its blanks entries.
  2. The APPLY button shall be disabled.
  3. The selected display shall show the duplicated slide.
Input: Users select the OK button with the stylus.
Output:
  1. The selected display shall show the duplicated slide.
  2. The Duplicate Slide dialog shall disappear and return to DPS/Satellite main window.
Input: User selects the CANCEL button with the stylus.
Output: The Duplicate Slide dialog shall disappear and return to the DPS/Satellite main window.
2.2.7.5. Screen Drawing

Enables the user to sketch notes or comments on the slides during the presentation. These notes or comments will not remain on the slides after the drawing panel is closed.

[Image of the DPS/Satellite main interface, showcasing the Screen Drawing whiteboard]
Input: User selects the DRAW button with the stylus.
Output:
  1. The DRAW button shall be toggled downward.
  2. A checkmark shall appear next to the DRAW menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
  3. The current slide of the selected display shall appear in the draw board area of the DPS/Satellite main window.
  4. The BLACK color on the drawing board shall be selected.
Input: User selects the DRAW menu item from the CURRENT DISPLAY submenu under the TOOLS menu bar with the stylus.
Output:
  1. The DRAW button shall be toggled downward.
  2. A checkmark shall appear next to the DRAW menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
  3. The current slide of the selected display shall appear in the draw board area of the DPS/Satellite main window.
  4. The BLACK color on the drawing board shall be selected.
Input: User select a different color with the stylus.
Output:
  1. The old color shall be unselected.
  2. The new color shall be selected.
Input: User draws on the whiteboard with the stylus.
Output:
  1. The DPS/Satellite whiteboard shall show what the user has drawn.
  2. The current display show shall show what the user has drawn.
Input: User select the CLEAR button with the stylus.
Output:
  1. The drawing board shall be erased of any drawing.
  2. The current display shall be erased of any drawing.
Input: User select the downward toggled DRAW button with the stylus.
Output:
  1. The DRAW button shall be untoggled.
  2. The checkmark shall disappear next to the DRAW menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
  3. The drawing whiteboard on the DPS/Satellite main window will be empty of all drawings and slide images.
Input: User select the checked DRAW menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar with the stylus.
Output:
  1. The DRAW button shall be untoggled.
  2. The checkmark shall disappear next to the DRAW menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
  3. The drawing whiteboard on the DPS/Satellite main window will be empty of all drawings and slide images.

2.2.8. Working with Single Display Type

[Image of the DPS/Satellite slide control buttons.]
2.2.8.1. Backtracking to Starting Slide
Input: User selects the TO START button with the stylus.
Output:
  1. Display shall show the starting presentation slide.
  2. Disable TO START and PREVIOUS buttons.
2.2.8.2. Backtracking to Previous Slide
Input:
  1. User selects the PREVIOUS button with the stylus.
  2. Previous slide is not the starting presentation slide.
Output: Display shall shall move to the previous presentation slide.
Input:
  1. User selects the PREVIOUS button with the stylus.
  2. Previous slide will be the starting presentation slide.
Output:
  1. Display shall show the starting presentation slide.
  2. Disable the TO START and PREVIOUS buttons.
2.2.8.3. Advancing to Next Slide
Input:
  1. User selects the NEXT button with the stylus.
  2. Next slide is not the last presentation slide.
Output: Display shall shall move to the next presentation slide.
Input:
  1. User selects the NEXT button with the stylus.
  2. Next slide will be the last presentation slide.
Output:
  1. Display shall show the last presentation slide.
  2. Disable the NEXT and TO END buttons.
2.2.8.4. Advancing to Ending Slide
Input: User selects the TO END button with the stylus.
Output:
  1. Display shall show the last presentation slide.
  2. Disable NEXT and TO END buttons.

2.2.9. Working with Mirrored Display Type

[Image of the DPS/Satellite slide control buttons.]
2.2.9.1. Backtracking to Starting Slide
Input: User selects the TO START button with the stylus.
Output:
  1. Displays shall show the starting presentation slide.
  2. Disable TO START and PREVIOUS buttons.
2.2.9.2. Backtracking to Previous Slide
Input:
  1. User selects the PREVIOUS button with the stylus.
  2. Previous slide is not the starting presentation slide.
Output: Displays shall shall move to the previous presentation slide.
Input:
  1. User selects the PREVIOUS button with the stylus.
  2. Previous slide will be the starting presentation slide.
Output:
  1. Displays shall show the starting presentation slide.
  2. Disable the TO START and PREVIOUS buttons.
2.2.9.3. Advancing to Next Slide
Input:
  1. User selects the NEXT button with the stylus.
  2. Next slide is not the last presentation slide.
Output: Displays shall shall move to the next presentation slide.
Input:
  1. User selects the NEXT button with the stylus.
  2. Next slide will be the last presentation slide.
Output:
  1. Displays shall show the last presentation slide.
  2. Disable the NEXT and TO END buttons.
2.2.9.4. Advancing to Ending Slide
Input: User selects the TO END button with the stylus.
Output:
  1. Displays shall show the last presentation slide.
  2. Disable NEXT and TO END buttons.

2.2.10. Working with Chained Display Type

[Image of the DPS/Satellite slide control buttons.]
2.2.10.1. Locking
Input:
  1. User selects the LOCK button on the DPS/Satellite interface with the stylus.
  2. Current display is not locked.
Output:
  1. Current display shall be locked.
  2. A checkmark shall appear next to the LOCK menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
  3. The LOCK button shall be replaced with the UNLOCK button.
Input:
  1. User selects the UNLOCK button on the DPS/Satellite interface with the stylus.
  2. Current display is locked.
Output:
  1. Current display shall no longer be locked.
  2. The checkmark shall disappear next to the LOCK menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
  3. The UNLOCK button shall be replaced by the LOCK button.
Input:
  1. User selects the checkmarked LOCK menu item of the CURRENT DISPLAYS submenu from the TOOLS menu bar with the stylus.
  2. Current display is locked.
Output:
  1. Current display shall no longer be locked.
  2. A checkmark shall disappear from the LOCK menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
  3. The LOCK button shall be replaced with the UNLOCK button.
Input:
  1. User selects the uncheckmarked LOCK menu item of the CURRENT DISPLAYS submenu from the TOOLS menu bar with the stylus.
  2. Current display is not locked.
Output:
  1. Current display shall be locked.
  2. A checkmark shall appear next to the LOCK menu item of the CURRENT DISPLAY submenu from the TOOLS menu bar.
  3. The LOCK button shall be replaced with the LOCK button.
2.2.10.2. Backtracking to Starting Slide
Input: User selects the TO START button with the stylus.
Output:
  1. The lowest non-locked displays ID shall move to the starting presentation slide while other non-locked displays will set to blank.
  2. Disable the TO START and PREVIOUS buttons.
2.2.10.3. Backtracking to Previous Slide
Input:
  1. User selects the PREVIOUS button with the stylus.
  2. Previous slide in the chain is not the starting presentation slide.
Output: The presentation on all non-locked displays shall move to the previous slide in the chain.
Input:
  1. User selects the PREVIOUS button with the stylus.
  2. Previous slide in the chain is the starting presentation slide.
Output:
  1. The presentation on all non-locked displays shall move to the previous slide in the chain.
  2. Disable the TO START and PREVIOUS buttons.
2.2.10.4. Advancing to Next Slide
Input:
  1. User selects the NEXT button with the stylus.
  2. Next slide in the chain is not the last presentation slide.
Output: The presentation on all non-locked displays shall move to the next slide in the chain.
Input:
  1. User selects the NEXT button with the stylus.
  2. Next slide in the chain is the last presentation slide.
Output:
  1. The presentation on all non-locked displays shall move to the next slide in the chain.
  2. Disable the NEXT and TO END buttons.
2.2.10.5. Advancing to Ending Slide
Input: User selects the TO END button with the stylus.
Output:
  1. The lowest non-locked displays ID shall move to the last presentation slide whily other non-locked displays will be in the chain of ending slides.
  2. Disable the NEXT and TO END buttons.

2.2.11. Working with HELP

2.2.11.1. HELP Contents
Input: User selects the HELP CONTENTS menu item under the HELP menu bar with the stylus.
Output: The Help Contents dialog shall appear.
Input: User selects the CONTENTS tab from the Help Cotents dialog with the stylus.
Output: The right panel of the Help Contents dialog shall show a tree list view of the main help nodes content.
Input: User selects the INDEX tab from the Help Contents dialog with the stylus.
Output: The right panel of the Help Content dialog shall show a list of keyword for the user to quick find.
Input: User selects the SEARCH tab from the Help Contents dialog with the stylus.
Output: The right panel of the Help Content dialog shall allow the user to search for help topics.
Input: User selects a node from the right panel under any tab from the Help Contents dialog with the stylus.
Output:
  1. The selected node show be highted.
  2. The left panel of the Help Content dialog shall show the detail help information relating to the selected node.
Input: User selects X from the Help Content dialog with the stylus.
Output: The Help Contents dialog shall disappear and return to the DPS/Satellite main window.
2.2.11.2. About DPS
[Image of the About DPS dialog on DPS/Satellite.]
Input: User selects the ABOUT DPS menu item under the HELP menu bar with the stylus.
Output: The About DPS modal dialog shall appear showing DPS credits information.
Input: User select X from the ABout DPS dialog with the stylus.
Output: The About DPS dialog shall disappear and return to the DPS/Satellite main window.
Input: User selects the OK button from the About DPS dialog with the stylus.
Output: The About DPS dialog shall disappear and return to the DPS/Satellite main window.

2.3. Exiting

2.3.1. Exiting DPS/Satellite

Input: User selects X on the main DPS/Satellite window with the stylus.
Output: User is prompted with a modal question dialog asking if the user is sure to exit.
Input: User selects the EXIT SATELLITE menu item under the FILE menu bar with the stylus.
Output: User is prompted with a modal question dialog asking if the user is sure to exit.
Input: User selected the YES button from the prompted question dialog with the stylus.
Output:
  1. The prompted question dialog shall disappear.
  2. DPS/Satellite window shall disappear and return to PDA's operating environment.
Input: User selects the NO button from the prompted question dialog with the stylus.
Output: The prompted question dialog shall disappear and return to the DPS/Satellite main window.

2.3.2. Exiting All From Satellite

Input: User select the EXIT ALL menu item under the FILE menu bar with the stylus.
Output: User is prompted with a modal question dialog asking if the user is sure to exit.
Input: User selects the YES button from the prompted question dialog with the stylus.
Output:
  1. All displays shall be blank of all DPS contents.
  2. The DPS/Base main window shall disappear from the desktop computer system.
  3. The prompted question dialog shall disappear.
  4. The DPS/Satellite main window shall disappear from the DPA and return to the PDA's operating environment.
Input: User selects the NO button from the prompted question dialog with the stylus.
Output: The prompted question dialog shall disappear and return to the DPS/Satellite main window.

3. Non-functional Requirements

3.1. End User to Deliverable Requirements

  1. The DPS/Base system must be capable of operating at a reasonable speed on any system which meets or exceeds the recommended system specifications of the operating system it is running on. Recommended Requirements: A PC with a Pentium-class processor recommended (766 MHz or greater.) ,Microsoft Windows 2000 or later (Windows XP), A minimum of 256 MB of RAM, 126 MB of free hard disk space, Monitors should support 800 X 600 or greater resolution with at least 256 colors, Multiple video cards with 128 mb of memory on each.
  2. System shall utilize existing Ethernet, Wireless Ethernet, and TCP/IP infrastructure for communication between DPS/Base and DPS/Satellite. Future releases of DPS/Base may or may not take advantage of newer networking standards and technologies in addition.

3.2. Installation Requirements

  1. NSIS will be used for installation

3.3. Development and System Feature Availability Requirements

  1. The DPS/Base system shall be developed for Microsoft Windows 2000 and Microsoft Windows XP to take advantage of their multiple display capabilities. Future releases of DPS/Base may or may not include support for other operating systems. Windows 2000 and XP has the capabilities to do multiple displays.
  2. The DPS/Satellite system shall be developed for Microsoft Pocket PC 2003. Future releases of DPS/Satellite may or may not include support for other embedded operating systems.

3.4. Programming Languages

All changes that made to the DPS/Base and DPS/Satellite, shall be implemented in C#. This shall ensure that modifications will be easy and efficient. Not following this shall lead to increase difficulty of system evolution.

3.5. Other Requirements

  1. System must be reasonably secure against unauthorized access to the DPS/Base server through the use of passwords or any other identification medium.
  2. System shall make use of techniques to ensure that novice computer users will be able to install and uninstall the system quickly and easily.
  3. System shall maintain a level of intuitivism to keep the learning curve for the software shallow. The need to refer to documentation must be minimized.
  4. System shall contain all necessary components for operation, and not require the installation of third-party software for operation.
  5. System shall support a maximum one user
  6. System shall support as many displays as the computer system can support

4. Context Diagram

[Context Diagram.]

5. Use Cases

5.1. Diagram

[Use Case Diagram.] Use Case Diagram to show relationship between the user and the system.

5.2. Verify Valid IP and Password

  1. IP is valid.
  2. Password is recognized by server.
  3. Connection can be established.

Alternative: Invalid IP
At step 1, IP entered is invalid. Error icon shall appear and user will be allowed to enter new IP.

Alternative: Invalid Password
At step 2, server fails to verify password. Allow user to enter re-enter password.

5.3. Connect to DPS/Base Server

  1. User types in IP address.
  2. User types in password.
  3. User clicks the OK button.
  4. System confirms if connection established.

Alternative: Browse for DPS Servers
At step 1, if user doesn't know IP he can browse for listening DPS connections.

5.4. Presentation Slide

  1. User selects a presentation from the Open File history combo box.
  2. User selects to view the presentation either in single, mirrored, or chained mode.
  3. User assigns the presentation to display(s) from the list.
  4. System shows the presentation on the selected display(s).
  5. User can advance and backtrack through the slides as usual.
  6. User can select a chained display to be locked, so when advancing or backtracking that display stays at a fixed slide.

Alternative: Browse Slide-Based File
At step 1, user can browse for slide-based file.

Alternative: Manually Type File Path of Slide-Based File
At step 1, user can type in the file path for slide-based file.

6. Test Plans

6.1. Features to be Tested

6.1.1. GUI Test

6.1.1.1. DPS/Base
The system should provide a GUI for the user to control the displays and let the system connect to the DPS server.
6.1.1.2. DP/Satellite
The system shall provide a GUI for the user to control the displays and enable the connection with a DPS/Satellite.
6.1.1.3. DPS Displays
The system shall provide a GUI for the displays for the user to view.

6.1.2. Network Test

Check connectivity of the system in the LAN environment.

6.2. Features Not to be Tested

6.2.1. Maximum User Limit

Reason: This is a condition in the requirement document for that there can only be 1 DPS/Satellite system connection to each DPS/Base system.

6.2.2. Security

Reason: The security will not be tested because there will be no encryption of the data sent from the base system to the satellite system. However, there is a password check when the satellite system is trying to connect to the base.

6.3. Item Pass Criteria

6.3.1. GUI Test

6.3.1.1. DPS/Base
6.3.1.1.1. Startup
Pass Criteria:
  1. The user will be presented with a GUI to set the password for the Base
  2. The user will presented with the GUI to the control all the displays
6.3.1.1.2. Loading
Pass Criteria:
  1. If browse is selected, the open file browse GUI will let the user browse the file they want
  2. If the user selected the display type and the display IDs, the Display Option shall disappear.
  3. How it will show will be according to what display type the user selected
6.3.1.1.3. Tool Bar
Pass Criteria:
  1. If the user selects "next", the GUI will show the graphic of the next slide being selected in the slide view.
  2. If the user selects "previous", the GUI will show the graphic of the previous slide being selected in the slide view .
  3. If the user selects "start", the GUI will show the graphicof the first slide selected on the slide view and the "previous" button will be grayed out.
  4. If the user selects "end", the GUI will show the graphic of the last slide in the slide view and the "next" button will be grayed out.
  5. If the user selects "lock", the lock button will be pressed down..
  6. If the user selects "unlock", the lock button will be depressed.
  7. If the user selects "duplicate", the GUI will be the same but the selected display will have the duplicated slide.
  8. If the user decided to scroll, the scroll slider will slide to where the user wants to scroll at.
6.3.1.1.4. WhiteBoard
Pass Criteria:
  1. If user selects a color then when a user starts to draw on the whiteboard then the graphic or text being drawn will be the color selected.
  2. If the user selects the Clear button and presses that button then the whiteboard will go back to white with no drawing or text in it.
  3. If the user selects the Cancel button the White Board dialog shall disappear.
6.3.1.1.5. Help
Pass Criteria:
  1. If the user selects "Help Contents", the GUI will appear.
6.3.1.1.6. Exit
Pass Criteria:
  1. If the user selects "exit", the GUI will disappear.
6.3.1.1.7. Swap Display
Pass Criteria:
  1. "Swap Display" window shall show on controller screen
  2. If a user selects display ID from display A the selected display shall be shown in the display A drop-menu and the apply button shall not be greyed out.
  3. If the user selects the "apply" button re-ordering of the display ID shall show on their corresponding displays.
  4. If the user selects the "cancel" button the swap display ID window shall disappear.
  5. If the user selects the "OK" button re-ordering of the display ID shall show on the corresponding displays and the dialog shall close.
6.3.1.1.8. Duplicate Display
Pass Criteria:
  1. "Duplicate Display" window shall show on controller screen
  2. If a user selects display ID from display A and display B drop-menu the selected display shall be shown in the display A drop-menu and the display B drop-menu and the apply button shall not be greyed out
  3. If the user selects the "apply" button duplication of the display ID shall show on their corresponding displays.
  4. If the user selects the "cancel" button the duplicate display ID window shall disappear.
  5. If the user selects the "OK" button duplication of the display ID shall show on the corresponding displays and the dialog shall close.
6.3.1.1.9. Load Presentation
Pass Criteria:
  1. "Display Options" window shall show on controller screen
6.3.1.1.10. File Browse
Pass Criteria:
  1. If the user selects an item from the "Look In" drop-menu the selected item shall display in the "Look In" drop-menu and the list panel shall reflect the selection made by the user and the back arrow icon shall be enabled.
  2. If "Desktop" is selected "Look In" drop-menu the "Up One Level" icon shall be enabled.
  3. If "Desktop" is not selected "Look In" drop-menu the "Up One Level" icon shall be disabled.
  4. If the user selects the back arrow icon the selection in the "Look In" drop-menu shall return to the previous selection and the list panel shall reflect the new selection
  5. If the user selects the "Up One Level" icon the selection shall advance one level up the current directory and the list panel shall reflect the new section.
  6. If the use selects a file name from the "File Name" history drop-menu then the selected item from the "File Name" drop menu shall be displayed as the selected item.
  7. If the user selects the "Open" button then the selected file path shall be inserted into the "Open" drop-menu
  8. If the user selects the "Cancel" button then the "File Browse" window shall disappear and return to "Open" window
6.3.1.1.11. Single Display
Pass Criteria:
  1. Once the user selects single display and a display ID then the OK button shall be enabled.
  2. If the user selects the "OK" button the "Display Option" dialog shall disappear and the "DPS" interface shall be shown.
  3. If the user selects the "Cancel" button the "Display Option" dialog shall disappear.
6.3.1.1.12. Mirrored Display
Pass Criteria:
  1. Once the user selects mirrored display and a two or more display ID then the OK button shall be enabled.
  2. If the user selects the "OK" button the "Display Option" dialog shall disappear and the "DPS" interface shall be shown.
  3. If the user selects the "Cancel" button the "Display Option" dialog shall disappear.
6.3.1.1.13. Chained Display
Pass Criteria:
  1. Once the user selects mirrored display and a two or more display ID then the OK button shall be enabled.
  2. If the user selects the "OK" button the "Display Option" dialog shall disappear, the "DPS" interface shall be shown and the file shall be loaded on the lowest selected Display ID.
  3. If the user selects the "Cancel" button the "Display Option" dialog shall disappear.
6.3.1.1.14. Slide View
Pass Criteria:
  1. Once the uesr selects a slide then the selected slide will appear on the display.
  2. The changes the user does with the slide control will reflect on the slide view
6.3.1.2. DPS/Satellite
6.3.1.2.1. Startup
Pass Criteria:
  1. The user will be presented with a GUI to connect to the base system by either entering in an IP address or browser for a list of connectable DPS/Base servers when the DPS/Satellite system is started
  2. The user will presented with the GUI to the control all the displays if a successfully connection is established between the satellite and the server
6.3.1.2.2. Loading
Pass Criteria:
  1. If browse is selected, the open file browse GUI will let the user browse the file they want
  2. If the user selected the display type and the display IDs, the Display Option shall disappear.
  3. How it will show will be according to what display type the user selected
6.3.1.2.3. Tool Bar
Pass Criteria:
  1. If the user selects "next", the GUI will show the graphic of the next slide being selected in the slide view.
  2. If the user selects "previous", the GUI will show the graphic of the previous slide being selected in the slide view .
  3. If the user selects "start", the GUI will show the graphicof the first slide selected on the slide view and the "previous" button will be grayed out.
  4. If the user selects "end", the GUI will show the graphic of the last slide in the slide view and the "next" button will be grayed out.
  5. If the user selects "lock", the lock button will be pressed down..
  6. If the user selects "unlock", the lock button will be depressed.
  7. If the user selects "duplicate", the GUI will be the same but the selected display will have the duplicated slide.
  8. If the user decided to scroll, the scroll slider will slide to where the user wants to scroll at.
6.3.1.2.4. WhiteBoard
Pass Criteria:
  1. If user selects a color then when a user starts to draw on the whiteboard then the graphic or text being drawn will be the color selected.
  2. If the user selects the Clear button and presses that button then the whiteboard will go back to white with no drawing or text in it.
  3. If the user selects the Cancel button the White Board dialog shall disappear.
6.3.1.2.5. Help
Pass Criteria:
  1. If the user selects "Help Contents", the GUI will appear.
6.3.1.2.6. Exit
Pass Criteria:
  1. If the user selects "exit", the GUI will disappear.
6.3.1.2.7. Swap Display
Pass Criteria:
  1. "Swap Display" window shall show on controller screen
  2. If a user selects display ID from display A the selected display shall be shown in the display A drop-menu and the apply button shall not be greyed out.
  3. If the user selects the "apply" button re-ordering of the display ID shall show on their corresponding displays.
  4. If the user selects the "cancel" button the swap display ID window shall disappear.
  5. If the user selects the "OK" button re-ordering of the display ID shall show on the corresponding displays and the dialog shall close.
6.3.1.2.8. Duplicate Display
Pass Criteria:
  1. "Duplicate Display" window shall show on controller screen
  2. If a user selects display ID from display A and display B drop-menu the selected display shall be shown in the display A drop-menu and the display B drop-menu and the apply button shall not be greyed out
  3. If the user selects the "apply" button duplication of the display ID shall show on their corresponding displays.
  4. If the user selects the "cancel" button the duplicate display ID window shall disappear.
  5. If the user selects the "OK" button duplication of the display ID shall show on the corresponding displays and the dialog shall close.
6.3.1.2.9. Load Presentation
Pass Criteria:
  1. "Display Options" window shall show on controller screen
6.3.1.2.10. File Browse
Pass Criteria:
  1. The user is presented with an open file dialog.
  2. If the user types in a valid directory then the dialog window will go to the directory that the user typed.
  3. If the uses presses the Up button then the open file dlalog will go up one directory.
  4. If the user selects the "Open" button then the selected file path shall be inserted into the "Open" drop-menu
  5. If the user selects the "Cancel" button then the "File Browse" window shall disappear and return to "Open" window
6.3.1.2.11. Single Display
Pass Criteria:
  1. Once the user selects single display and a display ID then the OK button shall be enabled.
  2. If the user selects the "OK" button the "Display Option" dialog shall disappear and the "DPS" interface shall be shown.
  3. If the user selects the "Cancel" button the "Display Option" dialog shall disappear.
6.3.1.2.12. Mirrored Display
Pass Criteria:
  1. Once the user selects mirrored display and a two or more display ID then the OK button shall be enabled.
  2. If the user selects the "OK" button the "Display Option" dialog shall disappear and the "DPS" interface shall be shown.
  3. If the user selects the "Cancel" button the "Display Option" dialog shall disappear.
6.3.1.2.13. Chained Display
Pass Criteria:
  1. Once the user selects mirrored display and a two or more display ID then the OK button shall be enabled.
  2. If the user selects the "OK" button the "Display Option" dialog shall disappear, the "DPS" interface shall be shown and the file shall be loaded on the lowest selected Display ID.
  3. If the user selects the "Cancel" button the "Display Option" dialog shall disappear.
6.3.1.3. DPS Display
6.3.1.3.1. Startup
Pass Criteria:
  1. All the displays, except the primary controlling display, shall be blank when DPS/Base is started.
6.3.1.3.2. Display ID
Pass Criteria:
  1. All the displays shall show their IDs if the user select the show display IDs button.
  2. All the displays shall hide their IDs after five seconds of showing them.
6.3.1.3.3. Exit
Pass Criteria:
  1. The displays shall return back to the way they were if the base system is terminated.
6.3.1.4. DPS/Base Basic Function Test
6.3.1.4.1. Startup
Pass Criteria:
  1. The user will presented with the GUI to the control all the displays
6.3.1.4.2. Showing Display IDs
Pass Criteria:
  1. All active displays shall show their associated IDs
  2. After 5 seconds Display IDs shall disappear.
6.3.1.4.3. Swap Display
Pass Criteria:
  1. "Swap Display " window shall show on controller screen
  2. If a user selects display ID from display A and display B drop-menu the selected display shall be shown in the display A drop-menu and the display B drop-menu and the apply button shall not be greyed out.
  3. If the user selects the "apply" button re-ordering of the display ID shall show on their corresponding displays.
  4. If the user selects the "cancel" button the swap display ID window shall disappear.
6.3.1.4.4. Load Presentation
Pass Criteria:
  1. Upon selecting the open option under the file menu the "open" dialog shall display on the screen.
  2. If the user selects a file path from the "open" history drop-menu then the "OK" button shall be enabled.
  3. If the user types a valid file path into the history drop-menu then the "OK" button shall be enabled.
  4. If the user selects the "Cancel" button then the "Open" dialog shall disappear
  5. If the user selects the OK button then the "Open" dialog shall disappear and the "Display Options" dialog shall appear
6.3.1.4.5. File Browse
Pass Criteria:
  1. If the user selects an item from the "Look In" drop-menu the selected item shall display in the "Look In" drop-menu and the list panel shall reflect the selection made by the user and the back arrow icon shall be enabled.
  2. If "Desktop" is selected "Look In" drop-menu the "Up One Level" icon shall be enabled.
  3. If "Desktop" is not selected "Look In" drop-menu the "Up One Level" icon shall be disabled.
  4. If the user selects the back arrow icon the selection in the "Look In" drop-menu shall return to the previous selection and the list panel shall reflect the new selection
  5. If the user selects the "Up One Level" icon the selection shall advance one level up the current directory and the list panel shall reflect the new section.
  6. If the use selects a file name from the "File Name" history drop-menu then the selected item from the "File Name" drop menu shall be displayed as the selected item.
  7. If the user selects the "Open" button then the selected file path shall be inserted into the "Open" drop-menu
  8. If the user selects the "Cancel" button then the "File Browse" window shall disappear and return to "Open" window
6.3.1.4.6. Slide Control
6.3.1.4.6.1. Single Display
Pass Criteria:
  1. If the user selects the "next" button then the presentation shall move to the next slide.
  2. If the user selects the "end" button then the selection shall move to the to the last slide of the presentation.
  3. If the user is on the last slide of a presentation and selects the "end" button then the selection shall not move.
  4. If the user is on the last slide of a presentation and selects the "next" button then the selection shall not move.
  5. If the user selects the "back" button then the presentation shall move to the previous slide.
  6. If the user selects the "start" button then the selection shall move to the to the first slide of the presentation.
  7. If the user is on the first slide of a presentation and selects the "start" button then the selection shall not move.
  8. If the user is on the last slide of a presentation and selects the "back" button then the selection shall not move.
6.3.1.4.6.2. Mirrored Display
Pass Criteria:
  1. If the user selects the "next" button then the presentation shall move to the next slide.
  2. If the user selects the "end" button then the selection shall move to the to the last slide of the presentation.
  3. If the user is on the last slide of a presentation and selects the "end" button then the selection shall not move.
  4. If the user is on the last slide of a presentation and selects the "next" button then the selection shall not move.
  5. If the user selects the "back" button then the presentation shall move to the previous slide.
  6. If the user selects the "start" button then the selection shall move to the to the first slide of the presentation.
  7. If the user is on the first slide of a presentation and selects the "start" button then the selection shall not move.
  8. If the user is on the last slide of a presentation and selects the "back" button then the selection shall not move.
6.3.1.4.6.3. Chained Display
Pass Criteria:
  1. If the user presses the "lock" button the display that is locked shall be skipped in future slide advancement.
  2. If the user depresses the "lock" button the display shall not be skipped in future slide advancement.
  3. If the user selects the "next" button then the presentation shall move to the next slide.
  4. If the user selects the "end" button then the selection shall move to the to the last slide of the presentation.
  5. If the user is on the last slide of a presentation and selects the "end" button then the selection shall not move.
  6. If the user is on the last slide of a presentation and selects the "next" button then the selection shall not move.
  7. If the user selects the "back" button then the presentation shall move to the previous slide.
  8. If the user selects the "start" button then the selection shall move to the to the first slide of the presentation.
  9. If the user is on the first slide of a presentation and selects the "start" button then the selection shall not move.
  10. If the user is on the last slide of a presentation and selects the "back" button then the selection shall not move.
6.3.1.4.7. Display Options
6.3.1.4.7.1. Single Display
Pass Criteria:
  1. Once the user selects single display and a display ID then the OK button shall be enabled.
  2. If the user selects the "OK" button the "Display Option" dialog shall disappear and the "DPS" interface shall be shown.
  3. If the user selects the "Cancel" button the "Display Option" dialog shall disappear.
6.3.1.4.7.2. Mirrored Display
Pass Criteria:
  1. Once the user selects mirrored display and a two or more display ID then the OK button shall be enabled.
  2. If the user selects the "OK" button the "Display Option" dialog shall disappear and the "DPS" interface shall be shown.
  3. If the user selects the "Cancel" button the "Display Option" dialog shall disappear.
6.3.1.4.7.3. Chained Display
Pass Criteria:
  1. Once the user selects mirrored display and a two or more display ID then the OK button shall be enabled.
  2. If the user selects the "OK" button the "Display Option" dialog shall disappear, the "DPS" interface shall be shown and the file shall be loaded on the lowest selected Display ID.
  3. If the user selects the "Cancel" button the "Display Option" dialog shall disappear.
6.3.1.4.8. Duplicate Display
Pass Criteria:
  1. "Duplicate Display" window shall show on controller screen
  2. If a user selects display ID from display A and display B drop-menu the selected display shall be shown in the display A drop-menu and the display B drop-menu and the apply button shall not be greyed out
  3. If the user selects the "apply" button duplication of the display ID shall show on their corresponding displays.
  4. If the user selects the "cancel" button the duplicate display ID window shall disappear.
  5. If the user selects the "OK" button duplication of the display ID shall show on the corresponding displays and the dialog shall close.
6.3.1.4.9. Slide View
Pass Criteria:
  1. If the user selects a slide in the "slide view" then the displays will refresh to show the newly selected slide.
6.3.1.5. DPS/Satellite Basic Function Test
6.3.1.5.1. Startup
Pass Criteria:
  1. The user shall be presented with a GUI that allows them to connect to the DPS/Base server either by entering an IP address or browse for a list of connectable DPS/Base servers when the DPS/Satellite system is started.
  2. The user shall be presented with a GUI that shall allow them to control all the displays if a successful connection to a DPS/Base server is made.
6.3.1.5.2. Show Display IDs
Pass Criteria:
  1. All active displays shall show their associated IDs
  2. After 5 seconds Display IDs shall disappear.
6.3.1.5.3. Swap Display
Pass Criteria:
  1. "Swap Display " window shall show on controller screen
  2. If a user selects display ID from display A and display B drop-menu the selected display shall be shown in the display A drop-menu and the display B drop-menu and the apply button shall not be greyed out.
  3. If the user selects the "apply" button re-ordering of the display ID shall show on their corresponding displays.
  4. If the user selects the "cancel" button the swap display ID window shall disappear.
6.3.1.5.4. Load Presentation
Pass Criteria:
  1. Upon selecting the open option under the file menu the "open" dialog shall display on the screen.
  2. If the user selects a file path from the "open" history drop-menu then the "OK" button shall be enabled.
  3. If the user types a valid file path into the history drop-menu then the "OK" button shall be enabled.
  4. If the user selects the "Cancel" button then the "Open" dialog shall disappear
  5. If the user selects the OK button then the "Open" dialog shall disappear and the "Display Options" dialog shall appear
6.3.1.5.5. File Browse
Pass Criteria:
  1. The user is presented with an open file dialog.
  2. If the user types in a valid directory then the dialog window will go to the directory that the user typed.
  3. If the uses presses the Up button then the open file dlalog will go up one directory.
  4. If the user selects the "Open" button then the selected file path shall be inserted into the "Open" drop-menu
  5. If the user selects the "Cancel" button then the "File Browse" window shall disappear and return to "Open" window
6.3.1.5.6. Slide Control
6.3.1.5.6.1. Single Display
Pass Criteria:
  1. If the user selects the "next" button then the presentation shall move to the next slide.
  2. If the user selects the "end" button then the selection shall move to the to the last slide of the presentation.
  3. If the user is on the last slide of a presentation and selects the "end" button then the selection shall not move.
  4. If the user is on the last slide of a presentation and selects the "next" button then the selection shall not move.
  5. If the user selects the "back" button then the presentation shall move to the previous slide.
  6. If the user selects the "start" button then the selection shall move to the to the first slide of the presentation.
  7. If the user is on the first slide of a presentation and selects the "start" button then the selection shall not move.
  8. If the user is on the last slide of a presentation and selects the "back" button then the selection shall not move.
6.3.1.5.6.2. Mirrored Display
Pass Criteria:
  1. If the user selects the "next" button then the presentation shall move to the next slide.
  2. If the user selects the "end" button then the selection shall move to the to the last slide of the presentation.
  3. If the user is on the last slide of a presentation and selects the "end" button then the selection shall not move.
  4. If the user is on the last slide of a presentation and selects the "next" button then the selection shall not move.
  5. If the user selects the "back" button then the presentation shall move to the previous slide.
  6. If the user selects the "start" button then the selection shall move to the to the first slide of the presentation.
  7. If the user is on the first slide of a presentation and selects the "start" button then the selection shall not move.
  8. If the user is on the last slide of a presentation and selects the "back" button then the selection shall not move.
6.3.1.5.6.3. Chained Display
Pass Criteria:
  1. If the user presses the "lock" button the display that is locked shall be skipped in future slide advancement.
  2. If the user depresses the "lock" button the display shall not be skipped in future slide advancement.
  3. If the user selects the "next" button then the presentation shall move to the next slide.
  4. If the user selects the "end" button then the selection shall move to the to the last slide of the presentation.
  5. If the user is on the last slide of a presentation and selects the "end" button then the selection shall not move.
  6. If the user is on the last slide of a presentation and selects the "next" button then the selection shall not move.
  7. If the user selects the "back" button then the presentation shall move to the previous slide.
  8. If the user selects the "start" button then the selection shall move to the to the first slide of the presentation.
  9. If the user is on the first slide of a presentation and selects the "start" button then the selection shall not move.
  10. If the user is on the last slide of a presentation and selects the "back" button then the selection shall not move.
6.3.1.5.7. Display Options
6.3.1.5.7.1. Single Display
Pass Criteria:
  1. Once the user selects single display and a display ID then the OK button shall be enabled.
  2. If the user selects the "OK" button the "Display Option" dialog shall disappear and the "DPS" interface shall be shown.
  3. If the user selects the "Cancel" button the "Display Option" dialog shall disappear.
6.3.1.5.7.2. Mirrored Display
Pass Criteria:
  1. Once the user selects mirrored display and a two or more display ID then the OK button shall be enabled.
  2. If the user selects the "OK" button the "Display Option" dialog shall disappear and the "DPS" interface shall be shown.
  3. If the user selects the "Cancel" button the "Display Option" dialog shall disappear.
6.3.1.5.7.3. Chained Display
Pass Criteria:
  1. Once the user selects mirrored display and a two or more display ID then the OK button shall be enabled.
  2. If the user selects the "OK" button the "Display Option" dialog shall disappear, the "DPS" interface shall be shown and the file shall be loaded on the lowest selected Display ID.
  3. If the user selects the "Cancel" button the "Display Option" dialog shall disappear.
6.3.1.5.8. Duplicate Display
Pass Criteria:
  1. "Duplicate Display" window shall show on controller screen
  2. If a user selects display ID from display A and display B drop-menu the selected display shall be shown in the display A drop-menu and the display B drop-menu and the apply button shall not be greyed out
  3. If the user selects the "apply" button duplication of the display ID shall show on their corresponding displays.
  4. If the user selects the "cancel" button the duplicate display ID window shall disappear.
  5. If the user selects the "OK" button duplication of the display ID shall show on the corresponding displays and the dialog shall close.

7. System Evolution

7.1. Overview

Just like all other major software systems, Dynamic Presentation System shall, without a doubt, need to be revised numerous times throughout its lifespan. Reasons for this include but are not limited to errors within the original release, support for new technology, and revision. It is essential that DPS/Base and DPS/Satellite be designed and maintained in a manner that shall allow changes to the system to be achieved with ease.

7.2. External Documentation

Within our source file, at the very beginning, we shall include a header comment. The header comment shall explain why the specific code was written as it was. It shall make clear why a certain data structure was used, as opposed to another. By doing this, there shall be less confusion when it comes time to make changes to the system, which means less cost and greater system efficiency.

7.3. Evolutionary Changes

All changes made to the DPS/Base and DPS/Satellite will be documented in a log. The log shall include all of the following to ensure that the changes done are well documented.
  1. Changes shall be assigned a unique ID number.
  2. The date range for when the change was made.
  3. The names of the team members that were involved in the change.
  4. All files that were modified and what those modifications where.
  5. New files that where introduced into the system and why they were introduced.
  6. Parts that were affected by the change.
  7. Reason why the change was made.
  8. Reason why the change was implemented as it was.

7.4. Internal Documentation

All DPS/Base and DPS/Satellite source code files shall be well documented. Every function will have a header comment. The header comment shall include the name of the function, purpose, inputs, outputs, side effects, and date of last modification. By commenting the document in this manner, there shall be no questions as to what the purpose of a line of code is.

7.5. Major Design Decisions

Within our source files, at the very beginning, we shall include a header comment. the header comment will explain why the specific code was written as it was. We will clarify why a certain data structure was used, as opposed to an alternative. By doing this, it should allow future changes to the system to be made easier, putting less burden on the programmer. This reduces future costs and makes the final system more efficient. In addition to this information, the header comment will contain modification dates and versions.

7.6. Changes and their Impact

Before any changes are implemented to the DPS/Base and DPS/Satellite, the change and its repercussions shall be well understood. Unless the programmer understands how their change shall affect the system as a whole, the change cannot be implemented.

7.7. Past Versions

If for any reason a past version of DPS/Base or DPS/Satellite needs to be looked at or revert to, past versions of DPS/Base or DPS/Satellite and the source code shall will be available at all times. We will be using CVS to address all of our versioning. It provides a central location where we can store all documentation and code.

7.8. Future Work

7.8.1. File Format

The system must support Microsoft Powerpoint PPT files.

7.8.2. Multiple Clients

Multiple Clients ability will allow multiple users with PDA to connect to the server and control the DPS system. The server shall already be multithreaded. The benefit of this would allow more efficiency and variability to a group of users using the system.

7.8.3. Slide Images

Slide images on DPS/Satellite ability will allow the DPS/Satellite to retrieve slide images every time a new slide is shown on a display. The DPS/Satellite will have to be a multithreaded server similar to the DPS/Base. This allows flexibility and correct synchronization from the DPS/Base with the DPS/Satellite. This would benefit the user allowing him or her to see the displayed slide or file type on the DPS/Satellite instead of looking up to look at what is being display.

7.8.4. DPS/Satellite for Tablet PC

DPS/Satellite for Tablet PC extensibility will allow the DPS/Satellite system to be extended over to the Tablet PC. This would benefit the user and allow him or her more resources since the Table PC has more functionality. The Table PC would have more desktop space to work with. This would allow the user more variety in using the PDA or Tablet PC as a DPS/Satellite system.

7.8.5. Interactive Flash Tutorial for DPS

It would be helpful for the user to have an interactive flash tutorial to help them learn the functionalities of the program. With this tutorial, users can actually see the steps to take to perform a feature. This would offer a more efficient way to learn how to use a new program.

8. Glossary

  1. Advancement: The ability to iterate forward to the next slide or page. It can also iterate to the very last slide or page.
  2. Backtracking: The ability to iterate backward to the previous slide or page. It can also iterate to the very first slide or page.
  3. Blank: To remove from view where the displays will be empty with no content shown.
  4. Chained Display: Refer to how document are shown on each selected display in progression.
  5. Combo Box: A drop down menu list with selectable options.
  6. Cursor: A movable indicator on a display such as a mouse or a stylus pen.
  7. Dialog: A window which has been opened on top of another window.
  8. Display ID: A unique number ranging from 1 to n that refer to a display. ID 0 refers to the desktop monitor.
  9. Displays: The projectors, monitors, or other video devices that are connected to the desktop system that will be use to show the presentation.
  10. DPS Server: Refer to DPS/Base
  11. DPS/Base: Also know as DPS Server, is to the DPS software running on the desktop system which the displays are connected to. It is also a server listening to client connection.
  12. DPS/Satellite: Refer to the DPS software running on the mobile PDA. The software is similar to the one running on the desktop base system.
  13. File path: A location to where the file is at.
  14. IP Address: The Internet address is usually expressed in dot notation, e.g. 128.121.4.5.

    The address can be split into a network number (or network address) and a host number unique to each host on the network and sometimes also a subnet address.

  15. Locking: The ability to pause or freeze a display where no changes or modification to the display can be made. Any changes or modification to this display will be skipped to the next display.
  16. Menu: A list of available options which can be selected upon.
  17. Microsoft PowerPoint: A tool produced by the Microsoft Corporation which allows it users to design and show a slide-based presentation using a computer.
  18. Mirrored Display: Refer to how the same document cane be shown on more than one display.
  19. NSIS: (Nullsoft Scriptable Install System) is a tool that allows programmers to create such installers for Windows
  20. Personal Data Assistant (PDA): A small handheld device that is essentially a small computer and display. The device is controlled using a stylus and touch-sensitive display screen. These devices are commonly used to store personal data such as address books, appointment calendars, and similar information.
  21. Projector: an optical instrument that projects an enlarged image onto a screen.
  22. Refresh: The ability to make fresh again.
  23. Screen Drawing: The ability to use a cursor such as a mouse or a stylus pen to freely draw anything on the screen and show it on the display.
  24. Scrolling: To cause displayed text or graphics to move up, down, or across the screen so that line of text or graphics appear at one edge of the screen for each line that moves off the opposite edge.
  25. Single Display: Refer to how documents are shown on only one display.
  26. Slide Based: Refer to documents which acts as slides. For example, Microsoft PowerPoint.
  27. Slide View: Refers to the window that allows the user to select a slide to present on a display.
  28. Swap: To exchange one ID for another.