UseCase PerformingWithAnInstrument
History Key
- New content
Removed content
Recent Versions
Choose two versions to compare, or click the link to view it.
Use case: Performing with an instrument
Characteristic Information
- Goal in context: User controls instruments during a session, resulting as changes in the audio output
- Scope:
SessionApplication - Preconditions: An ensemble with at least one instrument is setup.
- Success end condition: Changing an instrument parameter augments or modifies the instrument's audio output contribution.
- Failed end condition: Audio output does not change in an expected/logical way.
- Primary actor: Robot Rock user
- Trigger: User
Main Success Scenario
- User chooses an instrument from ensemble to modify.
- User changes an instrument parameter:
- Position upon stage (Use case: Positioning an instrument.)
- (Un)Muting an instrument. (Use case: Muting an instrument.)
- Instrument specific trait. (Use case: Setting an instrument trait.)
- Changing the instruments parameter results in real-time audio feedback.
Extensions
Variations
- Instrument is muted, in which case no change in audio feedback is noticed, unless dependent, non-muted instruments make use of changed parameter.
- Note (alan): Can we assume for now that a mute is implemented by silencing the instrument's published contribution? If so, the other instruments will remain in the dark until it is unmuted.
Related Information
- Priority: Top
- Performance target: High correlation between visual layout and real-time audio
- Frequency: Arbitrary, sequential
- Superordinate use case: Dance beat, Ambient song
- Subordinate use cases:
- Positioning an instrument
- Muting an instrument
- Setting an instrument trait
- Secondary actors: Instruments, Ensemble
Schedule
- Due date: Beta release
Open issues
- In regards to positional parameters, do instruments change as the icon moves or when it is placed at its destination? Or is this an user controllable option?
Let's aim for instruments which change when the instrument has been in a stable position for a very brief period of time, creating the illusion of fast updating without firing changes on every MoveEvent.