Verwalte Dein Projekt – einfach, mobil und speditiv

Wer schon in einem Organisationskomitee mitgewirkt hat, weiss ganz genau: Früher oder später wird ein Einsatzplan benötigt, damit das geplante Projekt auch möglichst reibungslos abläuft. «Wer kümmert sich um den Transport? Ab wann muss die Festwirtschaft betriebsbereit sein und wie viele Leute sind jetzt schon wieder für die Bestuhlung des Saales eingeteilt?» Wenn man nicht gerade ein ultimatives Organisationstalent ist, kann man dabei sehr schnell den Überblick verlieren.

Also machen wir Schluss mit mühsamen Excel-Einsatzplänen, welche bei jeder kleinen Änderung neu ausgedruckt oder verschickt werden müssen. In einer durch das Smartphone geprägten Zeit ist es am einfachsten, wenn der Einsatzplan überall und sofort einsehbar ist und die für die Planung verantwortliche Person unkompliziert Änderungen vornehmen kann.

Zudem bietet das entwickelte Projektverwaltungs-Tool einige Funktionen, welche die Planung und Koordinierung extrem vereinfachen. Neben der Erkennung von Terminkollisionen wird dem Einsatzplaner angezeigt, ob den einzelnen Aufträgen genügend Personal zugeteilt wurde. Die Oberfläche gestattet es dem Planer, seine Manipulationen auch auf dem Smartphone auszuführen. Somit ist er auch vor Ort am Anlass sehr flexibel. Weiter sehen die aufgebotenen Personen mit wem zusammen sie ihren Auftrag auszuführen haben und können diesen direkt anrufen.

Aber was nützt eine lange Beschreibung!? Jetzt ausprobieren und sich selber überzeugen!

(ae)

Kritik
von Stephan Huber

Konzeption:

Inspiriert durch das Tool meines Arbeitgebers und nach dem ich im vorgehenden Semester grossen Gefallen an PHP gefunden habe, entschied ich mich an dieses Projekt heranzuwagen. Zu Beginn zeichnete ich mir auf, wie viele Tabellen es braucht, was diese beinhalten sollten und wie sie in Relation stehen sollen.

Erste Priorität hatte der Admin-Bereich. Erst wenn dieser reibungslos funktionierten würde, wollte ich mich an die Ausgabe der Daten machen. Im Kopf hatte ich einen klassischen Einsatzplan mit Zeitachse und einer Auflistung aller eingesetzten Personen.

Umsetzung:

Zu Beginn war ich sehr auf die Projekte aus dem Fach "Interaktive Medien" des 3. Semesters fokussiert und kupferte die grundsätzlichen Datenbankbefehle und -verbindungen von dort ab. Nach dem die Seite funktionell grob stand, war ich in den grundlegenden PHP-Funktionen inzwischen sattelfest, so dass ich mich den im Programmieren bekanntlich immer wieder neuen Problemen widmen konnte:

  • Eine While-Schlaufe kann nicht in einer anderen While-Schlaufe verschachtelt werden. Nach dem ersten Durchlauf der äusseren Schlaufe, ist die innere erfüllt und wird nicht mehr weiter ausgeführt.
    Lösung: foreach($row as $value) 
  • Unterschiedliche IDs vergeben, wenn mit while und foreach gearbeitet wird.
    Lösung: Die ID setzt sich aus zwei Zahlen, welche je von einer Funktionen abhängig sind, zusammen. Das heisst, jeder Teilnehmer im Modal "Teilnehmer zuordnen" hat eine ID bestehend aus der Auftrags-ID und der Teilnehmer-ID.
  • Versuch den Einsatzplan mit Hilfe von Google-Charts auszugeben. Das Ergebnis war aber nicht zufriedenstellend.
    Lösung: Ausgabe über Ajax
  • Zeit- und Datumformat wird in der Datenbank anders gespeichert, als ich sie in der Ausgabe brauche.
    Lösung: Das Datum und die Uhrzeit wird in mehreren Spalten gespeichert(Jahr, Monat, Tag, Stunde, Minute) und bei der Ausgabe zusammengesetzt.
  • Die Bedingung, welche Überschneidungen mit anderen Aufträgen feststellt, sowie die Funktionen, welche andere Teilnehmer desselben Auftrages aufruft, erforderten viele Skizzen, Versuche und Misserfolge.
  • Es schien mir ein Ding der Unmöglichkeit PHP-Variablen in JavaScript zu übergeben, so dass diese in AJAX verwendet werden könnten. Ich kann mir das nicht erklären, aber das sollte doch möglich sein!?
    Lösung: Nach dem Änderungen vorgenommen werden, erscheint zuerst eine Erfolgs- oder Fehlermeldung und danach wird die Seite aktualisiert, so dass die Änderungen sofort sichtbar sind.

Feedback:

Ich habe zu verschiedenen Zeitpunkten der Entwicklung Feedbacks in meinem Kollegenkreis eingeholt. ich erhielt einige Anregungen, was noch "Nice-to-have" wäre, oder was noch nicht verständlich ist.
Weil nicht immer alle ganz so Technik affin sind, entschied ich mich kurzerhand noch ein einfaches Tutorial zu erstellen.

Keine Kommentare

Schreibe einen Kommentar