Data Structures
The final step of your project will be to propose data structures for your app.
In software development, we often group related pieces of data into entities called objects. Below is a diagram of the objects that might be required for the homework submission app example that was introduced earlier.

Some things to notice:
-
This app would have four types of objects:
Teacher,Student,AssignmentandSubmission. -
Each object has a set of attributes, representing the specific pieces of data stored by the object. For example, an assignment needs to have a due date attribute.
-
An asterisk on this diagram signfies that the attribute is a list of zero or more items. For example, a submission may include zero or more comments
-
Some attributes are references to other objects, signified by arrows on the diagram. For example, every teacher has a list of student objects.
This type of diagram is a simplied version of what's know as a UML Diagram (stands for Universal Modelling Langauge Diagram) in software engineering.
Your Task
Start by considering what object type your app would need, and what attributes they'd need. Jot you ideas in a bit of a rough copy, then see if you can structure it in a diagram similar to the example.