Technical Fundamentals for Product Managers [2/3]
Follow TechnoManager for more such Product Questions
In part_1 of the Technical fundamentals, we have understood about apps and databases. In this part 2 of this article, we will be looking into application architecture and architecture views.
There are broadly four types of application architecture.
In a client-server architecture, we have two parties; one is the client, and another is the server. The server provides services to multiple clients components, and the client components request services provided by the server. The server continues to listen for any request from the client component. For example, Email service
In an N-tier architecture, different layers are abstract to provide unique functionality. Each layer has some programs written and which do a specific subtask. The output of one layer goes into another layer as an input.
The most common layers in the N-tier architecture are following:
- Presentation Layer: The is the topmost layer that provides the UI functionality.
- Application Layer: This is the service layer that provides a specific service.
- Business Logic Layer: This is the business layer in which the underlying code for any service is written.
- Data Access Layer: The data access layer is closely linked to the core data or database.
In Microservice architecture, your application is composed of loosely coupled services that provide specific functionality. These Microservices talk to other services using API. The advantage of Microservice architecture is that they can be developed independently. If there are bugs or issues, they can be tracked and solved without touching the overall application as such.
As the name suggests, this architecture is composed of 3 parts Model, View and Architecture.
- Model: Model has all the core functionality, data access and business logic written in it.
- View: View is where from which the user sees the information.
- Controller: Controller which handles the input from the user.
4+1 Architectural View Model
4+1 Architectural View Model is used to describe the architecture of software systems. The views are used to describe the architecture from the viewpoint of different stakeholders such as end-users, developers, managers etc.
- Logical View: Logical View is for system architects. This view tells us about the different components, packages, interfaces etc.
- Developmental View: Developmental View is for developers; it tells the developers who build the different functionality. It is subsystem decomposition.
- Process view: Process view is for system architects as well. It is a runtime description, and it tells about the different activity that will take place.
- Physical View: Physical view is for the system engineering team; it depicts how to deploy a particular software or application.
- Use Case View: Use Case view is for the end-users. It is a scenario diagram that tells us about who the application will work.
Connect me on Instagram for frequent articles updates.
For Quantitative Finance Interviews (Puzzles), you can refer amazing articles here at Quantifiers