Architecture Overview - mobileappdevhm/concept-team-6 GitHub Wiki
Overview
I talked with Prof. Socher about the result of the application because accessing Primuss surely is a cumbersome task. She meant that even a simple CVS (Comma separated values) or other table file (Excel) would be enough as output of the application (Lottery for the courses).
Furthermore parsing of the courses in english site on hm.edu is also pretty hard and error prone in case someone edits the layout of the page, even if only slightly). So an import to a database would be preferred. A server is capable of providing an additional web application (Can be ugly, who cares!) where the courses in english department is able to manage available courses and their description and view the result of the lottery (plus export to Excel).
The last part in the architecture is the user application running on smartphones. It is merely using the servers REST API and shows the available courses. Students can select their courses and submit it via the REST API. The rest (lottery) is handled by the server.
Components
Courses in English system is best made of a fixed set of components bound to each other, the following gives a quick overview over the components.
Server
The core component of the Courses in English app is the server which provides a REST service which all clients can rely on. It manages the underlying database and thus all courses, stundent choices, etc. Additionally the server is able to do time intensive tasks as the lottery - which will choose the courses for each student based on the given priority.
Database
All courses are currently only available over the hm.edu site which is not very intuitive for programmatic access. Thus we have to offer a possibility to import (via Web parser) all courses from there to a database. Additionally all student choices should be stored in the database for them to be retrieved again afterwards or for the lottery. The result of the lottery should also be saved individually in the database.
Web Client (Administration Interface)
In order to manage the content, like courses, etc and the lottery result (Which they have to export for example to Excel or even Primuss in the future).
Mobile Client (User Interface)
The mobile client should be a cross platform (Both Android and iOS) application where the stundents select their wanted courses in english.
Improve this page by adding your opinion below!
<PLEASE FILL ME WITH CONTENT!>
Changelog
Date | Editor | What has been edited? |
---|---|---|
27.03.2018 | Benjamin Eder | Created the page. |