requirements:informelle_anforderungen
This is an old revision of the document!
Table of Contents
Funktionale Anforderungen
Allgemeine Anforderungen
- die App besteht aus einem Kern (“core”)
- der core darf zu keinem Zeitpunkt network-permission bekommen
- das sollte auch beworben werden
- geplant sind Zusatzmodule für erweiterte Funktionen
- diese Module können auch network-permission bekommen
- die Module sollen sich über den Play-Store nachinstallieren lassen (wie z.B. die App “TaskBomb”)
- UNKLAR: wie bewirbt man neue Module ohne network-permission?
Datenbank
- für die persistente Datenhaltung speichert die App Informationen in einer Datenbank
- die Datenbank hält Tabellen bereit für
- Lebensmittel
- Rezepte
- Statistiken
- Benutzerdaten
- die Suche nach Werten in der Datenbank muss mit AutoCompleteTextViews oder vergleichbaren UI-Elementen passieren
- die Datenbank kommt mit zentral moderierten und manuell ergänzten default-Einträgen
- VISION: Benutzerinteraktion:
- Benutzer können über ein Zusatzmodul Rezepte austauschen oder irgendwie zentral hochladen
- wenn ein Rezept zentral hochgeladen wurde, darf ein Rezept erst nach Moderation freigegeben werden
- die Datenbank kann durch den Benutzer durch Eingabe Lebensmitteln, Rezepten und Benutzerdaten
Lebensmittel
- Benutzer kann Lebensmittel (“food”) eingeben und speichern.
- ein Lebensmittel hat Angabe über
- kcal
- Protein
- Kohlehydrate
- Bezugseinheit
- die Maßeinheit, auf die sich die oben genannten Werte beziehen, z.B. 100 g)
- default ist “Portion”
- EAN
- die Angaben der Lebensmittel müssen erweiterbar sein (für den späteren Gebrauch, z.B. Angaben über Vitamingehalt → evtl. sogar für Benutzer einstellbar?)
Rezepte
- Benutzer kann Rezepte (“recipes”) eingeben und speichern
- ein recipe besteht aus
- einem Namen
- >1 Zutaten, die wiederum Lebensmitteln entsprechen (“food”)
- UNKLAR: Was passiert, wenn ein food eingegeben wird, das bisher noch nicht als food gespeichert wurde?
- gewichteter Mittelwert aller Nährstoffangaben
- Bezugseinheit
- wie bei food. Wenn eine gemeinsame Einheit gefunden wird, dann wird auf diese Einheit Bezug genommen. Ist keine gemeinsame Einheit vorhanden, wird ein default “Portion” verlangt (“das Rezept ist für 4 Portionen”)
Tagebuch
- die App hat ein Tagebuch
- das Tagebuch besteht aus Einträgen (“entries”)
- ein Entry besteht >=1 Mahlzeiten (“meals”)
- ein meal besteht aus einem food oder eine Portion eines Rezepts
- NEU und UNKLAR ein Eintrag 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
- 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
- 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
Statistiken
Benutzerdaten
- Benutzerdaten sind Daten, die für einen Benutzer individuell angelegt werden und diesen beschreiben
- Bestandteil der Benutzerdaten sind
- Angaben über Zielwerte der Nährstoffe (kcal, Protein,…)
requirements/informelle_anforderungen.1377763621.txt.gz · Last modified: 2013/08/29 10:07 by martin
