Pflichtenheft Laufschrift online Softwareprojekt SS2014: Laufschrift online Betreuer: M. Sc. Thomas Dietrich Steven Rose Hans Riede Torny Amm Lucas Schmid Thomas Januszko Patrick Schneider Iryna Porytska Philipp Kerling 1 Inhalt 1 Zielbestimmungen .......................................................................................................................... 3 1.1 Musskriterien .......................................................................................................................... 3 1.2 Wunschkriterien ..................................................................................................................... 4 1.3 Abgrenzungskriterien ............................................................................................................. 4 2 Produkteinsatz ................................................................................................................................ 5 3 Produktumgebung .......................................................................................................................... 6 3.1 Software .................................................................................................................................. 6 3.2 Hardware................................................................................................................................. 6 3.3 Orgware................................................................................................................................... 6 4 Produktfunktionen ......................................................................................................................... 7 4.1 Verwaltungsfunktionen .......................................................................................................... 7 4.2 Sequenzfunktionen ................................................................................................................. 7 5 Produktdaten .................................................................................................................................. 9 6 Produktleistungen ........................................................................................................................ 10 7 Benutzungsoberfläche .................................................................................................................. 11 8 Qualitätszielbestimmungen ......................................................................................................... 12 9 Globale Testszenarien und Testfälle ............................................................................................ 13 10 Entwicklungsumgebung............................................................................................................ 14 11 Ergänzungen.............................................................................................................................. 14 12 Glossar ....................................................................................................................................... 16 2 1 Zielbestimmungen Das Projekt Laufschrift online zielt auf die Implementierung der Steuerung einer Leuchtanzeige mittels einer Webkomponente. Motivation ist die Erleichterung der Programmierung der Laufschrift. 1.1 Musskriterien - Website o Zur Programmierung der Laufschrift dient eine zentrale Steuerungsseite. o In einem Frame gibt es ein Textfeld, die sogenannte Debugging Zeile, über welches man die Laufschrift mittels Code direkt ansteuern kann. o Über Dropdown-Boxes mit hinterlegtem Code lassen sich Sequenzen bilden. o Die Dropdown-Boxes werden anhand ihrer Funktion in verschiedene Sektionen unterteilt: Laufrichtung Farbe Speed/Flash/Dauer Sonstiges(Sonderzeichen, Twitter) o Der Button „Neue Animation“ legt ein neues Textfeld zum Erstellen eines neuen Sequenzabschnittes an. Diese werden untereinander aufgelistet und nummeriert. o In einem Frame wird die Abfolge der Sequenz durch ihre einzelnen Elemente dargestellt. Diese kann durch Drag & Drop verändert werden. o Der Frame erhält durch den Benutzer einen Namen, welcher auch beim Speichern als Sequenzname dient. o Die Seite enthält Buttons zum Erstellen, Speichern und Löschen von Sequenzen. o Über eine Liste kann der Benutzer alle gespeicherten Sequenzen einsehen und laden. o Alle Sequenzeingaben werden automatisch in Textform in der Debugging Zeile angezeigt. o Ein „Abspielen“- Button übergibt die Sequenz an die Laufschrift. o Die Steuerung über Drag & Drop ist intuitiv. o Die Website verfügt über eine Datenbankanbindung. o Auf der Datenbank werden die Sequenzen abgespeichert. 3 - Hardwareansteuerung o Ein Raspberry Pi fungiert als zentrale Steuerungseinheit. o Die Laufschrift wird über eine serielle Schnittstelle oder über Infrarot angesprochen. o Die Implementierung aller Steuerbefehle erfolgt in einem Array, in welchem die LS-Sprache dem Hex-Code zugeordnet wird. 1.2 Wunschkriterien - Website o Das Design der Website orientiert sich am Design des BH-Club. o Die Website ist leicht um Funktionen erweiterbar. o Eine Vorschaufunktion demonstriert die ausgewählte Sequenz in einem grafischen Fenster. o Die Website bietet die Möglichkeit aktuelle Tweets als Sequenzabschnitt abzuspielen. o Die Twitterintegration beinhaltet eine Blacklistfunktion. 1.3 Abgrenzungskriterien - Die Steuerung über die Website kann nur lokal vorgenommen werden. 4 2 Produkteinsatz 2.1 Anwendungsbereich Einzelpersonen verwenden diesen Dienst zum Programmieren der Laufschrift Sigma ASC 333. Die Website soll diesen Vorgang vereinfachen und intuitiv gestalten. 2.2 Zielgruppen Im Allgemeinen richtet sich das Produkt an alle Besitzer einer solchen Laufschrift, welche zusätzlich über die hier verwendete Hardware verfügen. Im Speziellen zielt dieses Produkt auf die Verwendung durch alle befugten Personen des BHClubs ab. Alle Anwender sollten über Basiskenntnisse im Umgang mit Computeranwendungen verfügen. Da keine weitere Sprache integriert ist, muss der Benutzer die Verkehrssprache Deutsch zumindest verstehen. 2.3 Betriebsbedingungen Das System befindet sich hauptsächlich nur während der Öffnungszeiten des BH-Clubs im Einsatz. Der Betrieb sollte im Normalfall wartungsfrei sein. 5 3 Produktumgebung 3.1 Software - Client o www-Browser Server o Ruby o MySQL-Datenbank 3.2 Hardware - Client o Netzwerkfähiger Rechner - Server o Netzwerkfähiger Server o Ausreichend Rechen- und Festplattenkapazität 3.3 Orgware - Gewährleistung der permanenten Netzwerkanbindung 6 4 Produktfunktionen 4.1 Verwaltungsfunktionen /F0010/ Sequenz erstellen: Der Benutzer hat die Möglichkeit eine neue Sequenz zu erstellen. /F0020/ Sequenz speichern: Der Benutzer hat die Möglichkeit eine Sequenz zu speichern. /F0030/ Sequenz laden: Der Benutzer hat die Möglichkeit eine gespeicherte Sequenz zu laden indem er aus einer Liste die gewünschte Abfolge auswählt. /F0040/ Sequenz benennen: Der Benutzer hat die Möglichkeit einer Sequenz einen Namen zu geben, um sie eindeutig zu identifizieren. /F0050/ Sequenz abspielen: Der Benutzer hat die Möglichkeit die aktuelle Sequenz über einen Button abzuspielen. 4.2 Sequenzfunktionen /F0110/ Texteingabe: Der Benutzer hat die Möglichkeit Text (Wörter, Sonderzeichen, Symbole) einzugeben. /F0120/ Laufrichtung anpassen: Der Benutzer hat die Möglichkeit die Laufrichtung des Textes einzustellen. Mögliche Auswahloptionen sind: - von links nach rechts von rechts nach links von oben nach unten von unten nach oben Zeichen erscheinen auf der rechten Seite und bewegen sich einzeln nach links /F0130/ Textfarbe anpassen: Der Benutzer hat die Möglichkeit die Text- und Hintergrundfarbe des Lauflichts anzupassen. Mögliche Auswahloptionen sind: - Rot Gelb Grün Blau /F0140/ Geschwindigkeit anpassen: Der Benutzer hat die Möglichkeit die Durchlaufgeschwindigkeit des Sequenzabschnittes anzupassen. Die Auswahloptionen liegen zwischen 1 und 9. /F0150/ Anzeigedauer anpassen: Der Benutzer hat die Möglichkeit die Anzeigedauer des Sequenzabschnittes anzupassen. Die Auswahloptionen liegen zwischen 1 und 9. 7 /F0160/ Animation anpassen: Der Benutzer hat die Möglichkeit die Animation des Sequenzabschnittes anzupassen. Mögliche Auswahloptionen sind: - Nachricht blinkt Nachricht rollt blinkend von rechts nach links Nachricht erscheint direkt Anzeige erfolgt von der Mitte aus einzeln nach beiden Seiten Anzeige erfolgt von rechts nach links, wobei die nachfolgenden Zeichen die doppelte Breite haben Zufällige Auswahl des Effekts 8 5 Produktdaten /D010/ Sequenzdaten: Alle Informationen zu einer Sequenz. 9 6 Produktleistungen 10 7 Benutzungsoberfläche Die Benutzungsoberfläche besteht aus einer Hauptseite, von welcher aus alle Funktionen gesteuert werden können. Das Layout sowie das Design des Systems werden clientseitig überwiegend durch JavaScript-Komponenten der Bibliothek jQuery bestimmt. 11 8 Qualitätszielbestimmungen Sehr wichtig Robustheit Zuverlässigkeit Korrektheit Benutzungsfreundlichkeit Effizienz Portierbarkeit Kompatibilität wichtig Weniger wichtig X X X X X X X 12 unwichtig 9 Globale Testszenarien und Testfälle 13 10 Entwicklungsumgebung Es wird darauf geachtet, dass alle Entwicklungstools kostenlos (Freeware) sind. 10.1 Software - Plattform o Ruby 1.9.3 o Rails 3.2 o MySQL 5.6.14 o Windows 7/8 o Apache 2.4 o C - Tools o Latex o Trac o SVN/Subversion 10.2 Hardware 10.3 Orgware - E-Mail SMS 14 11 Ergänzungen 15 12 Glossar Sequenzen sind zusammengesetzte Abschnitte, welche verschiedene Funktionselemente enthalten. 16