Projekt Fahrgemeinschaftsbörse

Ausgangssituation

Der Zusammenschluss mehrerer Personen zu einer Fahrgemeinschaft mit gemeinsamen Zielort wirft jeden Morgen die Frage nach der gerechten Fahrten-Verteilung unter den Teilnehmern auf.

  • Wer nimmt heute an der Fahrt teil?
  • Ist die Teilnehmerzahl für eine Autofahrt zu hoch ( >5 Personen) ?
  • Wer ist heute mit dem Fahren dran?
  • Benötigt heute jemand ein Auto und muss deswegen ungeachtet einer vorbestimmten Reihenfolge fahren?
  • Wie behält man bei Ausfällen (z.B. Urlaub, Dienstreisen, Krankheit) von Personen eine gerechte Reihenfolge unter Berücksichtigung der vorherigen Fahrten bei?
  • Wie geht man fair mit der Situation um, dass aufgrund schwankender Teilnehmerzahlen bestimmte Mitglieder schlechter besetzte Fahrten durchführen müssen?

Definition der Projektziele

  • Minimierung des Koordinationsaufwands zwischen den Teilnehmern der Fahrgemeinschaft.
  • Definition eines fairen Rechenmodells für die Punkteverteilung an die Fahrgemeinschaftsmitglieder
    • nicht kostenorientiertes, geldloses Rechenmodell
    • rein auf den Personentransport bezogen

Zielgruppe

Die angestrebten Nutznießer des Projektes sind vorwiegend Berufspendler und weitere Personen, die an der häufigen Inanspruchnahme einer Fahrgemeinschaft zu einem bestimmten Zielort, oder einer Teilstrecke interessiert sind.

Intention

Die Teilnehmer haben als Ziel die Minimierung ihrer Kraftstoff- und Kraftfahrzeugkosten und/oder ein Interesse den Schadstoffausstoß nachhaltig zu reduzieren.

Voraussetzungen und Prämissen

Die Teilnehmer…

  • gehen den Kompromiss geregelter Abfahrtszeiten ein
  • können sich arrangieren und gemeinsame Treffpunkte/Parkplätze finden
  • haben ähnliche/gleiche Arbeitszeiten und/oder ein Arbeitszeitmodell (Gleitzeit), dass eine flexible Arbeitszeitgestaltung im Sinne der Fahrgemeinschaftsteilnehmer erlaubt.

Systemidee

Es wird ein mobilfähiges, webbasiertes Fahrgemeinschaftsportal geschaffen, dass das Gründen, Finden und Verwalten von Fahrgemeinschaften ermöglicht.

Das Herzstück der Anwendung ist ein punktebasiertes Rechenmodell, welches die Fahrerreihenfolge anhand der individuell erbrachten Vorleistungen/Fahrten der Fahrgemeinschaftsmitglieder bestimmt.

Feature Liste / Anwendungsfälle

Das System muss dem Benutzer die Möglichkeit bieten …

  • Benutzer registrieren
  • Benutzer per eMail freischalten
  • Benutzerlogin
  • Fahrgemeinschaft gründen
  • Fahrgemeinschaft suchen
  • Fahrgemeinschaft beitreten (evtl. über Freundschaftsanfrage)
  • Teilnehmer anlegen
  • Teilnehmer suchen
  • Teilnehmer löschen
  • Strecke suchen
  • Strecke anlegen
  • Strecke löschen
  • Treffpunkt suchen
  • Treffpunkt anlegen
  • Treffpunkt löschen
  • Fahrt anlegen
  • Fahrt nachtragen (für ein Datum)
  • Fahrt editieren (für ein Datum)
  • Fairnessausgleich, wenn ein Benutzer öfter die Fahrten mit wenigen Teilnehmern erwischt.

Anforderungen

Ein Benutzer registriert sich bei der Fahrgemeinschaftsanwendung. Nachdem er seine Login-Daten per eMail erhalten hat, kann er sich im System einloggen.

