robbiedhickey / samwise.io

Apache License 2.0
0 stars 1 forks source link

Create document outlining possible modules #2

Open BeneventoFrank opened 9 years ago

BeneventoFrank commented 9 years ago

Modules

image

Everything should be accessible from the website as well as the mobile interface.

robbiedhickey commented 9 years ago

Love the detail here. We needed some fleshed out use cases to really assess a data model. I'd like to approach this with the existing proposal in mind (Collections -> Items -> Events) and see if it makes sense in that context. If it doesn't then we can go back to the drawing board.

From what you've outlined, a Collection/Item/Event will definitely need to have a type. Not sure what level it should live at yet.

Collection/Item/Event Types

  1. Tracking - this is the general purpose value/date that was discussed in #3.
  2. Location
    • Additional fields: coordinates, photos, comments, rating
  3. Task
    • Additional fields: assigned-to, due date, reminder, completion, comments
  4. Exercise
    • Additional fields: reps, sets, weight, duration
  5. Nutrition
    • Additional fields: calories, protein, fat, carbohydrates, meal, servings
  6. Financial
    • Additional fields: amount, contact, due date, reminder, account

Financial is the only one where I could see us having trouble shoe-horning it into the existing model. This may be fine, because the types of reporting and input on financial data are generally going to be very different and more specific then what we are trying to curate with general tracking data.

Follow up questions

Can you think of any other higher-level categories/types that we would need to take into consideration? It seems like those 6 would cover most of our use cases.

At what level should the Type live? I'm leaning towards having it at the Collection, because based on the use cases we've discussed the Collection should basically define what type of data the user is wanting to track. Having it at the Event would require the user to select a type every time they input data and that would be cumbersome. Having it at the 'Item' level means that a Collection could have N types of data and would make reporting difficult.

Do you think the financial data you are wanting to track fits this hierarchical event model?