
CookWise
Die Kochbuch App für Familien & WGs
​CookWise ist eine minimalistische App, mit welcher du all deine Rezepte an einem Ort hast. Du kannst ganz einfach ein Kochbuch erstellen und darin deine Lieblingsrezepte abspeichern. Du planst ein Rezept zu kochen? Mit nur einem Tap hast du alle Zutaten für deinen nächsten Einkauf auf der Einkaufsliste. Du möchtest ein Kochbuch mit deinen Freunden und deiner Familie teilen? Kein Problem, füge sie zu deinem Kochbuch hinzu und tauscht eure Lieblingsrezepte untereinander aus.

Case Study
Rollen
UI/UX Design: Jakob Wiemer
Frontend Development: Jakob Wiemer, Sebastian Müller
Backend: Sebastian Müller
Projektdauer
Januar bis April 2021
Projektziel
Das Ziel des "CookWise" Projektes war es, eine minimalistische Kochbuch-App für Familien und WGs zu entwickeln. Uns war es vor allem wichtig, eine schöne Benutzeroberfläche und eine intuitive Bedienung zu bieten. Rezepte und Kochbücher sollten möglichst einfach und in wenigen Schritten zu erstellen sein. Da es unser erstes umfangreiches Entwicklungsprojekt mit Flutter und Firebase war, haben wir uns auf folgende Core-Features konzentriert:
​
-
Login mit Email und Passwort, Google oder Apple
-
Kochbücher erstellen
-
Rezepte erstellen und bearbeiten
-
Mitglieder zu einem geteilten Kochbuch hinzufügen
-
Zutaten aus Rezepten in eine Einkaufsliste importieren
Zielgruppe
Die Zielgruppe von CookWise fokussiert sich auf Familien und WGs, welche gern gemeinsam kochen. Hierbei geht es vor allem darum, Lieblingsrezepte auszutauschen und mit anderen zu teilen. Darüberhinaus bietet sich CookWise auch für jeden an, der seine Rezepte an einem Ort verwalten möchte.
Designprozess
Grundsätzlich haben wir uns an dem Design Thinking Prozess orientiert, obgleich wir uns im Rahmen dieses ersten Programmierprojektes nicht zu 100% an diesen gehalten haben. Im Folgenden gehen wir auf unsere gemachten Fehler und gewonnen Learnings und Erfahrungen aus diesem Projekt ein.

Für Sebastian und mich war es das erste große Entwicklungsprojekt. Unser Ziel war es zunächst mit Flutter die ersten Schritte zu machen und uns mit der Entwicklungsumgebung anzufreunden. Wir hatten die grobe Idee eine einfache Kochbuch-App für private Zwecke zu entwickeln, da wir beide sehr gern kochen und unsere Rezeptideen miteinander austauschen. Die ersten Schritte des Design Thinking Prozesses "Understand", "Define" und "Ideate" waren bei uns Zugegebenermaßen schnell abgewickelt. Die Target-User waren erstmal wir beide, das Projektziel bestand darin das Projekt komplett abzuschließen und unsere Ideen für eine mögliche Lösung haben wir mündlich ausgetauscht. Wir haben zudem weder eine User Research durchgeführt noch einen Competitive Audit Report angelegt. Unser erster Schritt bestand darin, einen einfachen Prototypen anzufertigen. Hierbei übersprangen wir das Paper-Prototyping und Wireframing und designten direkt einen High-Fidelity-Prototypen, welcher weder getestet noch evaluiert wurde.
​
Im Folgenden sehen Sie einen Auszug unseres Prototypen:
Entwicklungsprozess
Falls Sie sich unsere App heruntergeladen haben, stellen Sie schnell fest, dass der entwickelte Prototyp nicht dem der finalen Produkt entspricht, obwohl ein High-Fidelity-Prototyp genau für diesen Zweck gedacht ist. Unser Entwicklungsprozess war nämlich von einem Problem geprägt: Ständigen Designveränderungen. Da wir zu Beginn ohne ein klar definiertes Projektziel an die Entwicklung herangetreten sind, haben sich im Verlauf weitere Ideen gebildet. Unser Scope war es nach einigen Wochen nicht mehr nur eine simple Kochbuch-App zu entwicklen. Unser Ziel war es, die App tatsächlich zu veröffentlichen. Dazu kamen die Ideen eine integrierte Einkaufsliste zu implementieren und das Feature, Kochbücher zu teilen und Mitglieder darin einzuladen. Durch den neuen Fokus haben wir im Verlaufe des Entwicklungsprozesses zunehmend das Design optimiert, damit es sich im AppStore von anderen Applikationen in diesem Segment abhebt.
​
Unsere Arbeitsaufteilung erfolgte grundsätzlich nach dem Frontend und Backend. Sebastian war hierbei für die Backend-Entwicklung und Implementierung von Logik verantwortlich und ich konzentrierte mich auf das programmieren des Frontends. Dabei folgten wir beide unseren eigenen Namenskonventionen für Variablen, Klassen und GitHub-Branches. Dies führte zu vielen Missverständlichkeiten im Code, da dieser auch oftmals nicht ausreichend dokumentiert wurde. Des Weiteren lagerten wir viele der UI-Komponenten nicht global aus, wodurch der Code durch viele Redundanzen geprägt ist.
Fazit & Key-Learnings
CookWise war für uns eine sehr lehrreiche Erfahrung. Durch unsere Fehler haben wir nun ein klares Verständnis davon, wie wichtig Projektmanagement, eine klare Projektvision und Codestruktur für den Erfolg eines Software-Projektes ist. Rückblickend können wir festhalten, dass wir mehr Zeit in den Design Thinking Prozess hätten investieren sollen. Für uns ist dieser Fehler ein elementares Key-Learning, welches wir in unseren zukünftigen Projekten in das Zentrum der Entwicklung rücken. Im Detail möchten wir folgende Dinge umsetzen:
​
-
Eine klare Projektvision
-
Design Thinking (Research, Prototyping & Testing)
-
Agiles Projektmanagement
-
Definition von klaren Codestrukturen und eine umfangreiche Code-Dokumentation
