Day 16 - Mental Models for Saas products
Mental models for how Saas companies structure their products, from databases, backend, and frontend.
Yesterday I mentioned that I'd like to take a step back from different technologies and details and look at the big picture of digital and SAAS products.
The benefit of having a mental model for us Product Managers is countless, in the next section, let's get deeper into it.
Importance of Mental Models
Mental models are frameworks that help us understand and make sense of the world around us. They are simplified representations of complex systems, e.g. how Uber, HelloFresh, Miro, or Amplitude work in high levels.
They allow us to process information more efficiently and make better decisions. Mental models are essential for problem-solving and decision-making because they help us to break down complex issues into smaller, more manageable pieces and to identify patterns and relationships. Two tasks that Product Managers do constantly.
Using mental models can help us to:
Understand and analyze complex systems
Make informed decisions
Identify cause-and-effect relationships
Predict outcomes
Solve problems effectively
Mental models are not always accurate, and it is important to constantly update and revise them based on new information and experiences. However, they can be a valuable tool for understanding and navigating the complex systems we are dealing with.
Different categories of Saas products
There are many different ways Saas companies and online service providers (who might not be necessarily Sass with a subscription fee) provide value to their end customers.
In this post, we will cover 3 common and simple methods, at a high level.
Notes to keep in mind:
We are covering technical setup for the value delivery done by the product. The company might have other products and services that are valuable for the company, but that's for another post to cover. Such products and services can be Physical products, Access to the customer base, initial training, support, and consultants, ...
Last disclaimer, the world of IT and technical setup are quite complex, and I didn't find any other post around these mental models. These are only simplifications and there are many more innovative ways or even a mixture of the base models in the real world. Ping me if you have seen such categorization or have an idea about new models that I haven't covered.
The three mental models we'll cover are:
Simple Saas model
Simple Mobile application
Simple Data Provider Company.
Okay, enough with the intro, and let's get into it! 😎
1. Simple Saas model
Database, Backend, and Frontend.
In this common setup, the application consists of the following main pieces:
Frontend
Backend
Database
A way for Frontend to talk to the Backend
And that's it, almost.
As you can see, even this simple mental model, can help us understand what we mean by different frontend frameworks (as in Day 14) or where API is used.
General comments about this setup:
The end user can be divided into several groups which are ignored in this simplification. An example can be Amazon, where the "DB-Backend-Frontend" for Sellers and Buyers can be quite different (even though they share a lot of resources).
The communication between Frontend and Backend doesn't necessarily need to be API, but it's chosen here because of its simplicity, and popularity. Other technologies such as GRPC and GraphQL can be used to connect different pieces.
We wrap the Database as generally as possible. Most of the time, the company's value is created by having proprietary data which is either produced by its other software or gathered from other producers. We'll dive into the Data side of things more in the future.
💡Note: Even though I haven't posted anything on GRPC, or GraphQL, but as soon as you know what they are used for, i.e. the communication between two different pieces of software, you are well ahead of many other Product Managers and "business" stakeholders. So kudos to arriving to this point! 🥳
2. Mobile application model
Database, Backend, <a way to communicate with the app> and the Mobile app.
The second common model is of course model for Mobile applications. Even though it's very simple and looks quite the same as a normal web-based Saas company, due to the increase in popularity and impact, I believe it needs its section.
On popularity, first time in 2017 the traffic from Mobile devices passed the traffic from other devices, such as desktops and tablets, according to Statista.
The technologies for building Mobile apps were quite different from those for Web App development. Namely "Native apps" is the term used for developing platform-specific apps. With the introduction of cross-platform frameworks such as React Native, Flutter, and Cordova,... this gap is getting smaller but still, there is quite a difference.
Mobile has its strengths and weaknesses. On one side, mobile devices provide new capabilities that are not available in most desktops, such as GPS, easy access to Cameras, touch screens, ..., but on the other hand, screen size and stable connectivity might be a challenge in developing mobile apps.
3. Data providers
Databases, Backend, and APIs.
The last mental model for today is the Data provider model.
In the first model, I mentioned that the Database side might be more complicated than just the "database". One example is when the main data is provided by a 3rd party company.
An example of this setup can be Trading apps, where the Price for Stocks and Bonds are provided by Market Data Providers, and the "app" is only an interface to show the data nicely.
If you are working on a Data provider or API products, your end product is not a Web-based app or a mobile app, but it's the data and the APIs (plus its documentation, authentication, and authorization) that are your product.
Note that your customer can be an internal team too.
A popular example of API companies is Stripe and Open Weather App.
And that's a wrap for today.
What do you think about these mental models? What are your favorite models that helped you a lot in your life and career so far?
As always, you can check the slides for this post over here.