-
Notifications
You must be signed in to change notification settings - Fork 3
Architecture Model
There are three main parts of the system – each for a different user group.
- Students – a group that will use the system to improve their academic performance and attend lessons.
- Tutors – a group that will teach a wide variety of courses.
- System Managers – a group that will supervise the operation of the system.
Our group implements the Tutors' viewpoint.
- Mobile Application
- Web Application
To be implemented as a part of deliverable 4.
Graphical User Interface Represents all options that the tutor has Tutor Business Methods:
Tutors should be able to create an account with a username, a private password and an email to receive student notifications. To update their account information, session availabilities and reviews, tutors should be able to log-in to the application with the credentials created during sign up.
The tutor must submit an application to the company manager indicating which subject(s) they would like to teach. The tutor is not limited to one application; however, they must fill one application per subject matter. The tutor provides their availability for any time period (weekly, monthly or yearly) in order to be paired with a student once the tutor’s application is verified. A tutor can modify their availabilities.
Tutors have the possibility to review their students and view students reviews. Tutors are also allowed to review the system's performance. In order to improve the quality of teaching, tutors should be able to review their students- reviews can be anonymous if wanted. Reviews can also be anonymous. In both cases, writing the review is optional.
In order to be informed when a student makes a tutoring request, the tutor should receive a notification of the request including, but not limited to, an email notification. They should have the ability to view the request using their login on the website including the date, time, student’s name, subject matter, and the student’s school. Once a student has requested a tutoring session, the tutor should be able to view the requester’s reviews from other tutors and the student’s session history. Once a tutoring session has been requested, the tutor should have the ability to accept or decline the tutoring session.
The tutors decide how much they want to charge per hour for teaching each subject matter and they submit that information in a form on the website. These hourly rates are then added with the commission rate set by the company and finally made available to be viewed in the website by the users (students, manager, other tutors etc.) as the tutor’s hourly rate. The tutor is made aware of the commission rate through the form.
The requests made in the Web Application prompt RESTful API method calls which are sent to the Backend component of the system.
Persists objects that were created and remain in the system throughout the working time of the system. Data is managed by the Service Controller.
Sends queries to the Service Controller. Calls to POST and GET the data have been implemented here. It uses the model to manage entities.
Controller - contains the implemented business methods that create, read, update and delete the data in the database. It answers the queries called in the frontend which were sent to the REST API controller. Service Controller processes them and makes changes according to the received query. Service controller interacts with the data by reading the existing data and returning it to the frontend, or by taking the data from the fronted and persisting it in the database. It uses the model to manage entities.
Implementation of methods to manage the objects of each entity. Used by the Service Controller and API controller.