Der Benutzer sucht nach Fahrgemeinschaften und kann diesen eine Freundschaftsanfrage senden, die durch den Fahrgemeinschaftsadministrator freigegeben wird.

Wenn die Freundschaftsanfrage vom Fahrgemeinschaftsadministrator genehmigt wurde, hat der Benutzer Zugriff auf die Strecke / die Strecken, die von der Fahrgemeinschaft angelegt wurden, und kann auf diesen Strecken teilnehmen.

Der Benutzer hat die Möglichkeit eine eigene Fahrgemeinschaft zu gründen, wenn für seine Strecken noch kein passender Eintrag existiert.

Eine Fahrgemeinschaft hat mindestens eine Strecke, die von einem Starttreffpunkt zu einem Zieltreffpunkt definiert ist.

Der Starttreffpunkt hat eine festgelegte Abfahrtszeit, der Zieltreffpunkt eine festgelegte Ankunftszeit.

Eine Fahrt findet zu einem Datum auf einer Strecke statt. Eine Fahrt besteht aus mindestens 2 Teilnehmern.

Ein Teilnehmer besitzt ein Punktekonto an einer Strecke, welches bei der Teilnahme als Nicht-Fahrer um einen Punkt (Streckenkonto = Streckenkonto – 1) reduziert wird.

Wenn der Teilnehmer als Fahrer ausgewählt wurde oder sich selbst anbietet, wird sein Punktekonto um die Anzahl der Mitfahrer erhöht (Streckenkonto = Streckenkonto + Anzahl d. Mitfahrer).

Wenn die Teilnehmerzahl die Transportkapazität einer Fahrt übersteigt, können mehrere Teilnehmer als Fahrer fungieren, die jeweils die Punkte gutgeschrieben bekommen, die der mitgenommenen Teilnehmerzahl entsprechen. Die Teilnehmer teilen die Fahrten dann selbständig auf.

Ein Punktekonto an einer Strecke kann unter Berücksichtigung der Plausibilität korrigiert werden, allerdings wird die Historie von Korrekturen namentlich und chronologisch vermerkt. Alte Einträge zu einem Datum werden also lediglich auf obsolet gesetzt, so dass die vollständige Historie erhalten bleibt.

Ein neuer Teilnehmer steigt in eine Strecke mit einem Punktestand von 0 Punkten ein, so dass die Summe aller Fahrten auf einer Strecke immer 0 ergibt.

Wenn ein Teilnehmer von einer Strecke entfernt wird, werden seine Fahrten durch die Anzahl der Teilnehmer geteilt und den übrigen Teilnehmern zugeordnet, so dass die Summe aller Fahrten auf einer Strecke wieder 0 ergibt.

Fairnessausgleich

Am Ende des Monats erfolgt ein Fairnessausgleich, der dazu dient, die Fahrten mit wenigen Teilnehmern auszugleichen. Hintergrund dieses Ausgleiches sind Beschwerden der einzelnen Teilnehmer über mangelnde Teilnahme an den Fahrten, die selbst angeboten werden:
fairnessausgleich

Maskenentwürfe

tbd

Datenbankmodellierung als EER Diagramm

ER_Fahrgemeinschaft

Download: MySQL Workbench 2.6: Fahrgemeinschaftsmodell
Download: SQL_Skript

Anwendungsarchitektur als UML Klassendiagramm

UML_Fahrgemeinschaftstool

 

Diagramm StarUML2 Download: Fahrgemeinschaft_2014_12_25

Ergebnis

Screenshots

wpid-screenshot_2015-01-25-19-08-54.png wpid-screenshot_2015-01-25-19-09-17.png wpid-screenshot_2015-01-25-19-09-56.pngwpid-screenshot_2015-01-25-19-09-36.pngwpid-screenshot_2015-01-25-19-10-24.png   wpid-screenshot_2015-01-25-19-10-11.png

Live Demo

Benutzer: test
Passwort: test

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.