Upload files to ''

This commit is contained in:
Robert Bendun 2023-10-25 11:30:18 +02:00
parent ff603d4aa7
commit 72a84228f8

130
pbr-vision.adoc Normal file
View File

@ -0,0 +1,130 @@
= Dokument wizji projektu Harmonia
:toc:
:author: Robert Bendun
:email: robben@st.amu.edu.pl
:revnumber: 0.1.0
:revdate: 2023-10-25
:nofooter:
// Polish translation, courtesy of Łukasz Dziedziul <l.dziedziul@gmail.com> with updates via Matthew Blissett <mblissett@gbif.org>
:appendix-caption: Dodatek
:appendix-refsig: {appendix-caption}
:caution-caption: Uwaga
:chapter-signifier: Rozdział
:chapter-refsig: {chapter-signifier}
:example-caption: Przykład
:figure-caption: Rysunek
:important-caption: Ważne
:last-update-label: Ostatnio zmodyfikowany
ifdef::listing-caption[:listing-caption: Listing]
ifdef::manname-title[:manname-title: Nazwa]
:note-caption: Notka
:part-signifier: Część
:part-refsig: {part-signifier}
ifdef::preface-title[:preface-title: Wstęp]
:section-refsig: Sekcja
:table-caption: Tabela
:tip-caption: Sugestia
:toc-title: Spis treści
:untitled-label: Bez tytułu
:version-label: Wersja
:warning-caption: Ostrzeżenie
== Historia wersji
[cols="1,2,3,2"]
|===
| Osoba | Data | Zmiany | Wersja
| Robert Bendun | 2023-10-25 | Pierwszy zarys dokumentu | 0.1.0
|===
Stosowane jest https://semver.org/lang/pl/::[wersjonowanie semantyczne] oraz format dat https://en.wikipedia.org/wiki/ISO_8601::[ISO 8601].
== Wymagania biznesowe
=== Kontekst
TODO: Wspomnieć o orkiestrze laptopowej Lambda Ensamble, Musique, jaką klasę utworów może wykonywać aktualnie orkiestra laptopowa.
=== Cele biznesowe i kryteria sukcesu
Celem Harmonii jest umożliwienie wykonywania utworów muzyki algorytmicznej przez orkiestry laptopowe. Utwory dedykowane do wykonywania w Harmoni posiadają następującą charakterystykę:
- konieczność wykonywania zdarzeń muzycznych w sposób równoczesny przez wielu członków orkiestry laptopowej z niezaleznymi komputerami
- brak centralnej jednostki sterującej
- wykorzystanie warstwy sieciowej do dynamicznego tworzenia utworu
Utwory posiadające jedną z cech powyżej nie są możliwe do satysfakcjonującego wykonania bez mechanizmu synchronizacyjnego.
Jest to kluczowa funkcjonalność oferowana przez Harmonię.
Sukces można zdefiniować przez pomyślne wykorzystanie Harmonii w ramach działalności artystycznej orkiestry laptopowej Lambda Ensamble.
=== Ryzyka
- klasa utworów, których implementacja jest możliwa dzięki Harmonii jest na tyle mała, by móc pozostać artystycznie interesującą dla grupy docelowej
- wykorzystywanie dynamicznej warstwy sieciowej może mieć zbyt wysoki koszt implementacji w stosunku do dedykowanych rozszerzeń istniejących środowisk muzyki algorytmicznej
- brak integracji z istniejącymi środowiskami muzyki algorytmicznej zwiększa niszowość rozwiązania
== Wizja rozwiązania
=== Podstawowy zarys rozwiązania
Harmonia jest muzycznym odtwarzaczem umożliwiającym interaktywne wykonywanie synchronicznych utworów muzyki algorytmicznej dla orkiestr laptopowych.
=== Główne funkcjonalności
==== Synchronizacja
==== Webowy interfejs użytkownika
==== Odtwarzacz
==== Rozszerzalność
=== Założenia i zależności
== Zakres i ograniczenia
=== Zakres kolejnych wydań
[cols="1,2,2,2"]
|===
| Funkcjonalność | Wydanie alpha | Wydanie beta | Wydanie pełne
| Synchronizacja
a|
- synchronizacja startu utworu (i jego kolejnych fragmentów)
- synchronizacja lini czasowej odtwarzania (synchronizacja kolejnych momentów)
a|
- synchronizacja wielu ścieżek czasowych w ramach wspólnej sesji wykonywania utworu
|
| Webowy interfejs użytkownika
a|
- podstawowy interfejs użytkownika
- monitorowanie podstawowych parametrów systemu
- uruchamianie odtwarzania
- konfiguracja odtwarzacza i dostarczanie plików audio
- konfigurowalne skróty klawiszowe przypisywane
a|
- przyjazny interfejs użytkownika
a|
- monitorowanie urządzeń w sieci
| Odtwarzacz
a|
- odtwarzanie plików MIDI zgodnie z rytmem wyznaczanym przez mechanizm synchronizacji
a|
- odtwarzanie plików audio (WAV, Ogg) zgodnie z rytmem wyznaczanym przez mechanizm synchronizacji
|
| Rozszerzalność
|
|
a|
- Proof-of-concept utwór z wykorzystaniem dodatkowych interakcji sieciowych poprzez środowisko
|===
=== Ograniczenia
- zależność od infrastruktury sieciowej i jej możliwości