Where the product needs to be flexible, where is the balance between configurable and easy to implement.

Editor’s note: This article is from WeChat public account “SaaS product said”, author Li Donglin , authorized to reprint.

B-side products are different for companies. Products need to be flexible enough to support the needs of different companies. This requires a configuration center to support the business needs of different companies. Generally speaking, the product can support the configuration part including interface layout, field name, verification logic, calculation rules, approval flow configuration, role configuration, role function permission configuration, user configuration, user data permission configuration and so on.

A part of the configuration function is mainly used by the product supplier for the implementation of the customer. Some of the configuration functions are available to the customer. When designing the product, what kind of configuration function should be planned? Open to the customer, what kind of configuration function is used by the supplier, in principle, in order to avoid the complexity of the customer, try to open the minimum scope of configuration functions to the customer to use it (usually the customer is rarely used, The configuration changes are also relatively low frequency). In general, the product vendor’s configuration of customer functions mainly includes the following:

1: Different companies need different functions. They need to be configured at the company level. The functions that need to be configured at the company level are mainly for two purposes:

  • The company doesn’t use certain features. To ensure the simplicity of the version, check out the features that customers don’t need.

  • Based on different charging methods, some features require additional charges.

2: Different companies need to see different content when using the same function. This configuration may include interface layout, field display name, field display, and so on.

3: When different companies use the same function, the verification logic and the calculation logic of the backend are inconsistent when the operation is saved. It needs to be configured. There are two cases, and different corresponding strategies can be adopted: /p>

  • If different calculation logic can be abstracted into several categories, it is easy to configure the selection after abstracting the categories.

  • If the logic is calculated, the logic of different companies is very different. It is basically difficult to abstract out a limited number of classes. At this time, it is better to adopt a formula that supports formula configuration. Of course, formula configurationThere is also a lot of knowledge in the design, the principle is to be as simple and easy to use as possible.

4: Import and export templates, different companies may import different data file formats, and the output report format is different.

5: For some process-driven functions, different companies may have different processes and can be configured at the company level.

6: In addition, there are some common settings, such as page style, password expiration rules, backup rules, and so on.

The above are all based on the company’s configuration, which is generally the modification of the product company’s implementation staff based on the customer’s situation when they go online. In order to save the workload, you can consider setting one or more bases. The library version can be easily adjusted on the basis of the base library.

The company-based product configuration is generally implemented by the supplier company, and some of the configured functions are open to the customer to configure themselves. This part of the configuration is generally not a functional level content, but a customer data level. The content that needs to be configured can be divided into several categories:

1: Role, role permissions, this part if the business can standardize the role and standardize it as much as possible, if not, you need to allow configuration.

2: User corresponding role, user data permission.

3: Some data dictionaries related to customer business.

This part of the configuration is generally used by the implementation staff to help the customer to initialize the configuration when going online. If there is any adjustment in the future, the customer can configure it or seek product support.

About the design of the product configuration module generally needs to grasp the following principles:

1: Grasp the flexibility

Understanding the degree of product flexibility is one of the highest techniques for B-end product design. Only comprehensive business development, product development, technology implementation and expansion, and multiple factors of the team’s situation can find the best path. Some people may say, consider so much, I am going to do the most flexible version directly, all can be configured, everything can be personalized is not good, this idea has the following problems:

  • Product features, pages, calculation logic, reports, import and export templates, etc. can be configured, resulting in a particularly large implementation workload, high cost, and long product launch cycles.

  • When the product is very flexible, it will sacrifice ease of use to a certain extent. When your product is very flexible, it can be compatible with different