Seven Q&As for Developers: What Is Productization
Recently, I participated in a discussion on how to implement productization, which was organized by the Intelligence Department of the Alibaba Group. Every attendee had different opinions on the definition and procedure of productization. Productization is a complex topic that can be discussed further. I’d like to talk about it from the perspective of a developer. In the following section, it is explained in question and answer format:
Question 1: When we talk about productization, are we thinking of the same concept?
To better understand this question, I first need to explain the definitions of “a system,” “a product,” and “a commodity.”
“Commodities are labor products used for exchange.” This is the general definition of the word commodity from an encyclopedia. However, this definition has no significance in this article. Instead, I will give definitions that are closer to our daily work context.
- The definition of a system: a collection of features composed of various discrete features.
- The definition of a product: a collection of reusable features that are valuable in use and well-encapsulated.
- The definition of a commodity: a collection of reusable features that are valuable for use and well-encapsulated for transaction purposes.
For example, I can make a timing system with various parts that can tell time. This system might be useful if I gave it to my friends. However, if I put it on the market, there might be dozens of complaints about this timing system, such as “too ugly and complicated to use.”
Then, I can work hard to update it by adding a good-looking dial and a watch strap, encapsulating it into a beautiful, easy-to-use product. Now the timing system looks much more professional. When I put it on the market again, interested customers will ask how much it costs.
Then, I can set a price for this product, and it becomes a commodity.
From a timing system to a commodity, my example shows that a system can be transformed into a product, and a product can also be transformed into a commodity.
The procedure for transforming a system into a product is productization. The procedure for transforming a product into a commodity is commercialization. From a system to a product to a commodity, it is a procedure for gradually reducing the complexity and gradually improving user experience.
Question 2: As a developer, is the thing I work on daily a product?
Most of the internal development teams of organizations are developing a form between a system and a product. Almost none of the applications we have on hand can be called a product.
If an application can only be used by one client in a specific scenario, it is only a system rather than a product.
A product needs to be quickly replicated to serve multiple clients. For example, several systems, such as legal, procurement, HRM, and finance, are used as applications for internal operations of Alibaba Group. They can be understood as collections of business capabilities, and generally, they can support internal operations. However, if you put these systems on the external market and provide them to customers, they might not necessarily be competitive.
Not to mention that these systems are coupled with a lot of special logic within our group, relying on internal components. A slight change to them may impact the whole. It is difficult to replicate an internal system for another company to use directly. Hence, to turn internal systems into real “products,” we have begun to transform them for productization.
For example, the collaboration management platform, Aone, used internally in Alibaba Group is a user-friendly system, but it is not a mature, and replicable product. Therefore, Aone has undergone a product transformation, and its cloud version “Apsara DevOps” appeared.
Another example is the High-Speed Service Framework (HSF), which is an excellent technical middleware that is widely used within Alibaba Group. However, it has to be encapsulated into the Enterprise Distributed Application Service (EDAS) products through productization before being sold on the cloud.
Question 3: What kind of team needs productization?
There are several conditions to consider. For example, you have been developing systems for several years and have accumulated many valuable business capabilities; you are also competitive in the industry and confident that in addition to the existing users, you are willing and able to serve more clients. Under these circumstances, you need to think about the productization.
For another example, Product X was originally an office collaboration system used within the company, and now it is open to the market. Productization is needed.
Question 4: The development team hopes to productize maintained systems. What should they do?
Systems, such as BUC, SSO, ACL, and VDS, that I’m responsible for maintaining are all widely used in Alibaba Group.
Recently, we have been productizing these systems and encapsulating them into a product called Mozi. In the past two years, this product has served more than 200 businesses of over 20 BUs in the Alibaba economic ecosystem. In the field of digital government, the value of Mozi has been proven in multiple business areas.
From our productization experience, if you already have a system on hand and you want to productize it, the productization procedure can be roughly divided into the following steps:
- Accumulation and construction of product capabilities
- Quick replication at low-cost
- User experience optimization
Accumulation and construction of product capabilities
It is relatively easy to understand. We need to enhance the products’ use-value, which is measured by clients. Comparing with competing products in the industry, you need to improve your product as needed and consolidate its advantages. It is a continuous improvement process.
Quick replication at low cost
The product must have the ability to quickly serve more than one client. There are two types of clients’ usage, the SaaS mode, and the proprietary delivery mode. If the SaaS mode is adopted, it must be able to support multitenancy. If proprietary delivery mode is adopted, reducing the cost of product delivery as much as possible is needed, including the number of servers to be occupied and the dependent third-party software.
In this case, you need to remove unnecessary features and provide the minimum module feature set. Allowing clients to customize the feature set and only pay for the features used is preferred.
User experience optimization
In this era, a good user interaction design is needed; as the saying goes, “Don’t make me think.” We need to continuously optimize the visual effect, interaction, and user experience.
Question 5: How much investment is needed for productization?
Productization is a procedure of continuous improvement and infinitely approaching perfection rather than a one-off change; as the saying goes, “Rome was not built in a day.”
Here is an example to explain my opinions. One technical department has made “work order system A” for the customer service representatives to use within the company. Although its UI is ugly and it has a lot of bugs, it is the only system available for use. Therefore, the customer service representatives have to use it, despite disliking it.
Another technical department has also made “work order system B,” which is deeply polished in terms of product quality and user experience. After the launch, it continued receiving positive comments and attracting new users. Many customer service representatives have abandoned the former.
From the users’ perspectives, the value of work order system B is higher than work order system A.
In other words, work order system B has a relatively high degree of productization. Hence, system B is more like a product than system A. As shown in the following figure, system B is more mature than system A in terms of productization.
However, nothing is perfect and the victory is not eternal. How long system B can retain its advantages is the question. Perhaps a third “system C” with higher productization maturity will appear soon. To stay competitive, all products have to continuously update their features and user experience.
Question 6: What is the recommended path for productization?
A complete productization path is not only a matter of the development department, but it is a large project that involves different departments, such as PD, UED, operation, development, delivery, and commerce.
I have also sorted out a general path of productization starting from scratch, but it may be adjusted as needed in the future.
- Define clients and users and summarize the user persona.
- Define the pain points of customer needs and the main problems to be resolved with products.
- Define the core features and the economic moat of the product to prevent failures in competition.
- Identify the value and market positioning.
- Build product capacity to be client-oriented.
- Build configuration capacity to be delivery-oriented.
- Build development tools to be development-oriented (the lifecycle management for plug-ins and applets.)
- Reduce costs and quicken replications.
- Optimize user experience.
- Define business and profit patterns (optional.)
- Define the charging plan (optional.)
- Build benchmark applications (applicable to platform products, if appropriate.)
- Establish standards jointly with industry leaders (for head players, such as Office.)
Question 7: The ultimate question is: how do we make an excellent Internet product?
Since this is the ultimate question, there is no standard answer. Let’s discuss this further in the comments.