Verkerhsplanungssoftware - Pflichtenheft
Pflichtenheft VerkehrsnetzPlanungssoftware Autoren: Fabian Feucht und Björn Klemm
Version:
36
Kontakt:
Hochschule Rhein-Main Wiesbaden
Letzte Änderung:
29.11.2010
1
Verkerhsplanungssoftware - Pflichtenheft
1 Projektgrundlagen und Benutzeranforderungen .................................. 4 1.1 Grundlegende Zielbestimmung ................................................................................................................................ 4 1.2 Grundlegende Funktionen .......................................................................................................................................... 5 1.2.1 Verkehrsbausteine einfügen, bearbeiten und löschen ..................................................................5 1.2.2 Verkehrsteilnehmer einfügen und löschen ........................................................................................6 1.2.3 Simulationsmodus ........................................................................................................................................6
2 Abläufe und Funktionen .................................................................................. 7 2.1 Geschäftsprozesse ........................................................................................................................................................... 7 2.1.1 Einsatzbereiche ............................................................................................................................................................ 7 2.2.1 Anwendungsfälle für Softwaregrundfunktionen.......................................................................................... 8 2.2.1.1 Übersicht Kapitel: Softwaregrundfunktionen: ..............................................................................8 2.2.1.2 Anwendungsfall: Vorlage auswählen ................................................................................................9 2.2.1.3 Anwendungsfall: Neues Verkehrsnetz erstellen ........................................................................ 10 2.2.1.4 Anwendungsfall: Speichern unter ................................................................................................... 11 2.2.1.5 Anwendungsfall: Speichern ................................................................................................................ 12 2.2.1.6 Anwendungsfall: Datei öffnen ........................................................................................................... 13 2.2.1.7 Anwendungsfall: Verkehrsnetz Drucken ...................................................................................... 14 2.2.1.8 Anwendungsfall: Programm Schließen ......................................................................................... 15 2.2.1.9 Anwendungsfall: Einfügen Funktion .............................................................................................. 16 2.2.1.10 Anwendungsfall: Löschen Funktion ............................................................................................. 17 2.2.1.11 Anwendungsfall: Auto save Funktion .......................................................................................... 18 2.2.1.12 Anwendungsfall: Fehlerbehandlung/Log-Funktion .............................................................. 19 2.2.2 Anwendungsfälle für Aufbaufunktionen ........................................................................................................20 2.2.2.1 Übersicht Aufbaufunktionen.............................................................................................................. 20 2.2.2.2 Anwendungsfall: Baustein Kategorie auswählen ...................................................................... 21 2.2.2.3 Anwendungsfall: Baustein in die Karte einfügen ...................................................................... 22 2.2.2.4 Anwendungsfall: Baustein aus der Karte löschen ..................................................................... 23 2.2.2.5 Anwendungsfall: Ausgewählten Baustein drehen .................................................................... 24 2.2.1.6 Anwendungsfall: UnDo Funktion ..................................................................................................... 25 2.2.1.7 Anwendungsfall: ReDo Funktion ..................................................................................................... 26 2.2.2.8 Anwendungsfall: Neuen Baustein hinzufügen ............................................................................ 27 2.2.2.9 Anwendungsfall: Verkehrsteilnehmer einfügen ........................................................................ 28 2.2.2.10 Anwendungsfall: Verkehrsteilnehmer löschen ....................................................................... 29 2.2.3 Anwendungsfälle für Simulationsfunktionen .............................................................................................. 30 2.2.3.1 Übersicht Simulationsfunktionen .................................................................................................... 30 2.2.3.2 Anwendungsfall: Simulation starten .............................................................................................. 31 2.2.3.3 Anwendungsfall: Simulation stoppen ............................................................................................ 32 2.2.3.4 Anwendungsfall: Ablaufgeschwindigkeit ..................................................................................... 33 2.2.4 Anwendungsfälle für Zusatzfunktionen .........................................................................................................34 2.2.4.1 Übersicht .................................................................................................................................................... 34 2.2.4.2 Anwendungsfall: Update...................................................................................................................... 35 2.2.4.3 Anwendungsfall: Hilfe........................................................................................................................... 36 2.2.4.4 Anwendungsfall: Online-Forum besuchen ................................................................................... 37
2
Verkerhsplanungssoftware - Pflichtenheft
2.2.5. Programmspezifikationen ...................................................................... 38 2.2.5.1 Übersicht MVC.......................................................................................................................................... 38 2.2.5.2 Anwendungsfall: Ampelschaltung ................................................................................................... 39 2.2.5.3 Anwendungsfall: Öffnen und Schließen des Bahnübergangs ............................................... 40 2.2.5.4 Anwendungsfall: Reaktionsverhalten der Bahn ........................................................................ 41 2.2.5.5 Anwendungsfall: Reaktionsverhalten Auto ................................................................................. 42 2.2.5.6 Anwendungsfall: Reaktionsverhalten Fußgänger..................................................................... 43
3 Datenmodell und Domänenmodell .............................................................. 44 3.1 UML-Klassendiagramme ...........................................................................................................................................44 3.1.1 Bausteine ....................................................................................................................................................... 44 3.1.2 Verkehrsteilnehmer .................................................................................................................................. 45 3.1.3 Map-Daten ..................................................................................................................................................... 45
4. Benutzerschnittstelle ...................................................................................... 46 4.1 Dialogspezifikationen ................................................................................... 46 4.1.1 Allgemeiner Aufbau der Anwendung ...............................................................................................................46
4.2 Übersicht Menu bar und Toolbar .............................................................. 47 4.3 Benutzerinteraktion...................................................................................... 49 4.3.1 GUI: Programmstart ................................................................................................................................................49 4.3.2 GUI: Neue Verkehrsnetzkarte erstellen...........................................................................................................50 4.3.3 GUI: Baustein in Verkehrsnetz einfügen .........................................................................................................51 4.3.3.1 GUI: Mehrere Bausteine in Verkehrsnetz einfügen ................................................................................51 4.3.4 Baustein wieder löschen (1).................................................................................................................................53 4.3.5 Baustein wieder löschen (2).................................................................................................................................53 4.3.6 Baustein-Kategorie wechseln .............................................................................................................................. 54 4.3.7 Baustein drehen .........................................................................................................................................................54 4.3.8 Zustand zurücksetzen (UnDo).............................................................................................................................55 4.3.9 Zustand wiederherstellen (ReDo)......................................................................................................................55 4.3.10 Neuen Baustein hinzufügen............................................................................................................................... 56 4.3.11 Speichern & Speichern Unter ............................................................................................................................56 4.3.12 Öffnen ...........................................................................................................................................................................57 4.3.13 Verkehrsteilnehmer einfügen ...........................................................................................................................57 4.3.14 Simulation starten .................................................................................................................................................58 4.3.15 Simulation gestartet .............................................................................................................................................59
5 Glossar ................................................................................................................... 60
3
Verkerhsplanungssoftware - Pflichtenheft
1 Projektgrundlagen und Benutzeranforderungen 1.1 Grundlegende Zielbestimmung Projektziel ist eine Software zur Planung eines Verkehrsnetzes mit allen in diesem Pflichtenheft beschriebenen Funktionen und Rahmenbedingungen zu entwickeln. Zu den grundlegenden Funktionen der Software zählt die Erstellung von Verkehrswegen, wie Straßen, Bahnschienen oder Landschaftsflächen und das Einfügen von Verkehrsteilnehmern in das Verkehrsnetz. Zusätzlich soll der Anwender die Möglichkeit haben eine Simulation des Straßennetzes zu starten, um das Verhalten der Verkehrsteilnehmer zu beobachten und beurteilen zu können. Dabei kann eine Ablaufgeschwindigkeit voreingestellt werden. Das System soll insbesondere als Verkehrsplanungssoftware in einem realistischen Szenario eingesetzt werden können. Mögliche Einsatzbereiche der Software könnten in der Städteplanung, bei der Deutschen Bahn oder bei Navigationssoftware Herstellern sein. Dem Anwender ist es bei Start des Programmes möglich, ein Template auszuwählen womit gewährleistet werden soll, dass keine unnötigen Funktionen und Bausteine geladen werden. Dadurch wird das Programm benutzerfreundlicher, übersichtlicher und performanter. Häufig genutzte Menu-Funktionen sollen auf eine Symbolleiste herausgezogen werden, um schnelleren Zugriff zu gewährleisten und um dem Benutzer die Anwendung zu erleichtern. Zusätzlich werden für alle Funktionen Shortcuts implementiert, sowie Tooltipps für die Bausteine und Symbolleisten. Es gibt eine Auto save-Funktion, die alle 30 min. ein Speicherobjekt, benannt nach Datum, in einem temporären Ordner ablegt, welcher bei Beendigung des Programmes wieder gelöscht wird und das letzte Speicherobjekt in den Anwendungsordner schreibt. Während des Ablaufs des Programms, gibt es dem Anwender die Möglichkeit, zusätzlich zu UnDo, frühere Kartenzustände wieder herzustellen. Daraus folgt, dass das Programm selbst auf kleineren Systemumgebungen, wo nur ein kleiner Stack vorhanden ist, betrieben werden kann, da UnDo mit ca. 20 Schritten minimal gehalten wird. Alle Fehler und Ausnahmebehandlungen werden in eine Logdatei geschrieben, um später einen schnelleren und besseren Überblick zu haben, um das Programm zu patchen und Anwendungsfehler zu lokalisieren. Zusätzlich soll es dem Anwender möglich sein, eigene Bausteine im PNG-Format oder JPEG-Format mit dem Programm seiner Wahl zu erstellen und diese der Anwendungspalette hinzufügen zu können. Dabei muss von Programm geprüft werden, ob das richtige Format und die richtige Skalierung gewählt wurde, wenn das nicht der Fall sein sollte, wird dem Anwender eine Fehlermeldung mit dem nötigen Hinweis, als Dialog angezeigt.
4
Verkerhsplanungssoftware - Pflichtenheft
1.2 Grundlegende Funktionen
1.2.1 Verkehrsbausteine einfügen, bearbeiten und löschen Der Benutzer soll ein neues leeres Verkehrsnetz anlegen können und in dieses, einzelne Bausteine einfügen können. Jeder Baustein hat eine Größe von 64x64 Pixeln. Für die Platzierung der Bausteine in das Verkehrsnetz ist ein exaktes Raster vorgesehen. Um sinnvolle Strukturen wie z.B. Straßenzüge zu erstellen, müssen einzelne Bausteine nebeneinander aufgebaut werden. Neben verkehrsspezifischen Bausteinen soll es auch nicht befahrbare (oder begehbare) Bausteine geben wie Gebäude oder Wiesen. Die Zusammensetzung der Verkehrsbausteine sollte sinnvoll sein und das Programm sollte bei nicht sinnvollen Zusammensetzungen eine Warnung ausgeben. Die Bausteine sollen sich mittels Drag `n Drop von der Symbolleiste in das Verkehrsnetz ziehen lassen. Sollte der Benutzer nach dem Einfügen keinen neuen Baustein auswählen, soll der ausgewählte Baustein auch mehrfach hintereinander gesetzt werden können, ohne den Baustein erneut auszuwählen. Außerdem soll es auch möglich sein, den Baustein zu rotieren bevor er eingesetzt wird. Dazu wird ein „Drehen“Button in der Menüleiste vorgesehen. Zusätzlich soll jederzeit das Löschen einzelner Bausteine möglich sein. Um ein schnelleres Auswählen zu ermöglichen, kann der Benutzer mit einem Rechtsklick auf der Maus, ein Baustein-Auswahlmenu (Kontextmenü) öffnen, um den nächsten Baustein auswählen zu können. Die Übersicht wird dadurch bewahrt, dass Bausteine in einzelne Kategorien unterteilt werden. Zum Beispiel: Verkehrswege, Gebäude und Landschaftsformen.
5
Verkerhsplanungssoftware - Pflichtenheft
1.2.2 Verkehrsteilnehmer einfügen und löschen Der Benutzer soll in ein bereits aufgebautes Verkehrsnetz, Verkehrsteilnehmer platzieren können. Die Platzierung sollte sinnvoll sein, ein Auto sollte z.B. nicht auf einer Schiene platziert werden können. Bei nicht sinnvoller Platzierung soll eine Warnung ausgegeben werden. Zusätzlich soll die Richtung und Geschwindigkeit angegeben werden, die besagt wie der Verkehrsteilnehmer, bei Start der Simulation, fahren soll. Auch hier können Fehlersituationen auftreten und müssen dem Benutzer mitgeteilt werden. Beispiel: Fahrzeug fährt zu schnell oder in die verkehrte Richtung. Beim Einfügen öffnet sich ein Dialogfeld in welchem der Verkehrsteilnehmer in Sachen Bewegungsrichtung und Geschwindigkeit vorkonfiguriert werden kann.
1.2.3 Simulationsmodus Über die Menüleiste kann der Benutzer den Simulationsmodus starten und es werden alle Einfügungs-Optionen der Bausteine gesperrt. Die Simulation stellt dann auf der Leinwand ein animiertes Bild des Verkehrsnetzes da, wobei alle eingefügten Verkehrsteilnehmer das Verkehrsnetz befahren. Richtung und Geschwindigkeit können beim Einfügen eingestellt werden. Die Verkehrsteilnehmer sollen einfache Verkehrsregeln beachten können wie das Anhalten bei einer roten Ampel oder bei einem geschlossenen Bahnübergang.
6
Verkerhsplanungssoftware - Pflichtenheft
2
Abläufe und Funktionen
2.1 Geschäftsprozesse Akteur Stadtkartenersteller Fahrroutenplaner Schienennetzplaner Tourismusplaner System
Aktivitäten Stadtplan erstellen Fahrrouten planen Schienennetz planen Bsp.: RMV-Plan Wanderrouten und Fahrradwege planen Auto save, Logdatei
Dokument Verkehrsnetz / Map Verkehrsnetz / Map Verkehrsnetz / Map
Datenablage XML-Datei XML-Datei XML-Datei
Verkehrsnetz / Map
XML-Datei
Map / Textdatei
XML-Datei/TXT-Datei
2.1.1 Einsatzbereiche Die Software zur Erstellung und Simulation von Verkehrsnetzen lässt sich auf ein bereits Feld von Kunden anwenden. Zum einen wären hier Mitarbeiter in der Stadtverwaltung die im Bereich Verkehr eingesetzt werden. Hier müssen unterschiedliche Entscheidungen getroffen werden wobei die Software sehr hilfreich sein kann. Dies könnte in der Planung von neuen Straßen oder der Verkehrsumleitung bei Baustellen der Fall sein. Solche Anwender würden das bestehende Verkehrsnetz nachbauen und Verkehrsteilnehmer hinzufügen um die Verkehrssituation zu virtualisieren und zu beurteilen. Ein weiterer Abnehmer der Software könnte in der Stadtplanung sein. Städteplaner könnten die Software verwenden um neue Stadtgebiete zu planen und auf Verkehrstauglichkeit zu überprüfen. Die Software wird neben verkehrsspezifischen Bauelementen auch statische Bausteine verfügen, für Gebäude oder Parks. Außerdem könnte im Tourismus-Bereich ein hoher Nutzen der Software vorhanden sein. Touristikplaner könnten die Software dazu nutzen, um Wanderrouten und Fahrradwege zu planen und mit virtuellen Verkehrsteilnehmern auszustatten und die Verkehrssituation zu simulieren. Auch bei der Bahn könnte die Software auf Zustimmung stoßen. Es können ähnlich wie im Straßennetz auch Bahnsysteme geplant und simuliert werden.
7
Verkerhsplanungssoftware - Pflichtenheft
2.2 Anwendungsfälle 2.2.1 Anwendungsfälle für Softwaregrundfunktionen In diesem Kapitel beschäftigen wir uns mit den Anwendungsfällen der eigentlichen Software, die für den Endbenutzer zur Verfügung stehen. Wo die Anwendungsfälle im Programmfenster zu finden sind und welchen Zweck sie erfüllen können aus den einzelnen Beschreibungen entnommen werden. Des Weiterem wird pro Anwendungsfall ein möglicher Programmablauf festgelegt, welchen der Benutzer durchführen muss, um ein Anwendungsziel zu erreichen.
2.2.1.1 Übersicht Kapitel: Softwaregrundfunktionen:
8
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.2 Anwendungsfall: Vorlage auswählen Beschreibung: Der Benutzer kann entweder beim Programmstart (Willkommensfenster)oder unter Menubar>Datei>Vorlage Öffnen>Dateiauswahl eine Vorlagen öffnen, die sich für anwendungsspezifische Fälle besser eigenen, als eine neue leere Karte. Vorlagen besitzen einen vordefinierten Aufbau des Verkehrsnetzes. Zusätzlich werden die Baustein-Kategorien angepasst. /F0000/ Akteure
Endbenutzer
Auslöser
Button: Vorlagen; Startfenster: Vorlage auswählen; Menubar > Datei > Vorlagen
Vorbedingungen
Programm wurde gestartet
Standardablauf
Benutzer möchte Vorlage öffnen Vorlage wird durch Benutzer geöffnet Vorlagenkarte wird geladen Kategorie wird auf Vorlage angepasst
Alternative Abläufe
-
Nachbedingung und Ergebnis
Verkehrsbausteine werden je nach Vorlage angepasst. (Beispiel: Modus für Bahnschienen, Straßen etc.). Vordefinierte Karte wird geladen.
Nicht-funktionale Anforderungen
Vorlagen sollten sinnvoll zusammengestellt werden. Laden einer Vorlage < 2s.
Parametrisierbarkeit und Flexibilität
Jede Vorlage besitzt eine Beschreibung
Nutzungshäufigkeit
Optional bei Programmstart oder wenn eine neues Verkehrsnetz angelegt wird (Oft).
9
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.3 Anwendungsfall: Neues Verkehrsnetz erstellen Beschreibung: Der Benutzer soll ein neues, leeres Verkehrsnetz über die Funktion „Neues Verkehrsnetz“ erstellen können. Dabei wird das vorhandene gelöscht. Vor dem Löschen wird jedoch gefragt, ob die vorhandene Karte gespeichert werden soll mit dem Hinweis, dass die Karte ansonsten gelöscht wird. /F0001/ Akteure
Endbenutzer
Auslöser
Button: Vorlagen; Startfenster: Vorlage auswählen; Menubar > Datei > Vorlagen
Vorbedingungen
Programm wurde gestartet
Standardablauf
Benutzer möchte neues Verkehrsnetz erstellen Benutzer legt ein neues Dokument an Leere Verkehrsnetzkarte wird angezeigt
Alternative Abläufe
-
Nachbedingung und Ergebnis
Es wird eine leere Leinwand angezeigt in die der Benutzer nun Bausteine und Fahrzeuge einfügen kann
Nicht-funktionale Anforderungen
Schnelle Ladezeit < 1s
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei jeden Programmdurchlauf wo der Benutzer ein neues Dokument anlegen möchte.
10
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.4 Anwendungsfall: Speichern unter Beschreibung: Benutzer kann aktuelles Verkehrsnetz und die aktuellen Programmeinstellungen neu an einem beliebigen Speicherort abspeichern /F0002/ Akteure
Endbenutzer
Auslöser
Button: Speichern Unter; Menubar > Datei > Speichern unter
Vorbedingungen
Karte ist nicht leer
Standardablauf
Benutzer möchte das Dokument abspeichern Benutzer gibt Pfad an für Datei Verkehrsnetzdaten werden in neu erstellte Datei gespeichert
Alternative Abläufe
-
Nachbedingung und Ergebnis
Aktuelles Verkehrsnetz mit allen Bausteinen und Verkehrsteilnehmer wird in eine XML-Datei abgespeichert.
Nicht-funktionale Anforderungen
Speichern einer Datei < 2s. Dateigröße sollte 1 MB nicht überschreiten.
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
„Speichern Unter“ wird genutzt um ein Verkehrsnetz erstmals abzuspeichern. Bei jedem Programmdurchlauf einmal.
11
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.5 Anwendungsfall: Speichern Beschreibung: Aktuelles Verkehrsnetz wird gespeichert (Speicherdatei und Standort müssen bekannt sein, ansonsten wird „Speichern Unter“ ausgeführt). /F0003/ Akteure
Endbenutzer
Auslöser
Button: Speichern; Menubar > Datei > Speichern
Vorbedingungen
Karte ist nicht leer
Standardablauf
Benutzer möchte bereits vorhandene Datei speichern Benutzer speichert Datei
Alternative Abläufe
-
Nachbedingung und Ergebnis
Aktuelles Verkehrsnetz wird gespeichert.
Nicht-funktionale Anforderungen
Sehr schnelles abspeichern sollte die Regel sein.
Parametrisierbarkeit und Flexibilität
Sollte Datei nicht bereits bekannt sein, wird alternativ die Speichern Unter Funktion aufgerufen
Nutzungshäufigkeit
Benutzer speichert im Durchschnitt alle 10 Minuten das Dokument.
12
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.6 Anwendungsfall: Datei öffnen Beschreibung: Programm öffnet bestehendes Verkehrsnetz. Benutzer kann zum Öffnen die Datei über den Browser auswählen. /F0004/ Akteure
Endbenutzer
Auslöser
Menubar: Datei > Datei öffnen
Vorbedingungen
Laufendes Programm
Standardablauf
Benutzer möchte eine Datei öffnen Benutzer wählt „Datei Öffnen“ und gibt Pfad zur Datei über einen Dateibrowser an Datei wird geöffnet
Alternative Abläufe
-
Nachbedingung und Ergebnis
Verkehrsnetz wurde geöffnet und kann nun weiter bearbeitet werden.
Nicht-funktionale Anforderungen
Sollte ein bestehendes nicht gespeichertes Verkehrsnetz bereits geöffnet sein wird eine Warnung ausgegeben, die den Benutzer informiert, dass beim Öffnen eines neuen Verkehrsnetzes die aktuellen Änderungen verloren gehen.
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Benutzer öffnet bei einem Programmdurchlauf im Schnitt 2-3 Dateien.
13
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.7 Anwendungsfall: Verkehrsnetz Drucken Beschreibung: Der Benutzer kann über diese Option sein Verkehrsnetz drucken, falls zum Beispiel die Ablage solcher Karten statt einer Datenbank ein Aktenschrank ist. Das Verkehrsnetz wird dann direkt als *.jpg – Image an den Drucker gesendet und eine zentrierte Darstellung der aktuellen Leinwand ausgedruckt. /F0005/ Akteure
Endbenutzer
Auslöser
Button: Speichern; Menubar > Datei > Drucken
Vorbedingungen
Karte ist nicht leer
Standardablauf
Benutzer möchte Verkehrsnetzkarte ausdrucken Benutzer wählt „Karte Drucken“ Drucker erhält Verkehrsnetzkarte als *.jpg Karte wird gedruckt
Alternative Abläufe
-
Nachbedingung und Ergebnis
Kartenabbild wird als *.jpg an den Drucker gesendet
Nicht-funktionale Anforderungen
Druckergebnis wird sinnvoll auf eine halbe Din-A4 Seite skaliert um so zu verhindern, dass ein Verkehrsnetz auf X Seiten gedruckt wird.
Parametrisierbarkeit und Flexibilität
Die Datei kann auch als PDF gedruckt werden über einen PDFPrinter. Somit hat der Benutzer die Möglichkeit seine Verkehrsnetze als PDF zu speichern
Nutzungshäufigkeit
Fertige Verkehrsnetze werden am Ende eines Programmdurchlaufes nicht mehr als einmal gedruckt.
14
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.8 Anwendungsfall: Programm Schließen Beschreibung: Die Schließen-Funktion schließt das gesamte Programm und speichert auf Wunsch das aktuelle Verkehrsnetz ab. /F0006/ Akteure
Endbenutzer
Auslöser
Benutzer Datei > Beenden
Vorbedingungen
Laufendes Programm
Standardablauf
Benutzer möchte Programm schließen Benutzer klickt auf das X am Fensterrand oben rechts Sollte eine nicht gespeichertes Verkehrsnetz geöffnet sein bekommt der Benutzer die Auswahl, ob vorher speichern oder nicht. Das Programm schließt
Alternative Abläufe
Benutzer möchte Programm schließen Menu-Bar: Datei -> Beenden Sollte eine nicht gespeichertes Verkehrsnetz geöffnet sein bekommt der Benutzer die Auswahl, ob vorher speichern oder nicht. Das Programm schließt
Nachbedingung und Ergebnis
Programm wurde beendet.
Nicht-funktionale Anforderungen
Auswahl ob nicht gespeicherte Änderungen vor dem Schließen gespeichert werden sollen.
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Am Ende eines Programmdurchlaufes.
15
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.9 Anwendungsfall: Einfügen Funktion Beschreibung: Durch die Einfügungsfunktion können sämtliche Bausteine in das Kartenraster eingefügt werden. /F0012/ Akteure
Endbenutzer
Auslöser
Palette > Baustein > einfügen
Vorbedingungen
Kategorie wurde ausgewählt
Standardablauf
Benutzer möchte einen Baustein einfügen Benutzer zieht den gewünschten Baustein in die Karte Baustein erscheint auf der Leinwand im angesteuertem Rasterfeld Benutzer kann Baustein über das Kontextmenü in der ausgewählten leeren Position einfügen.
Alternative Abläufe Nachbedingung und Ergebnis
Baustein ist eingefügt und bleibt solange auf dem linken Mausknopf aktiv bis ein anderer ausgewählt wird.
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
Siehe Nachbedingung und Ergebnis
Nutzungshäufigkeit
Bei dem Erstellen eines Verkehrsnetzes im Schnitt 10-50-mal.
16
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.10 Anwendungsfall: Löschen Funktion Beschreibung: Durch die Löschfunktion können alle bzw. einzelne Bausteine wieder von der Karte gelöscht werden. /F0013/ Akteure
Endbenutzer
Auslöser
Benutzer Baustein wird ausgewählt > löschen
Vorbedingungen
Baustein auf der Karte muss ausgewählt sein.
Standardablauf
Benutzer möchte Baustein löschen Benutzer schiebt den Baustein in den Papierkorb
Alternative Abläufe
Benutzer möchte Baustein löschen Benutzer löscht den Baustein über das Kontextmenü des ausgewählten Bausteins
Nachbedingung und Ergebnis
Baustein wurde von der Karte gelöscht.
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei dem Erstellen eines Verkehrsnetzes im Schnitt 10-50-mal.
17
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.11 Anwendungsfall: Auto save Funktion Beschreibung: Alle 30 min. wird ein Speicherobjekt, als Kopie der aktuellen Karte benannt und nach Datum, in einem temporären Ordner abgelegt. Läuft im Hintergrund ab. Der Anwender wird lediglich über einen Text im Statusfeld informiert. /F0101/ Akteure
System
Auslöser
Timer
Vorbedingungen
Vergangene Zeit von 30 min.
Standardablauf
Karte wird im temporären Ordner gespeichert
Alternative Abläufe
Benutzer kann selbstständig speichern
Nachbedingung und Ergebnis
Kopie der aktuellen Karte als Speicherobjekt im temporären Ordner.
Nicht-funktionale Anforderungen
Gui darf dabei nicht einfrieren, speichern < 2s.
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Alle 30 min.
18
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.12 Anwendungsfall: Fehlerbehandlung/Log-Funktion Beschreibung: Alle Fehler die entweder durch das System, der Hardware oder falscher Benutzereingaben erfolgen, werden in einer Log-Datei dokumentiert. Das ganze läuft im Hintergrund ab, ohne dass der Benutzer davon etwas mitbekommt. /F0102/ Akteure
System
Auslöser
Benutzerfehler oder Systemfehler
Vorbedingungen
Geworfene Exception
Standardablauf
Fehler wird abgefangen Fehler wird in einer Log-Datei dokumentiert und im Anwendungsordner im Textformat gespeichert.
Alternative Abläufe
-
Nachbedingung und Ergebnis
Protokollierte Fehlerbehandlung im Textformat > vorhergehende Log-Daten dürfen nicht überschrieben werden.
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Nicht abschätzbar
19
Verkerhsplanungssoftware - Pflichtenheft
2.2.2 Anwendungsfälle für Aufbaufunktionen 2.2.2.1 Übersicht Aufbaufunktionen In diesem Kapitel beschäftigen wir uns mit den Funktionen, die sich mit dem Aufbau des Verkehrsnetzes und deren Teilnehmer beschäftig.
20
Verkerhsplanungssoftware - Pflichtenheft
2.2.2.2 Anwendungsfall: Baustein Kategorie auswählen Beschreibung: In einer internen Menu-Palette kann eine Kategorie ausgewählt werden, wodurch verschiedenen Bausteine aufgelistet werden. /F0200/ Akteure
Endenutzer
Auslöser
Benutzer Baustein > auswählen
Vorbedingungen
Programm muss gestartet werden und eine neue Karte erstellt worden sein.
Standardablauf
Kategorie im Menu wird ausgewählt Zugehörige Bausteine werden aufgelistet
Alternative Abläufe
keine
Nachbedingung und Ergebnis
Baustein kann mit Drag `n Drop im Kartenraster eingefügt werden und wird gemerkt damit der Anwender mehrmals einfügen kann.
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei dem Erstellen eines Verkehrsnetzes im Schnitt 20-50-mal.
21
Verkerhsplanungssoftware - Pflichtenheft
2.2.2.3 Anwendungsfall: Baustein in die Karte einfügen Beschreibung: Der in der Kategorie ausgewählte Baustein kann, mittels Drag `n Drop, auf der Karte platziert werden, dabei wird überprüft, ob das Setzen des Bausteins sinnvoll ist. /F0201/ Akteure
Endbenutzer
Auslöser
Palette > Baustein > einfügen
Vorbedingungen
Siehe /F0012/
Standardablauf
Siehe /F0012/
Alternative Abläufe
/F0012/
Nachbedingung und Ergebnis
Siehe /F0012/
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
Siehe /F0012/
Nutzungshäufigkeit
Siehe /F0012/
22
Verkerhsplanungssoftware - Pflichtenheft
2.2.2.4 Anwendungsfall: Baustein aus der Karte löschen Beschreibung: Jeder beliebige Baustein kann wieder aus der Karte gelöscht werden. /F0202/ Akteure
Endbenutzer
Auslöser
Siehe /F0013/
Vorbedingungen
Siehe /F0013/
Standardablauf
siehe /F0013/
Alternative Abläufe
siehe /F0013/
Nachbedingung und Ergebnis
Baustein wurde gelöscht
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Siehe /F0013/
23
Verkerhsplanungssoftware - Pflichtenheft
2.2.2.5 Anwendungsfall: Ausgewählten Baustein drehen Beschreibung: Der Baustein kann über eine Menu-Funktion in der Symbolleiste, in 90° Schritten gedreht werden. /F0203/ Akteure
Endbenutzer
Auslöser
Benutzer Baustein > drehen
Vorbedingungen
Baustein aus der Kategorie Verkehrswege muss ausgewählt sein und auf der Karte abgelegt worden sein.
Standardablauf
Baustein wird in der Palette ausgewählt Drag `n Drop im Kartenraster eingefügt Klick mit der Maus auf die Menu-Funktion drehen Baustein wird in 90° Schritten gedreht. Benutzer kann mit einem Rechtsklick auf der Maus, aus einem Auswahlmenu, den Baustein drehen.
Alternative Abläufe
Shortcut zum drehen des Bausteins Nachbedingung und Ergebnis
Gedrehter Baustein um 90°
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
Dadurch müssen weniger Bausteine entworfen werden, die Palette bleibt übersichtlicher.
Nutzungshäufigkeit
Bei dem Erstellen eines Verkehrsnetzes im Schnitt 10-40-mal.
24
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.6 Anwendungsfall: UnDo Funktion Beschreibung: Alle Veränderungen auf dem Kartenraster können bis zu einer bestimmten Konstante wieder rückgängig gemacht werden. Die Rückgängig Funktion setzt die Leinwand um einen Schritt zurück. /F0010/ Akteure
Endbenutzer
Auslöser
Toolbar: Button: Rückgängig (Toolbar) Menubar: Bearbeiten / Rückgängig
Vorbedingungen
Es befinden sich Programmzustände im Stack
Standardablauf
Benutzer möchte letzte Änderung rückgängig machen Benutzer betätigt die UnDo Funktion
Alternative Abläufe
-
Nachbedingung und Ergebnis
Zustand wurde um einen Schritt zurückgesetzt
Nicht-funktionale Anforderungen
Es sollen nicht sehr viele Zustände zurückgesetzt werden (Konstante = ca. 20) können. Sinnvolle Speicherverwaltung
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei dem Erstellen eines Verkehrsnetzes im Schnitt 10-60-mal.
25
Verkerhsplanungssoftware - Pflichtenheft
2.2.1.7 Anwendungsfall: ReDo Funktion Beschreibung: Das Gegenstück zur UnDo-Funktion. Stellt einen zurückgesetzten Schritt wieder her. Es können nur so viele Schritte wieder hergestellt werden wie auch über UnDo zurück gesetzt wurden. /F0011/ Akteure
Endbenutzer
Auslöser
Benutzer Toolbar: Button: Wiederherstellen (Toolbar) Menubar: Bearbeiten / Wiederherstellen
Vorbedingungen
Es befinden sich UnDo-Zustände im Stack Benutzer möchte zurückgesetzten Schritt wieder herstellen.
Standardablauf
Benutzer betätigt die ReDo Funktion Alternative Abläufe
-
Nachbedingung und Ergebnis
Zurückgesetze Schritt wurde wiederhergestellt
Nicht-funktionale Anforderungen
Alle Zurückgesetzten Schritte sollen auch wiederhergestellt werden können.
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei dem Erstellen eines Verkehrsnetzes im Schnitt 5-20-mal.
26
Verkerhsplanungssoftware - Pflichtenheft
2.2.2.8 Anwendungsfall: Neuen Baustein hinzufügen Beschreibung: Durch einen Klick mit der Maus auf einen neuen Baustein aus der Palette, kann der neue Baustein, der Karte, per Drag `n Drop zugefügt werden. /F0204/ Akteure
Endbenutzer
Auslöser
Benutzer wählt neuen Baustein
Vorbedingungen
Kategorie muss ausgewählt sein.
Standardablauf
Siehe /F0012/
Alternative Abläufe
Siehe /F0012/
Nachbedingung und Ergebnis
Baustein wurde der Karte hinzugefügt.
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei dem Erstellen eines Verkehrsnetzes im Schnitt 40-80-mal.
27
Verkerhsplanungssoftware - Pflichtenheft
2.2.2.9 Anwendungsfall: Verkehrsteilnehmer einfügen Beschreibung: Ein Verkehrsteilnehmer wird durch Auswahl aus der Palette mittels Drag `n Drop eingefügt. Hier ist jedoch zu beachten, dass ein Verkehrsteilnehmer nur sinnvoll gesetzt werden kann, ansonsten wird eine Fehlermeldung angezeigt. Bsp. Auto kann nur auf einer Straße platziert werden. /F0205/ Akteure
Endbenutzer
Auslöser
Siehe /F0012/
Vorbedingungen
Verkehrswege müssen schon angelegt worden sein.
Standardablauf
Siehe /F0012/ Dialogfeld öffnet sich, zur Konfiguration des Verkehrsteilnehmers. Einstellungsmöglichkeiten > Geschwindigkeit, Bewegungsrichtung.
Alternative Abläufe
Siehe /F0012/
Nachbedingung und Ergebnis
Konfigurierter Verkehrsteilnehmer wurde der Karte zugefügt.
Nicht-funktionale Anforderungen
Sinnvolles setzen des Verkehrsteilnehmers. Auto kann nicht auf Schienennetz gesetzt werden.
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei dem Erstellen eines Verkehrsnetzes im Schnitt 10-40-mal.
28
Verkerhsplanungssoftware - Pflichtenheft
2.2.2.10 Anwendungsfall: Verkehrsteilnehmer löschen Beschreibung: Ein Verkehrsteilnehmer kann auch wieder aus der Karte gelöscht werden. /F0206/ Akteure
Endbenutzer
Auslöser
Siehe /F0013/
Vorbedingungen
Siehe /F0013/
Standardablauf
Siehe /F0013/
Alternative Abläufe
Siehe /F0013/
Nachbedingung und Ergebnis
Siehe /F0013/
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Siehe /F0013/
29
Verkerhsplanungssoftware - Pflichtenheft
2.2.3 Anwendungsfälle für Simulationsfunktionen 2.2.3.1 Übersicht Simulationsfunktionen In diesem Kapitel werden die Anwendungsfälle für alle Funktionen besprochen, welche die Verkehrssimulation steuern.
30
Verkerhsplanungssoftware - Pflichtenheft
2.2.3.2 Anwendungsfall: Simulation starten Beschreibung: Nachdem man die Karte zusammengestellt hat und zugehörige Verkehrsteilnehmer platziert hat, kann eine Simulation über ein Ablauf-Controller gestartet werden. /F0300/ Akteure
Endbenutzer
Auslöser
Drücken auf den Startbutton.
Vorbedingungen
Karte muss vollständig erstellt worden sein und Verkehrsteilnehmer müssen auf der Karte vorhanden sein.
Standardablauf
Benutzer möchte Simulation starten Benutzer startet die Simulation
Alternative Abläufe
-
Nachbedingung und Ergebnis
Alle Verkehrsteilnehmer bewegen sich mit ihrer individuell eingestellten Geschwindigkeit. In der Zeit kann nichts auf der Karte verändert oder zugefügt werden.
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Nach der Fertigstellung eines Verkehrsnetzes
31
Verkerhsplanungssoftware - Pflichtenheft
2.2.3.3 Anwendungsfall: Simulation stoppen Beschreibung: Laufende Simulation wieder stoppen bzw. anhalten. /F0301/ Akteure
Endbenutzer
Auslöser
Drücken auf den Stoppbutton.
Vorbedingungen
Simulation muss laufen
Standardablauf
Benutzer möchte Simulation wieder anhalten Benutzer betätigt die Simulation-Stoppen Funktion
Alternative Abläufe
-
Nachbedingung und Ergebnis
Karte kann wieder verändert bzw. Bausteine zugefügt werden.
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Am Ende eines Programmdurchlaufes.
32
Verkerhsplanungssoftware - Pflichtenheft
2.2.3.4 Anwendungsfall: Ablaufgeschwindigkeit Beschreibung: Über eine Combobox können 3 Ablaufgeschwindigkeiten festgelegt werden. /F0302/ Akteure
Endbenutzer
Auslöser
-
Vorbedingungen
keine
Standardablauf
Auswahl Controller auf der Icon bar Auswahl Geschwindigkeit Combobox Individuelle Konfiguration der Geschwindigkeit beim Setzen eines Verkehrsteilnehmers.
Alternative Abläufe Nachbedingung und Ergebnis
-
Nicht-funktionale Anforderungen
Es dürfen nur 3 verschiedene Geschwindigkeiten gewählt werden.
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei jedem Aufruf von /F0300/
33
Verkerhsplanungssoftware - Pflichtenheft
2.2.4 Anwendungsfälle für Zusatzfunktionen 2.2.4.1 Übersicht Die Software wird ein ausführliches Hilfe-Manual bereitstellen, falls der Benutzer Probleme mit den Programmfunktionen bekommen sollte. Zusätzlich wird es möglich sein über die Software ein Online-Forum aufzurufen. Dies Zusatzfunktionen werden in diesem Kapitel weiter beschrieben.
34
Verkerhsplanungssoftware - Pflichtenheft
2.2.4.2 Anwendungsfall: Update Beschreibung: Über die Menu bar Hilfe und dem Menu Item Update kann immer die neuste Version des Programms, über unser SVN-Repository, ausgecheckt werden. Nachteil ist hierbei das der User das Update manuell tätigen muss, der Vorteil ist jedoch, dass jeweilig vorgenommene Änderungen, sofort aktualisiert werden können. /F0400/ Akteure
Endbenutzer
Auslöser
-
Vorbedingungen
keine Benutzer möchte die Software auf den neusten Stand bringen
Standardablauf
Benutzer startet die Update-Funktion Falls Version aktueller als die vorhandene, dann wird die neuste Version heruntergeladen. Alternative Abläufe
Shortcut zum updaten
Nachbedingung und Ergebnis
Programm muss geschlossen und neu gestartet werden.
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
Der Anwender ist somit immer auf dem neusten Stand.
Nutzungshäufigkeit
Nicht abschätzbar.
35
Verkerhsplanungssoftware - Pflichtenheft
2.2.4.3 Anwendungsfall: Hilfe Beschreibung: Über die Menu bar Hilfe kann eine Hilfsdatei geöffnet werden, welche dem Anwender detaillierte Bedienfunktionen erläutert. /F0401/ Akteure
Endbenutzer
Auslöser
-
Vorbedingungen
keine
Standardablauf
Benutzer möchte das Hilfe-Manual Öffnen Benutzer betätigt die Hilfe-Funktion
Alternative Abläufe
Shortcut zum Öffnen der Hilfsdatei
Nachbedingung und Ergebnis
-
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Nicht abschätzbar.
36
Verkerhsplanungssoftware - Pflichtenheft
2.2.4.4 Anwendungsfall: Online-Forum besuchen Beschreibung: Über die Menu bar Hilfe kann ein Online-Forum besucht werden, wo Fragen gestellt werden können, bezüglich aufkommender Probleme. /F0402/ Akteure
Endbenutzer
Auslöser
Aufkommende Fragen
Vorbedingungen
keine
Standardablauf
Benutzer möchte das Online-Forum besuchen Benutzer betätigt die Hilfe-Funktion „Online-Forum“ Standardbrowser wird mit der Webseite gestartet
Alternative Abläufe
Shortcut zum Besuchen der Webseite
Nachbedingung und Ergebnis
-
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Nicht abschätzbar.
37
Verkerhsplanungssoftware - Pflichtenheft
2.2.5. Programmspezifikationen Die Programmspezifikationen werden nur beim Starten der Simulation aktiv. Der MVC überwacht den Ablauf der Simulation und reagiert entsprechend der Vorgaben, die in den folgenden Anwendungsfunktionen beschrieben werden. Dabei hat der MVC das Recht Änderungen an der Karte vorzunehmen, wie das Umschalten der Ampel oder das Schließen und Öffnen des Bahnübergangs. Die Zustandsänderung wird mittels Bildwechsel sichergestellt, die nur dem MVC zur Verfügung stehen. Der Anwender kann keinerlei Änderungen, bei Ablauf der Simulation, tätigen.
2.2.5.1 Übersicht MVC
38
Verkerhsplanungssoftware - Pflichtenheft
2.2.5.2 Anwendungsfall: Ampelschaltung Beschreibung: Die Ampelschaltung wird über einen Timer gesteuert, wenn die eine Ampel rot zeigt, dann hat die gekreuzte Fahrbahn grün. Eine Unterteilung in gelb oder rot-gelb gibt es nicht. /F0500/ Akteure
MVC
Auslöser
Timer
Vorbedingungen
Siehe /F0300/ Simulation muss laufen; damit eine Ampel rot werden kann muss sie vorher grün gewesen sein und genauso umgekehrt
Standardablauf
Ampel ist rot Timer läuft Nach Ablauf des Timers > Ampel schaltet auf grün Timer wird wieder auf Anfangswert gesetzt Gleiches Vorgehen wenn Ampel grün
Alternative Abläufe
keine
Nachbedingung und Ergebnis
Ampel zeigt jeweiligen Zustand an und der Timer wird wieder auf den Anfangswert gesetzt.
Nicht-funktionale Anforderungen
Ampel darf nicht länger als 30s rot bzw. grün sein.
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei Simulationsablauf, kontinuierlich.
39
Verkerhsplanungssoftware - Pflichtenheft
2.2.5.3 Anwendungsfall: Öffnen und Schließen des Bahnübergangs Beschreibung: Die Bahnschranken beim Bahnübergang schließen sich, wenn ein bestimmter Punktabstand der Bahn zum Bahnübergang unterschritten wird. /F0501/ Akteure
MVC
Auslöser
Punktabstand der Bahn vom Bahnübergang
Vorbedingungen
Siehe /F0300/ Simulation muss laufen und die Bahn muss einen gewissen Punktabstand zum Bahnübergang unterschritten haben.
Standardablauf
Bahn fährt Nähert sich Bahnübergang Punktabstand wird berechnet Schranken schließen sich Bahn überquert und entfernt sich wieder vom Bahnübergang Punktabstand wird berechnet Schranken öffnen sich
Alternative Abläufe
keine
Nachbedingung und Ergebnis
-
Nicht-funktionale Anforderungen
-
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei Simulationsablauf, kontinuierlich.
40
Verkerhsplanungssoftware - Pflichtenheft
2.2.5.4 Anwendungsfall: Reaktionsverhalten der Bahn Beschreibung: Die Bahn fährt mit der, im Dialog eingestellten Geschwindigkeit und Richtung und hat immer Vorfahrt. /F0502/ Akteure
MVC
Auslöser
Timer
Vorbedingungen
Siehe /F0300/ Simulation muss laufen. Bahn fährt mit der vorher eingestellten Geschwindigkeit und Richtung konstant.
Standardablauf Alternative Abläufe
keine
Nachbedingung und Ergebnis
-
Nicht-funktionale Anforderungen
Bahn darf nicht langsamer als 30 km/h fahren.
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei Simulationsablauf, kontinuierlich.
41
Verkerhsplanungssoftware - Pflichtenheft
2.2.5.5 Anwendungsfall: Reaktionsverhalten Auto Beschreibung: Autos können sich nur auf Straßen bewegen. Falls eine Ampel rot zeigt, hält das Auto, bei grün fährt es wieder los, wenn die Bahnschranken unten sind wird das Auto ebenfalls zum Anhalten gezwungen. Beim Setzen des Autos (siehe /F0201/)wird ein Dialogfeld geöffnet in dem die Richtung und Bewegungsgeschwindigkeit festgelegt werden kann, das ganze wird dann in dem jeweiligen Objekt gespeichert. Falls ein Auto schneller als das andere fährt und beide auf der gleichen Straßenseite sich befinden, dann verlangsamt sich das schneller fahrende Auto, ab einen gewissen Punktabstand. Beim Fahren in eine Sackgasse stoppt das Auto am Ende und fährt wieder zurück. Um das Programm nicht unnötig kompliziert zu machen, kann ein Auto nicht an einer Kreuzung abbiegen, lediglich an einem T-Stück, was nach dem Zufallsprinzip entschieden wird, ob das Auto links oder rechts abbiegt. /F0503/ Akteure
MVC
Auslöser
Timer
Vorbedingungen
Siehe /F0300/ Simulation muss laufen.
Standardablauf
Siehe /F0502/ Siehe /F0500/ Siehe /F0501/
Alternative Abläufe
keine
Nachbedingung und Ergebnis
-
Nicht-funktionale Anforderungen
Auto darf die Straße nicht verlassen.
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei Simulationsablauf, kontinuierlich.
Auto kann an einer Kreuzung nicht abbiegen.
42
Verkerhsplanungssoftware - Pflichtenheft
2.2.5.6 Anwendungsfall: Reaktionsverhalten Fußgänger Beschreibung: Der Fußgänger kann überall herumlaufen, jedoch nicht auf Bahnschienen und Straßen, eine Straße kann nur an einer Ampel überquert werden mit der Bedingung, dass die Ampel für die Autos rot zeigt. Der Fußgänger läuft per Zufall durch die Karte und ist nur von den oben benannten Bedingungen abhängig. /F0504/ Akteure
MVC
Auslöser
Zufallssimulator
Vorbedingungen
Siehe /F0300/ Simulation muss laufen. Fußgänger läuft per Zufall auf allen Bausteinen, außer Straßen und Schienen, dort besteht eine Abhängigkeit zu /F0500/ bzw. /F0501/.
Standardablauf
Alternative Abläufe
keine
Nachbedingung und Ergebnis
-
Nicht-funktionale Anforderungen
Darf sich nicht schneller als 5 km/h bewegen.
Parametrisierbarkeit und Flexibilität
-
Nutzungshäufigkeit
Bei Simulationsablauf, kontinuierlich.
43
Verkerhsplanungssoftware - Pflichtenheft
3 Datenmodell und Domänenmodell 3.1 UML-Klassendiagramme 3.1.1 Bausteine
Bausteine sind die Elemente die der Benutzer in das Kartenraster einfügen kann. Für jede Position im Raster kann genau ein Baustein eingesetzt werden. Bei (1) sind die Bausteine zu sehen, die eine direkte Beziehung zu den Verkehrsteilnehmern besitzen. Die Beziehung stellt da, ob ein Verkehrsteilnehmer die Erlaubnis hat, sich auf den Baustein zu befinden. Beispiel: Ein Auto darf nicht einen Fußgängerweg befahren. Diese Bausteine sind befahrbare bzw. begehbare Bausteine. Diese Klassen erben von der Klasse Verkehrsweg (2). Diese Klasse stellt allgemeine Daten zu den Verkehrswegen bereit (Beschreibung, maximale Geschwindigkeit). Diese Klasse erbt wiederum von der Klasse Baustein welche Daten von der Grunddatei bereitgestellt werden: Name des Bausteins und Pfad zu der Bilddatei. Durch Verkettung zu anderen Bausteinen wird hier auch angegeben welche Nachbar-Bausteine vorhanden sind und über welche Himmelsrichtung diese erreichbar sind.
44
Verkerhsplanungssoftware - Pflichtenheft
Des weiterem gibt es einen Geländebaustein, der jedoch keinerlei Beziehungen zu den Verkehrsteilnehmern(außer Fußgänger) hat, da er nicht befahrbar ist. Dies könnten z.B. Gebäude oder Wiesen sein.
3.1.2 Verkehrsteilnehmer
Die Teilnehmer-Klasse stellt Informationen zu den Verkehrsteilnehmern bereit, die das Straßennetz befahren bzw. begehen. Alle Verkehrsteilnehmer besitzen grundlegende Eigenschaften (Geschwindigkeit, Position, Fahrtrichtung). Des Weiteren wird ein Typ bestimmt, der für den späteren Programmablauf sehr wichtig ist. Durch die Typbestimmung wird das Programm entscheiden, wie sich der Teilnehmer im Straßennetz zu verhalten hat. Beispiel: Autos halten bei roter Ampel an und dürfen nicht auf Fußgängerwegen fahren.
3.1.3 Map-Daten
In der Kartenklasse sollen Daten über die eigentliche Map/Karte bereitgestellt werden. Dies sind sowohl Informationen über die Ausmaße der Karte (Höhe und Breite) als auch Informationen der Datei selbst, die der Benutzer beim ersten Erstellen eines neuen Verkehrsnetzes anlegt. Die Kartenklasse realisiert ein 2-Dimensionales Feld in dem Bausteine eingesetzt werden können.
45
Verkerhsplanungssoftware - Pflichtenheft
4. Benutzerschnittstelle 4.1 Dialogspezifikationen 4.1.1 Allgemeiner Aufbau der Anwendung In diesem Kapitel beschäftigen wir uns mit den Gui-Elementen im Einzelnen. Es wird der grundlegende Aufbau der Benutzerschnittstelle, sowie Informationen zu den geplanten Layout Typen erläutert.
Einleitung: Die Gesamtstruktur der Benutzerschnittstelle (GUI) gliedert sich in 4 Bereiche. Die Menu bar und Toolbar (oben) sind für die Einstellungen und Bearbeitungsfunktionen vorgesehen. Rechts befindet sich eine Symbolleiste in dem die Bausteinkategorie und die eigentlichen Bausteine befinden mit dem das Verkehrsnetz gestaltet werden kann. Den größten Platz nimmt die Verkehrsnetz-Karte ein. Hier kann in ein vorgegebenes Raster das Verkehrsnetz aufgebaut werden.
46
Verkerhsplanungssoftware - Pflichtenheft
4.2 Übersicht Menu bar und Toolbar Es folgt eine Übersicht aller Funktionen, die für den Benutzer über die Menu bar und Toolbar abrufbar sind.
1) Menu bar a) Datei i) /F0000/
Neues Verkehrsnetz anlegen
ii) /F0001/
Speichern Unter
iii) /F0002/
Speichern
iv) /F0003/
Öffnen
v) /F0004/
Vorlage Öffnen
vi) /F0005/
Verkehrsnetz Drucken
vii) /F0006/
Beenden
b) Bearbeiten i) /F0010/
Zurücksetzen
ii) /F0011/
Wiederherstellen
iii) /F0012/
Einfügen
iv) /F0013/
Löschen
c) Simulation i) /F0300/
Simulation starten
ii) /F0301/
Simulation anhalten
iii) /F0302/
Ablaufgeschwindigkeit einstellen
d) Bausteine i) Neuen Baustein anlegen ii) /F0200/
Kategorie auswählen
(1) Straßen (2) Verkehrsteilnehmer (3) Landschaften (4) Schienen
iii) /F0203/
Baustein drehen
47
Verkerhsplanungssoftware - Pflichtenheft
e) Hilfe i) /F0400/
Update über SVN-Repository
ii) /F0401/
Erste Schritte Guide
iii) /F0402/
Online-Forum besuchen
2) Toolbar a) /F0003/ Datei Öffnen b) /F0001/ Speichern c) /F0002/ Speichern Unter d) /F0005/ Drucken e) /F0300/ Simulation starten f) /F0301/ Simulation anhalten g) /F0203/ Drehen (90 °)
3) Baustein-Leiste a) /F0200/ Kategorie Auswählen (Auswahlliste) b) /F0201/
Baustein einfügen (Drag `n Drop in die Karte)
c) /F0202/ Baustein entfernen (Drag `n Drop in Mülltonnensymbol) d) /F0203/ Verkehrsteilnehmer einfügen e) /F0204/ Verkehrsteilnehmer entfernen
4) MVC a) /F0500/ Ampelschaltung b) /F0501/ Schließen und Öffnen des Bahnübergangs c) /F0502/ Reaktionsverhalten der Bahn d) /F0503/ Reaktionsverhalten Auto e) /F0504/ Reaktionsverhalten Fußgänger
48
Verkerhsplanungssoftware - Pflichtenheft
4.3 Benutzerinteraktion In diesem Kapitel wird ein kompletter möglicher Programmdurchlauf eines Benutzers durchgegangen, der als Ziel hat, eine neue Karte zu erstellen.
4.3.1 GUI: Programmstart Der Anwender kann während des Programmstarts auswählen, für welchen Bereich er die Karte erstellen möchte und verschiedene Voreinstellungen treffen, bevor er das eigentliche Verkehrsnetz erstellt.
Zuletzt geöffnete Dateien Verkehrsnetzvorlagen (Beispiel: Schienennetz, Straßennetz, Fahrradwege…) Erste Schritte (öffnet Manual mit ersten Schritten) Programmmodus einstellen für Anwendungsspezifikationen
Diese Funktion soll vor allem die Benutzerfreundlichkeit des Programms erhöhen. Unerfahrene Benutzer können erst mal den „Erste Schritte“-Guide durchlesen. Vorlagen können dazu verwendet werden, um sich Beispieldateien anzusehen und wenn es nicht erwünscht ist mit einer komplett leeren Karte zu starten. Durch Vorlagen werden auch die Programmeinstellungen angepasst.
49
Verkerhsplanungssoftware - Pflichtenheft
4.3.2 GUI: Neue Verkehrsnetzkarte erstellen
Der Benutzer kann über das Programmstart-Fenster ein neues leeres Verkehrsnetz anlegen.
Zusätzlich erreicht der Benutzer diese Option auch über Datei > Neues Verkehrsnetz anlegen.
50
Verkerhsplanungssoftware - Pflichtenheft
4.3.3 GUI: Baustein in Verkehrsnetz einfügen
Der Benutzer kann mittels Drag `n Drop einen Baustein aus der Symbolleiste in das Verkehrsnetz einfügen. Der Baustein wird bei loslassen des Mauszeigers automatisch an die nächste Raster-Position eingefügt.
4.3.3.1 GUI: Mehrere Bausteine in Verkehrsnetz einfügen Der Benutzer möchte einen Straßenzug aus 6 Bausteinen erstellen. Hierzu wählt er einen Baustein aus der Symbolleiste und zieht in per Drag `n Drop in die Verkehrsnetzkarte.
51
Verkerhsplanungssoftware - Pflichtenheft
Es könnte für den Benutzer sehr aufwendig werden wenn er für lange Straßenzüge jeden einzelnen Baustein per Drag `n Drop in die Verkehrsnetzkarte ziehen müsste. Die Anwendung soll sich daher merken welchen Baustein zuletzt in die Karte gezogen wurde damit der Benutzer einfach mit einen weiteren Klick auf ein beliebiges Raster den selben Baustein wieder einfügen kann.
52
Verkerhsplanungssoftware - Pflichtenheft
4.3.4 Baustein wieder löschen (1)
Um einen Baustein wieder zu löschen muss er wieder mittels Drag `n Drop aus dem Verkehrsnetz in den Papierkorb gezogen werden. Hierfür wird ein Papierkorb-Icon (64x64px) vorgesehen welches sich unten rechts im Programmfenster befindet.
4.3.5 Baustein wieder löschen (2)
Alternativ kann ein Baustein auch im Kontextmenü mit Rechtsklick auf den Baustein gelöscht werden.
53
Verkerhsplanungssoftware - Pflichtenheft
4.3.6 Baustein-Kategorie wechseln
Über die Kategorie Combobox lassen sich die Kategorien auswählen
4.3.7 Baustein drehen
Über die Toolbar lässt sich ein Baustein um 90° nach rechts rotieren. Der Baustein muss dazu vorher im Verkehrsnetz ausgewählt werden und kann dann rotiert werden.
54
Verkerhsplanungssoftware - Pflichtenheft
4.3.8 Zustand zurücksetzen (UnDo)
Der Benutzer hat die Möglichkeit einen Schritt zurück zu setzen. Dies erfolgt bei einem Klick auf den UnDo-Button in der Toolbar oder unter Bearbeiten > Zurücksetzen. Danach können natürlich weitere Schritte zurück gesetzt werden.
4.3.9 Zustand wiederherstellen (ReDo)
Bei einem Klick auf den „ReDo-Button“ in der Toolbar kann ein zurückgesetzer Zustand wiederhergestellt werden. Alternativ kann dies auch über Bearbeiten > Wiederherstellen erfolgen.
55
Verkerhsplanungssoftware - Pflichtenheft
4.3.10 Neuen Baustein hinzufügen
Über die Menubar Bausteine>Baustein hinzufügen kann der Benutzer einen eigenen Baustein in das Programm integrieren. Dazu muss die Bild-Datei ausgewählt werden, ein Name angegeben werden, die Kategorie gewählt werden, sowie die Richtungen angegeben werden, in die das Fahrzeug weiterfahren kann. Ausserdem muss ausgewählt werden welcher Fahrzeugtyp sich auf den Baustein bewegen darf.
4.3.11 Speichern & Speichern Unter
Sobald der Benutzer erste Fortschritte in der Verkehrsplanung erzielt hat kann er die Karte unter „Speichern Unter“ in der Menuleiste unter Datei oder in der Icon Leister abspeichern.
56
Verkerhsplanungssoftware - Pflichtenheft
Daneben befindet sich auch die Speichern-Funktion die eine bereits gespeicherte Datei erneut speichert.
4.3.12 Öffnen
Bereits gespeicherte Dateien können unter Datei/Öffnen wieder geöffnet werden. Es öffnet sich die vom Betribssystem bereitgestellte Öffnen-Funktion. Alternativ kann dies auch über die Toolbar erfolgen
4.3.13 Verkehrsteilnehmer einfügen
Um einen Verkehrsteilnehmer in das Verkehrsnetz einzufügen muss zuerst die Kategorie „Verkehrsteilnehmer“ ausgewählt werden. Danach kann wieder per Drag `n Drop ein Verkehrsteilnehmer in einen passenden Baustein eingefügt werden.
57
Verkerhsplanungssoftware - Pflichtenheft
Danach kann der Benutzer folgendes Formular ausfüllen:
Nachdem der Benutzer die Geschwindigkeit und Start-Fahrtrichtung eingegben hat und auf „hinzufügen“ klickt wird der Verkehrsteilnehmer hinzugefügt und kann sich während der Simulation bewegen.
4.3.14 Simulation starten
Sobald der Benutzer das Verkehrsnetz erstellt und mit Fahrzeugen bestückt hat kann die Simulation gestartet werden. Dies geschieht über die Menu bar > Simulation starten.
58
Verkerhsplanungssoftware - Pflichtenheft
Der Benutzer kann nun die Ablaufgeschwindigkeit der Simulation auswählen. Mit Klick auf den Button „Starten“ bestätigt er die Eingabe und startet die Simulation.
4.3.15 Simulation gestartet
Im Simulationsmodus werden alle Bedienoberflächen gesperrt, es können nun keine Verkehrsteilnehmer oder Bausteine eingefügt werden, bis die Simulation wieder beendet wurde. Die Simulation kann über die Menubar Simulation > Simulation beenden oder über die Toolbar wieder beendet werden.
59
Verkerhsplanungssoftware - Pflichtenheft
5 Glossar
A Auto-Save
Veränderungen an einer Datei werden automatsch in Temp-Dateien gespeichert damit bei einem Programmabsturz keine Änderungen verloren gehen.
B Browser
Browser sind Anwendungen zur Darstellung von Web-Seiten oder allgemein Ordner und Dateien. Button Ein Button bezeichnet ein häufig verwendetes Element grafischer Benutzeroberflächen in einem Anwendungsprogramm. Der Button ermöglicht dem Benutzer, eine dem Steuerelement zugeordnete Funktion, auszulösen. Combobox
Eine Combobox bieten den Benutzer die Möglichkeit ein Auswahlfeld aufzuklappen, um eine Auswahl von Programmfunktionen zu erhalten Controller
Programmsteuerung
D Datei
In einer Datei können an einem beliebigen Platz auf der Festplatte Informationen abgespeichert werden. Diese Informationen können z.B. abgespeicherte Dokumente wiederherstellen. Die Informationen bleiben auch nach schließen der Anwendung erhalten. Dialogfeld
Ein Dialogfeld wird von der Anwendung aufgerufen wenn es nötig ist, dass der Benutzer weitere Informationen in Eingabefelder eingibt, die für den weiteren Programmablauf von Nöten sind. Drag ` n Drop
Drag `n Drop ermöglicht es dem Anwender Anwendungselemente oder Verknüpfungen mit Hilfe der Maus von einer Position zur anderen in einer Anwendung zu verschieben. Dazu muss ein verschiebbares Element mit Linksklick mit der Maus ausgewählt werden und kann solange die linke Maustaste gedrückt ist verschoben werden.
G Gui Gui (Graphical User Interface) stellt die Schnittstelle zwischen den Programmfunktionen und dem Benutzer da. Gui ist der Überbegriff der kompletten grafischen Benutzeroberfläche die eine Anwendung bereitstellt.
60
Verkerhsplanungssoftware - Pflichtenheft
Guide Ein Guide ist ein Dokument welches eine Anwendung dem Benutzer zur Verfügung steht, um die Anwendung und deren Funktionen zu erklären.
I Icon Der englische Ausdruck Icon benennt im Computerbereich ein Piktogramm, das als Bestandteil einer grafischen Benutzeroberfläche einer Software, dass auf einer grafischen Schaltfläche (Button) einen Befehl an die Software symbolisiert. Image Ein Image (Bild) wird in Benutzeroberfächen verwendet um Symbole oder Programmbestandteile bildlich darzustellen.
K
Kontextmenü Das Kontextmenü kann mit einem Rechtsklick (Maus) auf ein Element welches ein Kontextmenü bereitstellt aufgerufen werden. Es bietet weitere Funktionen zu dem Element. Das Kontextmenü ist Teil der Benutzeroberfläche.
L Layout Überbegriff der Design-Struktur eine Benutzeroberfläche Log (Datei) Alle vom Benutzer oder dem System getätigten Abläufe und insbesondere Fehler werden in der Logdatei festgehalten, um dem Entwickler den Programmablauf später besser nachvollziehbar zu machen.
M Map In der Map (Karte) wird das Dokument vom Benutzer zusammengestellt. Menubar Die Menubar ist die obere Bedien-Leiste eines Programms welches häufig eine Vielzahl von Optionen und Untermenüs zu Verfügung stellt, die den kompletten Programmablauf verwalten.
O Online-Forum In einen Online-Forum können sich Benutzer und Entwickler untereinander austauschen in dem jeder, Themen erstellen kann oder Antworten beitragen kann.
P Palette Zusammenfassbarer Bereich in der Benutzeroberfläche. Eine Symbolleiste bezeichnet man z.B. als Palette
61
Verkerhsplanungssoftware - Pflichtenheft
Papierkorb Benutzer kann Objekte in den Papierkorb schieben um diese zu entfernen. Patch / patchen Entwickler kann einen Patch bereitstellen mit dem mögliche Programmfehler behoben werden können. Dies nennt man „patchen“. Performanz Bedeutet eine gute Programmlaufzeit. Pfad Ein Pfad gibt den genauen Standort einer Datei oder Ordner auf einem System an. Pixel Pixel bezeichnet sowohl die kleinste Einheit einer digitalen Rastergrafik als auch deren Darstellung auf einem Bildschirm mit Rasteransteuerung.
R ReDo Zustand Wiederherstellen
S Stack In einem Stack (Stapel) werden Elemente wie auf einem Stapel immer oben drauf platziert und können demnach auch wieder von oben entnommen werden. Symbolleiste In der Benutzeroberfläche eine Leiste aus Symbolen um häufig genutzte Programmfunktionen mit einem Klick schnell aufzurufen Systemumgebung Die Umgebung in der die Anwendung lauffähig sein soll.
T Template Stellt dem Benutzer programmspezifische Voreinstellungen zur Verfügung. Ein bereits mit einer Grundausstattung vorbereitetes Dokument welches sich gut zur Weiterbearbeitung eignet. Timer Anwendungseigenschaft welche einen zeitlichen Abstand definieren und abmessen kann um wiederkehrende Funktionen zeitlich bestimmt aufrufen zu können. Toolbar siehe Symbolleiste TXT-Datei Dateiformat in der reiner Text abgespeichert werden kann.
62
Verkerhsplanungssoftware - Pflichtenheft
U UML Die Unified Modeling Language, kurz UML (auf Deutsch „Vereinheitlichte Modellierungssprache“), ist eine graphische Modellierungssprache zur Spezifikation, Konstruktion und Dokumentation von Teilen von Software und anderen Systemen (Quelle:wikipedia.org)
U UnDo Zustand zurücksetzen
V Verzeichnis siehe Pfad
X XML-Datei Dateiformat in der Inhalte strukturiert so abgelegt werden können, damit Anwendungen auf diese schnell wieder zugreifen können.
T Temp-Dateien Tempdateien werden von Anwendungen erstellt um den Programmablauf zu unterstützen. Tempdateien werden nach schließen des Programms wieder gelöscht, außer wenn das Programm abstürzt. Sollte letzteres der Fall sein helfen Tempdateien dabei verloren gegangene Informationen wieder herzustellen.
63
Verkerhsplanungssoftware - Pflichtenheft
Dieses Dokument wurde im Rahmen der Veranstaltung Softwaretechnik der Hochschule RhainMain (WS 10/11) erarbeitet. Alle Inhalte des Pflichtenheftes wurden durch die Gruppenmitglieder erstellt, außer wenn explizit auf eine Quelle verwiesen wurde. Unterschriften:
_______________________________________ Fabian Feucht
_______________________________________ Björn Klemm
64