What is a web application architecture?
A web application architecture is a layout that displays the interactions between different software components, such as frontend, and backend.
- It is the skeleton: a high-level structure that outlines how different software components are organized and interact.
What is a 1-Tier web application architecture?
1-Tier Architecture: all the software components are available on the same machine
REFER TO SLIDES FOR DIAGRAMS
What is 2-Tier web application?
2-Tier Architecture: The client sends the request to the server and the server processes the request and sends the response back to the client
REFER TO SLIDES FOR DIAGRAMS
What is 3-Tier web application architecture?
What is a serverless architecture?
Similar to other architecture, comes from client or mobile, AWS API gateway will handle these requests, we then use the appropriate lamda function (based on the business logic) based the will go to the AWS DynamoDB table, which request IAM (provide different access), and then uses cloudwatch to analyse customer behaviour and manage usage.
REFER TO SLIDES FOR DIAGRAMS
What is Complex web application architecture?
We can add more layers to the 3-tier architecture:
- Presentation Layer.
- Application Layer.
- Database Layer.
- More layers of services: serve specific tasks or provide additional functionality to the web application.
○ Examples: Caching service, and datawarehouse.
§ Caching service: is used to store frequently accessed data, where the application logic queries the caching service upon user request.
§ Data warehouse: used for data analysis ie analyse customer behaviour
What is Web application design pattern?
What is an example of a popular design pattern?
Model—View—Controller (MVC):
- Model: Maintains the application’s data. It interacts with the database to retrieve, update, and store data.
- View: Provides templates for presenting the data to the user. It handles the layout and visual presentation of the data.
- Controller: Acts as an intermediary between the Model and the View. It processes user inputs, makes calls to the Model to retrieve data, and then selects the appropriate View to display the data. The Controller manages the flow of data and controls the application logic.
REFER TO SLIDES FOR DIAGRAM AND STEPS
What is Django - Example of MVC?
Django is an open-source web application framework written in Python.
- Django customizes the MVC design pattern.
REFER TO SLIDES FOR EXAMPLE
Steps to creating a web based application
REFER TO SLIDES