
Version: 1.1
CS 4500, University of Utah, Spring 2008
The purpose of this document is to outline the functional requirements of the game Sonic Boxmo.
Team Foo Sharks will create a puzzle game entitled Sonic Boxmo. It will consist of novel and innovative features including a multi-cursor multi-player user interface and fast-paced music based puzzles, which will immerse the players into a unique musical environment. Each player in the game is going to have their own cursor and speaker, and will play in a shared 3D hardware-accelerated environment.
- HID: Human Interface Device
- OpenAL: Open Audio Library
- OpenGL: Open Graphics Library
- SRS: Software Requirements Specification
OpenGL Primer, 3rd Edition - Angel, Edward
Software Project Survival Guide - Steve McConnell
This document provides an overview of the Sonic Boxmo project implementation plan. The information proveded is not overly technical or highly specific.
2.1 User Personas and Characteristics
Lt. Worf:
- Little to no computer experience
- Only downloads software from banner ad links
- easily frustrated by less than intuitive interfaces
- Never reads proveded documentation
- thinks that windows solitare is the best game ever
Cpt. Kirk:
- Little to no computer experience
- afraid of their computer
- reads manuals cover to cover before installing software
- gets angry when documentation is incomplete, inaccurate, etc.
Geordi LaForge:
- Extreme power user
- Can tell you the state of all registers on the CPU just by touching the mouse.. even wireless mic
2.2 Product Perspective
Sonic Boxmo is a stand-alone Windows application. It will interface with existing multichannel sound hardware, multiple USB mice and Nintendo Wii Remotes.
2.3 Overview of Functional Requirements
- Display game screen and user interface
- output sounds coresponding to interface and gameplay actions
- Handle gameplay mechanics, rules, etc.
- read files containing user-editable game levels
2.4 Overview of Data Requirements
There are no data requirements. Users can edit and create game levels, but it is not required.
2.5 General Constraints, Assumptions, Dependencies, Guidelines
Sonic Boxmo:
- will only run on Windows XP Service Pack 2 or Windows Vista (as required by raw input and bluetooth interfaces).
- requires a hardware accelerated graphics processor and drivers with OpenGL T&L support.
- requires a 5.1 channel sound card and speakers.
- requires a Wii Remote compatible Bluetooth adapter and driver (Standard Microsoft Bluetooth stack will NOT work with most adapters)
- requires a Wii remote or wired USB mouse for each player (4-players max).
2.6 User View of Product Use
Scenario 1:
Without reading the help documentation, Lt. Worf picks up the controller with the intent to start a single player game of Sonic Boxmo. The game mode selection screen loads with a few options, but Worf has never seen Sonic Boxmo running before. Worf experiences no confusion because single player mode is the first to be hi-lighted. Worf selects the game mode using the game controller and begins to play Sonic Boxmo.
Scenario 2:
After delving into the help documentation, Capt. Kirk knows everything about Sonic Boxmo, except the experience of it. He is almost content not playing the game because of how amazingly thorough the documentation is.
Scenario 3:Gerodie LaForge doesn't really need to play any more Sonic Boxmo.
3.1 External Interface Requirements
User Interface:
The user interface will consist of several elements: a menu, the game-play interface, and a sand-box interface.
The Menu will allow users to set options such as: Game Mode, Video Resolution, Sound Channels, Number of Players, etc. It will show as a list in the middle of the screen with heirarchical organization of sub-menus and possibly some fancy game-play graphics in the background.
The game-play interface will include a music bar which will indicate the position of the song and show the elements of the song, in time. Also, a shared 3D puzzle-field which will have colored glyphs for the various puzzle piece types. The puzzle will be manipulated via clicking and rotating the Wii Remote or using the mouse scroll weel.
The Sand-Box interface will allow users to create songs and will resemble the game-play interface with the exception of the puzzle field being removed and the music bar extended.
3.2 Detailed Description of Functional Requirements
3.2.1 Template for describing functional requirements
purpose a description of the functional requirement and its reason(s) inputs which inputs; in what form/format will inputs arrive; from what sources input will be derived, legal domains of each input element processing describes the outcome rather than the implementation; include any validity checks on the data, exact timing of each operation (if needed), how to handle unexpected or abnormal situations outputs the form, shape, destination, and volume of the output; output timing; range of parameters in the output; unit measure of the output; process by which the output is stored or destroyed; process for handling error messages produced as output 3.2.1 Options Menu
purpose Provides easy access to game settings inputs reads current/default settings from a file & handes mouse events to allow changes processing changes values according to the options specified (game mode, resolution, etc.) outputs Shows current settings on the screen and saves a file containing the desired settings. 3.2.2 Gameplay Mode
purpose Allow 1-4 players to play the game inputs Player-generated HID actions (mouse movements & clicks, Wii Remove motion & buttons) processing Game rules and events will be managed. Inputs will be checked and illegal actions discarded. outputs The puzzle will be drawn to the screen with current scores and other user information. Will also determine a winner and halt the game accorsingly. 3.2.3 Sand-Box Mode (level Editor)
purpose Allow 1-4 players to create and edit songs and puzzles inputs Player-generated HID actions (mouse movements & clicks, Wii Remove motion & buttons) processing calculate note-placement, timing, etc. outputs Save a puzzle file for use in gameplay mode 3.3 Performance Requirements
This product imposes no limitations with the exception of the number of simultaneous players. The graphics and sound capabilities are dependant on the hardware/driver components of the host system.
3.4 Quality Attributes
The game should be fully playable on a computer meeting the specified minimum system requirements.
3.5 Other requirements
None at this time
4.0 Change Log
1.0 (2/5/2006) Initial release
1.1 (2/10/2008) fixed numbers in section 1