die App hat ein Tagebuch
das Tagebuch besteht aus Einträgen (“entries”)
ein Entry besteht >=1 Mahlzeiten (“meals”)
ein meal besteht aus einem food, einer Portion eines Rezepts oder einer Portion einer “temporären Recipes”
ein Entry kann ein “temporäres recipe” sein
ein temporäres Recipe ist ein generisches Rezept, dass sich häufig ändert (“Butterbrot mit XY-Belag”)
Idee dahinter ist, dass einige entries merkwürdig erscheinen können, wenn sie einzeln und nicht summiert erscheinen: z.B.: “66g Brot, 5g Margarine, 16g Salami” → das ergibt zusammen “ein Butterbrot”, ist aber kein dauerhaftes Rezept
für ein temporäres Recipe ist ein optionaler Titel möglich. Ist der Titel leer, werden in der Tagesansicht die Grundzutaten angezeigt, bis der Anzeigeplatz aufgebraucht ist.
Beispiel: Ein temporäres Recipe sei das o.g. Butterbrot. Ohne Angabe des optionalen Titels ist dann in der Tagesansicht der Eintrag mit dem Titel “Brot, Margarine, Sal…” zu sehen (Anzahl der Zeichen wird auf verfügbare Darstellungsbreite beschränkt)
besteht ein Entry aus mehr als einem food, dann wird es als “recipe” angesehen. In der View wird, sobald mehr als ein food in einem entry eingegeben wird, wird eine Checkbox “als Rezept speichern” angezeigt. Ist der Haken der Checkbox gesetzt, ist die Angabe eines Titels Pflicht.
das Tagebuch zeigt die neusten Einträge oben
jeder neu eingefügte entry muss zuverlässig gespeichert werden
jeder entry summiert alle Nährstoffe in einer Übersicht, die sowohl in der Detail-Ansicht des Entries, als auch in Kurzform in der Tagesübersicht zu sehen ist
jeder entry vergleicht die summierten Nährstoffe mit einem Tagessoll
ein Tagessoll ist z.B. die maximale Menge an kcal, die ein Benutzer am Tag zu sich nehmen möchte
dieser Tagessoll muss vom Benutzer festgelegt werden
es müssen für unerfahrene Benutzer hier Vorschläge über durchschnittliche Werte angegeben werden (eine erwachsene Frau im Alter von 30 Jahren benötigt im Durchschnitt 2000 kcal/Tag, um nicht zuzunehmen)
Vision: es gibt solche Rechner im INet zuhauf, aber vielleicht integriert man einen einfachen Schätzer, der durch Fragen an den Benutzer (Welche Tätigkeit üben sie aus → sitzend, vorwiegend sitzend, leichte körperliche Arbeit…; wie viel Sport treiben Sie…) einen zirka-Wert für die Sollwerte berechnet
UNKLAR: Was passiert beim Unterschreiten oder Überschreiten? Da müssen Toleranzwerte festgelegt werden