Bevor wir nun anfangen irgendwelchen Code zu tippen, UIs zu designen, uns in Ideen zu verrennen und ein schwaches Produkt abzuliefern machen wir uns erst einmal Gedanken darüber, was die App können soll.
Und zwar einen Schritt nach dem Anderen.
In erster Linie soll die App unsere Kommen- und Gehen Zeiten aufzeichnen.
Nichts leichter als das, da fällt mir sogar schon ein Layout für ein - doch was ist, wenn das Layout zu kompliziert wird?
Wenn die App dadurch schwer zu nutzen ist? Niemand möchte sich in seiner Produktivität gebremst fühlen.
Wie also bekommen wir heraus, ob unser Layout funktioniert ohne es zu programmieren und auszuprobieren (und dann schlussendlich bei der weniger guten Lösung zu bleiben, weil wir da schon drei Stunden dran gefeilt haben)?
Die "Bösen" aus Cupertino predigen seit Jahren "Fake It 'Til You Make It". Ihre Präsentationsapp kann auf iPhone Größe eingestellt werden und speziell zugeschnittene Präsentationen auf dem Gerät so wiedergeben, als wäre man in der App - die es gar nicht gibt.
Ich bediene mich Googles Präsentationsdienst, weil sich die Sachen hier prima verlinken lassen und so wirklich schützenswert sind die Ideen eh nicht.
Also frisch ans Werk!
Entwurf #1 ist fertig.
(Auf dem iPhone würde jetzt nach jedem Tab der nächste Screen kommen, tabbt man also ungefähr auf die Eingabeelemente bekommt man ein Gefühl dafür, wie das Ganze laufen könnte.)
Hier sehen wir gleich, das Konzept taugt nicht. Tab, eingeben, Tab, eingeben, dynamisch wachsende Liste - alles sehr unübersichtlich.
Eigentlich brauchen wir die Details auch gar nicht auf dem ersten Screen, Auswertungen und Bearbeiten soll über eigene Screens geschehen.
Entwurf #2 ist fertig.
Irgendwie noch nicht das Gelbe vom Ei. Wir zeigen zwar die notwendigen Informationen, aber an Hand der Screens ist ersichtlich, das niemand weiß in welchem Modus er gerade ist.
Schöner wäre es, der Button wüsste was wir vorhaben.
Entwurf #3 gefällt mir da am Besten.
An Hand des Buttons erkennt man, ob man gerade angekommen (Dreieck) oder gegangen (Kreis) ist.
Ich kann mich nur nicht entscheiden, ob relative Dauer (Noch 6 Stunden...) oder absolute Uhrzeit (Mindestens bis 14:00 Uhr...) sinnvoller ist.
Aber ich gehe davon aus, dass diese Vorliebe vom Nutzer abhängt. Also wird das in die Settings übernommen.
(Genauso wie Wochenarbeitszeit, Arbeitstage die Woche, zulässige prozentuale Anzahl Überstunden... Doch dazu später mehr.)
Da wir nun ungefähr wissen, wie das UI funktionieren soll, wäre es doch prima, wir fingen gleich damit an.