As you create wireframes or mockups of your app idea, it’s important to spend some time thinking thru the data structure, even if only at a high-level. For instance, if you’re creating an app to help people buy a vehicle, there are certain data “objects” that will be needed for your app to work. The following are some examples of high-level data objects for a vehicle buying site would be:
- Vehicle ==> What vehicle does buyer want?
- Dealer (seller) ==> Who’s selling that vehicle?
- Buyer ==> Who wants to purchase that vehicle?
- Quote ==> How much will it cost?
- Messaging ==> Ability for Buyers and Dealers to ask questions of each other
For each one of these objects, you’ll want to think about the type of info the users will need in order to be successful with a transaction. Below are some “second level” data object items that would be needed.
- Phone Number
As you create the wireframe/mockup, creating a visual of the high-level data structure should be done in parallel because it’ll help you think more holistically about the design (and help prevent any design gaps later on).
Below is what a high-level data structure might look like in this example. You can see the five top level data objects mentioned earlier. You can also see unique identifiers in each of the objects, i.e. “D-ID1” for Dealer 1 ID, “M-ID1” for Message 1 ID, etc. These are here to signify that for each of those data objects, your app will need to create a unique instance in your database for each Dealer, Vehicle, Message, etc. This is important information when the actual implementation of the design occurs.
The data structure below also shows which data objects are “connected” to each other, meaning how the software needs to pass data to/from each of the objects. Again, critical design information for implementation.
With this simple diagram, you can start to envision other scenarios with your app, such as the case when there are two buyers looking to buy the same vehicle from the same dealer. You’ll need to make sure your data structure and the logic of your application can handle those scenarios. If you need any help with creating a data structure or app development in general, please contact me.