Photo by Marvin Meyer on Unsplash

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.

Application Architecture

Client-Server Architecture:

Client-Server 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

N-tier Architecture:

N-Tier Architecure

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:

  1. Presentation Layer: The is the topmost layer that provides the UI functionality.
  2. Application Layer: This is the service layer that provides a specific service.
  3. Business Logic Layer: This is the business layer in which the underlying code for any service is written.
  4. Data Access Layer: The data access layer is closely linked to the core data or database.

Microservices Architecture:

Microservice Architecure

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.

Model-View-Controller Architecture:

MVC Architecture

As the name suggests, this architecture is composed of 3 parts Model, View and Architecture.

  1. Model: Model has all the core functionality, data access and business logic written in it.
  2. View: View is where from which the user sees the information.
  3. Controller: Controller which handles the input from the user.

4+1 Architectural View Model

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.

  1. Logical View: Logical View is for system architects. This view tells us about the different components, packages, interfaces etc.
  2. Developmental View: Developmental View is for developers; it tells the developers who build the different functionality. It is subsystem decomposition.
  3. 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.
  4. Physical View: Physical view is for the system engineering team; it depicts how to deploy a particular software or application.
  5. 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.

Hey if you like my content on Medium or TechnoManager and find it resourceful, you can Buy me a Book to show your support and hit that clap button.

Connect me on Instagram for frequent articles updates.

For Quantitative Finance Interviews (Puzzles), you can refer amazing articles here at Quantifiers

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store