Skip to content

Latest commit

 

History

History
37 lines (22 loc) · 1.95 KB

ArchitectureAndDesign.md

File metadata and controls

37 lines (22 loc) · 1.95 KB

Architecture and Design

This file incorporates a short description of the app's architecture. The main component of our program is the mobile application. It is hosted on the user's phone and connects to the website. Data about the events is stored locally. The app is organized according to the Model-View-Controller pattern.

Logical architecture

Uniteca is the main component of the application. It contains all the MVC components:

  • The View (Occupation UI, Profile UI and Rooms UI) uses the data from the model and controller to display it to the user, through the Flutter interface. It also communicates to the Controller any action the user performs.
  • The Controller (Occupation Logic, Profile Logic and Booking Logic) is responsible for fetching the data from the website and saving it to the database. It is also the brain of the program since the information from View is processed here.
  • The Model (Occupation database, Student's database) holds and organizes all the program's data, including booked rooms, profile information and occupation values.

component diagram

Physical architecture

The physical architecture of the application is composed by:

  • Smarthphone (both in Android and IOS)
  • Sigarra's website
  • Library's website

The chosen mobile framework to develop the UI was Flutter. For the logical section and database management we are using Dart and SqlLite respectively.

physical_diagram

Vertical prototype

Before any proper work was done, we started by forking the Uni repository and getting familiarized with the codebase. To do that we developed a simple page on the app that would display our names.

This implementation can be found here.