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