Requirements
Project Background
Music creation is a dream that many have. However, this dream is hard to achieve for the estimated 1.3 billion people worldwide[1] living with disabilities. Traditional instruments and software can be inaccessible, leaving many to be unable to express their creativity with music. Hence, our mission is to make music inclusive and limitless for everyone.
Introducing Jamboxx-Infinite, a music application that everyone can use. Building on the success of Jamboxx, a hands-free, breath-powered MIDI wind controller[2], we are taking accessibility to a higher level. Our innovative application integrates motion input technology, enabling users to play and compose music using facial movements. By leveraging Facial Navigation application from MotionInput Games, we provide an intuitive interface that breaks the barriers for users with disabilities. Furthermore, Jamboxx-Infinite comes with features to learn and create music, and collaborate with others in an accessible, user-friendly environment.
Partner Introduction
Throughout this project, we have been working with Dave Whalen, the co-founder of Jamboxx, Professor Dean Mohamedally, CEO of MotionInput Games, and National Autistic Society to create a transformative music experience designed for all - especially younger children with disabilities.
By incorporating motion input technology and AI-driven features, we are expanding the capabilities of the existing Jamboxx application.
Project Goals
The goal of our project, Jamboxx-Infinite, is to develop an application that allows users with disabilities to create and learn music. To achieve this goal, we established a list of objectives we would aim to achieve:
- Utilise MotionInput Facial Navigation application
- Develop virtual instruments with accessibility features
- Assist users in learning music
- Lyrics generation for music composition
- AI voice conversion
- Multiplayer feature for jamming with other users
Requirement Gathering
In the first stage of our user-centred design approach, we identified the core requirements for Jamboxx-Infinite. We drafted our list of key requirements from both clients and users.
Client Requirements
- Utilisation of motion input to play virtual instruments
- Features for learning music and generating lyrics for music composition
- Using AI to convert vocals in songs
- Collaborative jamming with other users across devices
User Requirements from pseudo-users
- Fun and engaging music-learning experience
- Customisability to how to play with virtual instruments
- application that utilises AI to create music
Collection of data
We collected these data in the form of semi-structured interview with both client and peers (pseudo-users)
Client
Question: Tell me about yourself, your background in music, and how your condition affects your ability to play.
Answer: I'm 62 years old and have been passionate about music for as long as I can remember. I used to play several instruments before I had quadriplegia. Despite my condition, my love for music remains strong, and I'm determined to find ways to continue playing and creating music.
Question: What challenges do you face when using existing music software or instruments?
Answer: One major challenge is accessibility. Many software interfaces require fine motor control, which I don't have. Using traditional instruments or digital music tools that rely on complex hand movements is impossible for me. Additionally, many music software interfaces are not designed with users like me in mind.
Question: What features would you find helpful in an accessible music software like Jamboxx?
Answer: I'd love to see robust support for alternative input methods, particularly eye-tracking and head motion, to control the software. I hope to see Jamboxx become a platform with various control options that can assist musicians with different mobility challenges. Additionally, I'd love for Jamboxx to have a feature that allows multiple users to collaborate and play music together online in real-time.
Pseudo-users
Question: How much do you know about music?
Answers:
- I enjoy listening to music but do not know how to play musical instruments or read musical notes.
- I have learned and played music since a young age.
Question: What features would you find helpful in an accessible music software like Jamboxx?
Answers:
- Having the ability to learn how to play musical instruments and playing it in the software.
- Would be cool to have features that will help generate songs and lyrics of my own.
Question: Do you think that motion input will help with playing virtual instruments? (if you have accessibility needs)
Answers:
- Certainly, it will help as it can track my facial movements and move the mouse pointer accordingly.
- Yes, I can imagine it would be hard to use mouse and keyboard as input if I have accessibility needs. It's a new dynamic of input that requires less movements.
Personas
From the requirements gathering, we created personas that will allow us to identify the motivations, desires, expectations, and needs of potential users of our application. These personas are important for us to obtain empathy and to focus on solving their problems.
Persona 1 - Young Music Student

Persona 2 - Professional Musician

Persona 3 - User with disability

Use Cases
Use cases are important to visualise how users interact with our application to achieve specific goals. These are helpful to define what our system should do based on a set of user actions.

Detailed Use Cases
Settings
ID | Title | Actor | Description |
---|---|---|---|
UC1 | Modify playing mode | User | Switch between click-to-play and hover-to-play modes for playing virtual instruments |
UC2 | Assign keys to notes | User | Map keys to different notes for each virtual instrument |


Virtual Instruments
ID | Title | Actor | Description |
---|---|---|---|
UC3 | Select and play virtual instrument | User | Play notes from selection of available virtual instruments |
UC4 | Rearrange notes of instrument | User | Move and rearrange notes in move mode |
UC5 | Record playing instruments | User | Record notes played |



Minigames
ID | Title | Actor | Description |
---|---|---|---|
UC6 | Note recognition by sound | User | Identify notes played by listening to the sound |
UC7 | Rhythm challenge | User | Match given rhythm pattern |
UC8 | Note recognition by notation | User | Identify notes from musical notation |



Voice Cloning
ID | Title | Actor | Description |
---|---|---|---|
UC9 | Select voice model | User | Modify vocal in song file using selected voice model |

AI Teacher
ID | Title | Actor | Description |
---|---|---|---|
UC10 | Generate song lyrics | User | Generate song based on user specifications |
UC11 | Chatbot | User | Get answers to music-related questions |


Multiplayer
ID | Title | Actor | Description |
---|---|---|---|
UC12 | Host server | User | Start a new multiplayer jam session |
UC13 | Join server | User | Connect to existing server to play and record jam session with other users |


MoSCoW Requirement List
As the final stage of gathering requirements, we created a MoSCoW list to focus on our goals of the project. This requirements list enabled us to focus on the implementation of the deliverables of our project. During the development process of our application, we added and modified some requirements from discussions with clients and pseudo-users
Functional Requirements
Must Have
- Implementation of virtual instruments with inputs from facial navigation and mouse
- Minigames for learning musical notations and musical sounds
- AI voice conversion feature
- Multiplayer experience for jamming instruments with other users
- AI feature to generate lyrics
- Feature to rearrange notes of virtual instruments
- AI chatbot for asking musical questions
Should Have
- Implementation of virtual instruments with input from keyboard
- Settings to switch between different playing methods for virtual instruments
- Feature to record multiplayer jamming session
- Ability to separate vocals and instrument track from music file
Could Have
- Rhythm and pattern challenge
- Feature for recording playing virtual instruments
- Music course for learning to play instruments
Won't Have
- Saving instrument layouts after rearrangement of notes
- Personalised learning and feedback from AI teacher
Non-Functional Requirements
Must Have
- Application has well-designed UI
- Application designed with focus on user experience, especially for users with disabilities
- Availability to be deployed on Microsoft store and released to schools
Should Have
- Compatibility with multiple input methods (keyboard, mouse, Jamboxx, Facial Navigation)
- Scripts for virtual instruments are consistent
- Guidelines for using AI voice conversion
Could Have
- Minigame with level system
- Selection of genre, mood, and customisable length for AI lyrics generation
- Efficient key mapping UI in settings
- User guide for using Jamboxx-Infinite application
Won't Have
- More options for virtual instruments
References
[1] World Health Organization (2023). Disability and Health. [online] World Health Organization. Available at: https://www.who.int/news-room/fact-sheets/detail/disability-and-health.
[2] Jamboxx. (n.d.). Jamboxx - Hands Free, Breath-powered Instrument - Music for All. [online] Available at: https://www.jamboxx.com/.