PP-SS20-01/Initiale Anforderungen
Zur Navigation springen
Zur Suche springen
Initiale Anforderung
Rollen (Stakeholder)
- (R01) Endanwender (Nutzer des Sequenzers)
- (R02) Entwickler von Erweiterungen (neue Funktionen, ändern der Tastenbelegung)
Ziele
- (Z01) BLE Verbindung herstellen und als Midi Gerät erkennen
- (Z02) Übertragen einer Sequenz als MIDI-Ausgabe
- (Z03) Einstellen einer Sequenz
- (Z04) Einstellen eines Steps
- (Z05) Anzeigen von Informationen auf dem Display
- (Z06) Rotary Encoder Eingabe
- (Z07) Keyboardmatrix Eingabe
- (Z08) Speichern der Daten auf dem Flash
Anwendungsfälle
(UC01) Bedienung des Sequenzers
Aktivitätsdiagramme für Anwendungsfälle
Detaillierte Anforderungen mit zugeordneten Zielen und ggf. Anwendungsfällen
nf = nicht-funktional, f = funktional
- (A01, nf) Nutzung von ZephyrOS als Entwicklungsbasis (ZX)
- (A02, f) Anzeigen von Informationen auf dem Display (Z05)
- (A02a, nf) Menüführung (Z05)
- (A03, f) Senden über BLE (Z01, Z02)
- (A03a, nf) Verschlüsselte Kommunikation (Z01, Z02)
- (A03b, nf) (Pairing über einen Code) (Z01, Z02)
- (A04, f) Durchlaufen einer Sequenz (Z02)
- (A05, f) Verarbeiten von Eingaben (Z06, Z07)
- (A05a, f) Einstellen der Step Einstellungen (Z04, Z07, Z08)
- (A05b, f) Einstellen der Sequenz Einstellungen (Z03, Z07, Z08)
- (A05c, nf) Freie Belegung der Tastenfunktion (Z06, Z07)
- (A06, f) Speichern des Status (Z08)
- (A06a, nf) SysEx Dump des Status (Z08)
Tests und Simulation
- Inbetriebnahme der Hardware
- Testen von allen Tastern
- Testen der Drehimpulsgeber
- Testen der Displayausgabe
- Inbetriebnahme der Software
- Programm auf dem nRF5240 MDK flashen, per minicom print ausgaben lesen
- Verbindung per BLE mit dem iPad herstellen
- Nach dem herstellen der Verbindung ist der GATT Service mit der in der von Midi spezifizierten UUID im iPad sichtbar
- Überprüfen ob MIDI Daten ankommen
- Programm auf dem nRF5240 MDK flashen, per minicom print ausgaben lesen
- Test Implementierung "Abspielen"
- Stimmen die Zeiten für einzelne Notenlängen
- Wird jeder Step wiedergegeben
- Werden Steps die nicht aktiv sind übersprungen
- Werden Steps die über mehrere Steps gehen richtig verarbeitet
- Test Implementierung "Eingabeverarbeitung"
- Wird jede Taste erkannt
- Lässt sich das Abspielen starten
- Lässt sich das Abspielen stoppen
- Lässt sich das Speichern triggern
- Ist es möglich in die Sequenz Einstellungen zu gelangen
- Lassen sich alle Einstellungen einer Sequenz anpassen
- Ist es möglich in die Step Einstellungen zu gelangen
- Lassen sich alle Einstellungen eines Steps anpassen
- Wird jede Taste erkannt
- Werden die Drehimpulse der Drehimpulsgeber erkannt
- Lassen sich alle Einstellungen eines Steps anpassen
- Lassen sich alle Einstellungen einer Sequenz anpassen
- Werden die Drehimpulse der Drehimpulsgeber erkannt