The system’s architecture aligns functionality with technological infrastructure, orients the development and forms a solid basis for the evaluation of the final solution. The architecture model is structured based on the Three-Tier Architecture. Different layers, providing the desired degree of independence both on a physical and logical scale, represent its schema. The multitier architecture enables future platform’s extensions as it is characterized by a high degree of flexibility. It further allows the adoption of solutions of distributed and/or parallel logic, mainly in terms of data management and transfer.
The layers are:
- the Presentation layer corresponding to the front-end
- the Content Rendering module, which functionally lies between the Presentation and Application layer
- the Application layer with the platform’s business logic and
- the Persistence layer that comprises the back-end system.
- Sending HTTP requests from the Apache server to the Presentation layer, matching them to the CRUD functions, determining the actions need to be taken for the resources by PHP calls and modelling them by the Application layer and, finally, the actions analysis and their execution or storage in SQL structures (in case of users inputs) from the Persistence layer.
- The response of the MySQL in a JSON format, its analysis by the RESTful service (Application layer) and its transfer to the front-end infrastructure (Presentation Layer).
- The log in of an authorized user with his/her credentials (username and password), their correspondence with the CRUD function POST/login, the data authentication, the authentication token retrieval from MySQL and its return to the user for access approval.
All of these procedures are enabled at runtime by the Linux operating system. The platform’s technologies are based on the LAMP web stack, named as an acronym of the names of Linux, Apache, MySQL and PHP. The order of execution and the role they undertake indicate how they interact and consolidate in the overall system. LAMP is the oldest and most well-known stack model and it excels in safety, stability and flexibility regarding of all the aforementioned processes.