UC3M

Telematic/Audiovisual Syst./Communication Syst. Engineering

Systems Architecture

September 2017 - January 2018

10.11.  Activities

10.11.1.  Applying Data Modeling to the Project

Resources

Work Plan

In this activity, you must apply the acquired knowledge on the specific case of the project that you have to solve in group teams. In order to do it, you must meet your group and argue about the following questions in order to apply it pratically on the project, and perform the properly changes or/and reflections over the decissions taken until this moment in the project regarding the data modeling:

  1. Should the stored information be persistent or non-persistent during different program executions? Which should be persistent and which not?

  2. How many different tables or items will there be within the application? Enumerate them

  3. What are the necessary information fields for each one of the selected items? What are the data types of these information fields?

  4. Are there any relationships among the different represented items or tables? If such relationships exist, Which are the table fields implied in these relationships?

  5. Is there any information that is not available in the tables because such information cannot be instanciated several times but it is well delimited with only one instance?

  6. Is it necessary to process some information from the tables in order to obtain another processed information? Is it interesting to store directly such processed information, instead of calculating and processing it each time that is required?

  7. What data structures can be used to store each one of the defined data? Which are the best data structures in order to implement the project? Give the properly reasons and justify the decissions taken.

  8. For storing the data in a file. How many different ways of storing the information can you think? How can you distinghish the different items that are stored in a file? How can you separate and delimitate them? Taking into account the different operations to implement on the main menu, What advantages and disadvantages can you think for each one of the modes to store the information? Which of your identified options to store the information is what you consider the best one?

  9. What will be the functions in charge of manipulating the data?

  10. How would you design your data module (definition of data structures and functions that manipulate data) in order to be independent from other modules, in a way that there will be a clear separation of the data module from the aplication control logic and the presentation interface, being in this way reusable for other possible applications and mantainable for future changes of the application?