This project is part of the System Design Project for the Web Applications course (2023/2024). The objective is to develop a comprehensive blueprint for a mobile application, covering both the front-end and back-end architectures. The project emphasizes architectural issues and includes systems architecture, software architecture, and application architecture.
- Develop a blueprint for a mobile application that includes all necessary architectural decisions.
- Adopt a microservices architecture for the back-end.
- Adopt a micro-frontend architecture for the front-end.
- Implement a single-page application approach.
- Utilize an everything-as-a-service approach to maximize modularity and reusability.
-
Systems Architecture:
- Definition of the overall structure and high-level components of the system.
- Identification of external dependencies and interactions.
-
Software Architecture:
- Detailed design of the microservices architecture for the back-end.
- Detailed design of the micro-frontend architecture for the front-end.
- Specification of communication protocols and data exchange formats.
-
Application Architecture:
- Blueprint for the single-page application.
- Considerations for user interface and user experience design.
- Integration of the front-end and back-end components.
-
Back-end:
- Microservices architecture ensuring modularity, scalability, and maintainability.
- Services designed to handle specific business functionalities.
- Use of APIs to facilitate communication between services.
-
Front-end:
- Micro-frontend architecture allowing independent development and deployment of front-end components.
- Single-page application (SPA) design for a seamless user experience.
- Utilization of modern front-end frameworks and libraries.