After we have successfully assembled a product structure, the next step is to make the information flow in the product, and then we need to connect different modules and functions.
This is the fourth layer of product construction: the connection layer.
A software product is a dynamic system with constant flow of information, and the job of the connection layer is to make the information flow in an orderly manner among various modules.
1. How to transmit information
The information passed between modules consists of the following parts: direction, sequence and data.
1. Direction of connection
The time sequence in which the scenes occur is the direction of the connection, time is irreversible, and a scene that occurs in the future cannot appear in the past.
Similarly, the functions and use cases corresponding to the scenarios need to be strictly arranged in chronological order, and the direction must be continuously forward along the time.
2. Sequence of connections
When connecting modules, it is necessary to connect according to the continuity of the corresponding scenes of the modules. Two inconsistent scenes cannot be connected together; the same as the sequence of connection according to the usage scenarios, the functions triggered later cannot be placed in the front. .
When determining the order of connections, in addition to judging according to the coherence of the corresponding scene, it can also judge according to the pre-conditions and post-conditions of modules and functions; modules that meet the pre-conditions should be arranged in the front, and the post-conditions affect The modules need to be arranged after.
3. Data
The purpose of connection is to make information flow in an orderly manner, and the essence of information is data, and the essence of connection is data transmission.
In object-oriented thinking, everything can be an object, so we also regard data as an object. What information does this object have in the process of transmission?
The state of the object: whether these objects are in a normal state, a special state, or an exception, we need to determine the next connection direction of the object according to the state of the object.
Attribute value of an object: The attribute of an object is the characteristic value of an object. For example, if I want to pass product information, then its attributes include name, category, price, purchase quantity, etc. These attribute values ​​will be used as the important value of the next step. in accordance with.
2. The main points of connection
Three elements of country email list connectivity: simplicity, efficiency, and fault tolerance.
Simple: The connection steps must be simple enough, and the shortest path between two points needs to be found; after all, everyone is so busy, the sooner one can finish a thing, the better.
Efficiency: The transmission of information must be efficient enough, and the requirement for information is that the data is accurate and complete; avoid the trouble of repeating subsequent values.
Good fault tolerance: Any system will have various accidents, and it is necessary to make a perfect processing path for possible accidents when designing the system.
Three, the classification of connections
According to the characteristics of the connection, the connection can be divided into: basic flow, alternative flow and abnormal flow.
Elementary Streams: Elementary streams are ideally the flow of information. It is also the best path to reach the destination.
Alternative flow: After all, things are unpredictable, and people will not always follow the optimal path you expected. After that, you need to preset enough non-optimal paths that can still reach the end point to let people reach the end point.
Abnormal flow: What if there is a moth in the middle of the road? At this time, we need to consider the possibility of enough moths to appear, and set up a way back, so that users can go back to the right way again through this path.
The planning of alternative flow and abnormal flow still uses the coup of decomposition layer: infinite exhaustion. The principle is still independent and non-repetitive, completely exhaustive.