当前位置:网站首页>Alchemy (3): how to do a good job in interfacing a business process
Alchemy (3): how to do a good job in interfacing a business process
2022-06-28 00:18:00 【Phantom grey Dragon】
Suppose a complete project , Contains 6 Different 【 End 】:PC client 、 Mobile 、 Official website 、 Payment page 、 Activity page 、 And the back end 、 And the development of the underlying core functional components .
Suppose there is 5 Individuals are responsible for 5 individual 【 Have a face 】 Of 【 End 】:PC client 、 Mobile 、 Official website 、 Payment page 、 Activity page ; hypothesis 1 The individual is responsible for developing the backend , How many people actually don't know , this 1 An individual is a representative ; hypothesis 2 The individual is responsible for developing the underlying core functional components , How many people actually don't know , this 2 An individual is a representative ; hypothesis 1 Follow up tests .
Suppose the product , Ready to MVP Functional analysis and design , Write the design documents of each end . Product at this time 【 You can't 】 Directly send the document to the person in charge of each end , Just waiting for people at each end to do development . What needs to be done at this time 【 Demand confirmation 】: With the person in charge of each end 【 formal 】 Open a discussion ,【 Item by item 】 Check the design , Confirm each other's requirements for this end for the first time 【 Consensus 】. If 【 No, 】 This is a necessary discussion , Design only exists in the mind of the product itself . Others may just look at the rough and start writing code , So as to stay at the beginning and 1 Version requirements do not match .
In development , Different ends will start to implement without relying on the functions of other ends , When it comes to interfaces that need to be connected with other terminals . You must stop your work ,【 first 】 do 【 Interface confirmation 】: Find the person in charge of other end to confirm the interface design of a business model , At this time, you should not only consider the relationship between the two ends , But should be able to consider from the overall framework , Interfaces between multiple ends , There should be a sequence diagram , This sequence diagram shows a complete business process :
- From which portals do you start business , Suppose that A End , Called entry startXXX.
- Consider the complete interface call from the entry 【 closed loop 】:
- Which interfaces depend on the other end , For example, back-end calls 1 Or N Interface .
- What events on other ends are monitored , For example, monitoring the backend 1 Or N Events .
- Whether the process jumps to other end , For example, display a QR code , Scan the code and jump to the web page , What did you do on the web page , For example, the back-end interface is called , The back-end interface triggers an event to A End .
After this discussion , Each end confirms that its own logic is 1 In a business process 【 Location 】 And function , At the same time, have a clear understanding of the overall situation of the process .
After understanding this business process , A consensus has been reached , But not enough . On the frame , These scattered process points , Should be encapsulated in a common component , Each end depends on the interfaces and events of this common component . Suppose the component is C, that :
- C A set of 【 Entrance to meet different needs 】 Interface , In order to meet the needs of different scenario entry calls at different ends .
- C A standard set of events should be provided , Different entrances should trigger follow-up 【 Consistent flow of events 】. Make the event flow concerned by each end for the same business consistent .
- C The details should be hidden inside , Do it internally 【 A complete state machine 】, And complete error handling 、 timeout handler 、 Retry mechanism and so on .
For this business process , Take this public component as the entry , Write 【 Based on the command line 】 Of 【 Scenario test 】 Code . Available after basic testing , Before submitting the interface implementation , And notify other end interfaces and components that are available .
In terms of coverage , It should be for each individual interface , Write unit tests for interfaces . Tests and assertions that contain both normal and abnormal data . Can be written by developers , perhaps 【 Division of labor 】 Write for tests that have the ability to write unit test code .
Come here , in the light of 1 Business processes , Form a design that involves multiple ends 、 docking 、 encapsulation 、 The test of 【 closed loop 】, Instead of becoming a person who knows only a little at each end 【 Toy interface docking 】. In multiple iterations , Will continue to adjust this chain , Gradually complete the complete understanding of the chain . The program development environment has been fragmented , Client diversification , The distribution of the back end , The development environment is 【 cracking 】, do 1 Interface design and docking of business processes , There needs to be an overall closed loop , In order to avoid program development “ I don't know the truth , Only the body in this mountain ” problem .
--end--
边栏推荐
- On charsequence
- VirtualBox extended dynamic disk size pit
- MATLB|改进的前推回代法求解低压配电网潮流
- Differences and functions between intranet IP and public IP
- 表单form 和 表单元素(input、select、textarea等)
- [VIM] tutorial, common commands, efficient use of vim editor
- 代码整洁之道--格式
- SCU|通过深度强化学习进行微型游泳机器人的步态切换和目标导航
- Deployment and test of crtmp live video server
- [读书摘要] 学校的英文阅读教学错在哪里?--经验主义和认知科学的PK
猜你喜欢

数仓的字符截取三胞胎:substrb、substr、substring

现代编程语言:zig
![[PCL self study: Segmentation3] PCL based point cloud segmentation: region growth segmentation](/img/9e/f08ce0729c89b0205c0ac47c523ad7.png)
[PCL self study: Segmentation3] PCL based point cloud segmentation: region growth segmentation

Eliminate gaps around El image images
![计数质数[枚举 -> 空间换时间]](/img/11/c52e1dfce8e35307c848d12ccc6454.png)
计数质数[枚举 -> 空间换时间]

认识微信小程序项目的基本组成结构

MongoDB-在windows电脑本地安装一个mongodb的数据库

Introduction to data warehouse
![Count prime [enumeration - > space for time]](/img/11/c52e1dfce8e35307c848d12ccc6454.png)
Count prime [enumeration - > space for time]

Smart wind power | Tupu software digital twin wind turbine equipment, 3D visual intelligent operation and maintenance
随机推荐
Zero foundation self-study SQL course | if function
Detailed explanation of MATLAB axis coordinate axis related settings
How to quote Chinese documents when writing a foreign language?
Code neatness -- format
Golang uses Mongo driver operation - query (Advanced)
现代编程语言:Rust (铁锈,一文掌握钢铁是怎样生锈的)
赛尔笔记|视频文本预训练简述
How to select documents for literature review? For example, I can't finish reading more than 200 search results. How to select documents
After a period of silence, I came out again~
What are the ways to combine the points system with marketing activities
炼金术(2): 为什么要用issue管理软件
2022 PMP project management examination agile knowledge points (3)
SQL reported an unusual error, which confused the new interns
Validaterequest= "false" is a "suggestion collection" for what
Are the registered accounts of the top ten securities companies safe and risky?
How to use the apipost script - global variables
Solve the cross domain problem of the new version of chrome: Cookie loss and samesite attribute problem "recommended collection"
安全省油环保 骆驼AGM启停电池魅力十足
request对象、response对象、session对象
Quickly master grep commands and regular expressions