Skip to content

Instantly share code, notes, and snippets.

@dunvi
Created October 16, 2012 07:13
Show Gist options
  • Save dunvi/3897683 to your computer and use it in GitHub Desktop.
Save dunvi/3897683 to your computer and use it in GitHub Desktop.
notes on Floradex architecture

The biggest issue, and one I wanted to bring up before going into a point-by-point discussion, is that the architecture is very unclear about this "wiki" that is repeatedly mentioned in the overview. Is there both a wiki and a separate, secondary database? Or is the SQLite database that is heavily discussed the database underlying the wiki? I felt this was very confusing.

If there is going to be some sort of wiki, what wiki software will be underlying it? Where will it be hosted? Who is allowed to edit it - s that part of the application? Your detailed component analysis only discussed the SQLite database, and said nothing about a wiki; I believe a lot more details are needed here.

And just as a quick heads up, did you choose SQLite because it is provided by the iOS SDK (out of box)? Did you research what other useful resources might be provided by the iOS SDK?

Now just going through the overview in order, some other major points:

  • Regarding your data:
    • Where is your data going to come from?
    • How easy will it be to maintain and add to the plant database? The search function?
    • If users submit error reports (how?), will they be updated in a timely manner?
  • You mention two search functions search.
    • What does "a list of keywords to plug into the keyword of the database" mean?
    • Are you planning to implement the search algorithm yourselves?
    • If not, what resources will you consider to handle the search?
    • You mentioned in "outstanding issues" that you were aware that the search function would need more research as to how the users would use it so I'll leave that part be for now, but I recommend getting that research done sooner than later. You may need to know what categories you need quite early on.
  • As discussed above:
    • I would love to see more clarity on how/if the locally stored database will communicate with any central information stores, and if there is also a wiki, how all of these will interact.
    • Is the application just formatting information from the database and displaying it, or is the database only used to provide a particular wiki page with more information?
    • A diagram would go a long way here.
  • If you are going to have a central server with the information on it:
    • Where/how are you hosting it?
    • Do you know if/when you will need to scale?
    • If your users will be keeping local copies on their devices:
      • How often will the databases sync?
      • Have you considered how much traffic to/from the central server you will need to accommodate?
      • Have you done any predictions on how big this database will be on the user's devices?
  • Finally, for the UI:
    • On the last slide, "Identification" and "My Plants" switched suddenly.
    • I noticed that there was no discussion of potential preferences, even as simple as "There will be none". Some potential preferences may be best built in from the start.
    • And lastly, have you considered how the application will scale between an iPhone and an iPad's larger screen?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment