T9 - Sound Effects Wand
From SoftwarePractice.org
T9 - Sound Effects Wand
Team Members
Ben-Jerome Ypilan________10417208 Rienzi Wijasurya_________90056577 Grant Watson_____________10054548 Hazem Khamis_____________10317016
Introduction
We are designing a new toy which is capable of playing with sound effects based on the movement of the sound effects wand. The sound effects wand is based on an accelorometer, a device which measures movement by direction, acceleration, and tilt. The device is to be capable of four seperate functions; recording, playback, active effects, and neutral.
Team Responsibilities Co-ordinator
Hazem Khamis
Wiki Page Maintenance
Ben Jerome Ypilan
Team Meetings
Team meetings have been scheduled during the OOD tutorial sessions. This is due to Grant's work commitments and his location being difficult to organise other meetings. The rest of the team is scheduled for Thursdays 5pm-7pm. If necessary, meetings will be held outside the OOD tutorial sessions and email the work progress to whom that was not present.
Key System Elements
- 1) GUI simulator to simulate Accelerometer Hardware.
- 2) I/O Program to be easily modified for differing Input and Output. (code open for shareware)
- 3) Main Program small enough for Mobile Device (Phone, PDA...etc) ~<50Kb in size
- 4) Sound Generator (Acceleration-Pitch, movement-x,movement-y)
- 5) Storage History Database
- 6) Screen Output(Visual Indictor & Commands for movements representation)
Stakeholders
End Users
General Public with mobile devices. As it planned to be stand alone on PC or attachment to mobile devices
Software Designers
The time taken to develop the software and have it ready for production should be kept as low as possible to help maximise revenue.
Manufacturers
Business/Product Manufacturers. . as the program is flexible in its sensitivity, it is envisaged that Business will use the program as an add on to their own Value added products
Retailers
As this product will be on the market for public purchase, it is important that a quality, robust and easy to use product is delivered. By doing this, we can ensure that retailers will be able to sell the product with the condifence that they will not need to address a large number of warranty claims.
Design Assumptions & Decisions
During the creation of the program, several factors and decision will be assumed prior to the completion period:
- 1) A code will be written for the program that will enable it to adress features such as movement, playback, record and sound output
- 2) The program is made to a specific target audience (under 8 years of age)
- 3) Errors both logically and physically will occur
- 4) Time restriction allocation for end-users
- 5) Limitation due to time restriction (30 seconds)
- 6) How much functionality to include
- 7) Different pitch variation will be outputed depending on the type of mevement
- 8) Final product should not excess the proposed 50kb limit
- 9) Different visual output will be displayed depending on what mode the program is in
(eg: active = green, nuetral = grey)
Risks
- 1)Time Management: To produce a working model for PC with Simulated GUI, Coding of program must start as per the planned schedule.
- 2)Programming Resource: PC/Notebook, SW tools, dependant on personal and UTS equipment, labs & testing. We are assuming there will be No disruption to our access to these resources for the length of our product development
- 3)Knowledge base: As our final product is to be operational on a Mobile Device (Phone or PDA) there is size limitation on program and we would like to be able to compile the final Java program on a Mobile device OS (i.e... Symbian) mainly to identify other risks that Business developers will need to know about.
Requirements
The program will successfully do the following:
- 1) Play sounds relating to movement of wand, and indicates the type of movement on screen.
- 2) Record sound and movement history.
- 3) Playback sound and movement history.
- 4) View movement history.
- 5) Produce sound effects accordingly.
- 6) Have Different modes of operation including turn sound off.
- 7) Indication on screen the Mode of current operation.
- 8) Parameters to detect Direction, Tilt and Acceleration
- 9) GUI to be operational on Mobile device
- 10) Separate GUI Simulator of Acceleratometer to be included in package.
- 11) Distinguish between 'off' and 'nuetral' mode and perform accordingly.
Miniature Unified Process
Usage Scenarios
The product that we will produce is a fun toy. – Sound movement wand.
Business developers to use it for, application of their creativeness. i.e...
- 1) Baby movement monitor.
- 2) Monitor if somebody falls over
- 3) Pedometer of exercise done.
- 4) Training purposes, distance travelled, speed movement monitor/storage.
Examples of Usage Scenarios:
- Paul has a few friends over and wants to show them some sound moves he hyas come up with.
- Jenny wants to record some sound effects for her to show friends at school.
- Maria wants to playback the sound effects that she had recorded the other day.
- Michael wants to stop the wand from making noise, so he can rest.
Use Case Diagrams
Essential Use Cases
| User Action | System Responsibility |
|---|---|
| 1.Set Mode | |
| Store Current Mode | |
| Display Mode on Interface |
| User Action | System Responsibility |
|---|---|
| 1.Move Accelorometer | |
| Translate Movement | |
| Access Sound Bank | |
| Play Relative Sound | |
| Display Movement on Interface |
| User Action | System responsibility |
|---|---|
| 1. Move Accelorometer Right/Left | |
| Translate movement | |
| Move Track Listing Respectively | |
| 2. Move Accelorometer Up/Down | |
| Translate Movement | |
| Retrieve Selected Track | |
| Store Track in Temporary Location | |
| Play/Pause Selected Track |
| User Action | System Responsibility |
|---|---|
| 1. Select Start Record | |
| Prepare Track Name | |
| Create Temp Location | |
| Record Sound | |
| Save To Database |
| User Action | System Responsibility |
|---|---|
| 1. Move Wand | |
| Do nothing |
System Test Cases
Case 1
Paul was playing around with the sound wand using it as a drum sticks to warm up his hands for before playing drums. He managed to get some unique sounds but also he managed to get the wand to go at a speed where it went off the Screen indicator.
Case 2
Little Johnny was playing with the sound wand, swinging it about and noticing that it makes different sounds depending on the direction and speed it was swung.
Case 3
Jane had finished playing with the sound wand and decided to put it in neutral mode so it didnt make any more sound.
Case 4
Hank recorded some cool sounds with the sound wand which he wanted to keep to show his friends later in the day. He placed it in recording mode and began swinging around.
CRC Cards
These CRC cards were developed during group meeting sessions and in class time. They are not representative of the final version of the project, but are an expression of ideas at this point in the process.
Sequence Diagrams
Initial Sequence Diagram
The initial sequence diagram
Sound Effects Wand
Final Sequence Diagram
Graphical User Interface
The following Graphical User Inteface design sketches were developed based on ideas formed during group meeting sessions.
Device GUI Sketches
The following sketches are for the display which will be on the physical device, the sound wand.
Final Device GUI
| Active mode. | Neutral mode. |
Prototype Testing GUI
The following is a sketch of the GUI which will be used to simulate the device on the development environment.
|
Final Testing GUI
|
Class Diagrams
Initial Class Diagram
Our Rough Initial Class Diagram
Final Class Diagram
Milestone 1 Presentation
Reference
- Michael Kolling and David J.Barnes(2000).'Shapes Demonstation' - "Square.java","Circle.java","Canvas.java".Retrieved on 2007-10-28
- Brian Lichtenwalter(1999)."MidiSynth.java". Sun Microsystems 1999. Retrieved on 2007-10-20















