当前位置:网站首页>What would you choose between architecture optimization and business iteration?
What would you choose between architecture optimization and business iteration?
2022-06-30 15:12:00 【The way to improve the structure】

Introduction
For every software system , We can all reflect its value through business and architecture .
Especially software developers , You should ensure that the actual value of your system in both dimensions can be maintained at a high level for a long time .
But it's a pity , They may focus more on one dimension , And ignore the other ;
If you focus on the wrong dimensions , This leads to a decline in the value of the system to 0, Very regrettable .
1、 Business and technology issues
In our daily work , Business iteration support and system architecture technology optimization are like fish and bear's paw , You can't take care of it at the same time .
case1:
When we find that the system performance is a little poor , The assessment needs to be optimized , Reduce system interface noise , At the same time, improve the user experience ...
But at this time, the product students ran over and said , Recently, there is a business revision requirement / New business functions need urgent online support .....
Q: What would you do ?
-- If it weren't for technical optimization , Let's wait until this requirement is completed ...
case2:
The technical planning we have to do at the beginning of each year , Do you always feel that the plan can't keep up with the changes ...
Every middle of the year 、 At the end of the year , Reality is always very different from planning , Either the planning is not done or a low-cost solution is simply implemented , Or something new happened in the middle of the way that disrupted the original plan .
Q: Do it again , How would you avoid ?
-- planning vs change
The above situation should be very common in work , What principles should we follow when facing similar problems ? Is there any effective solution ?
2、 Which is more important, business or technology ?
The former president of the United States, Eisenhower, put forward a classic “ emergency / The importance matrix ”.
I have two problems : Urgent and important , And urgent problems never matter , Important problems are never urgent .

Q: Which dimension is more important ?
In the eyes of R & D students , The importance level is clear at a glance :
The important thing : Architecture design optimization , Make the system have enough “ play ” sex
Something urgent : Business iteration support , Let the system support the sustainable development of the business
for example : Daily business iteration support is always urgent and excellent , But from the perspective of rational construction of Architecture Design , There doesn't seem to be so many connections ; And system technology optimization seems to be very important , But often there is no chance to arrange the last issue .
About which one is more important , Of course, different people have different opinions
If for this question , It's up to the business department to answer , That's business is more important - The system supports business iteration , It is very important to ensure the normal development of business .
3、 What more attention should be paid to R & D ?
We can try to sort these four cases :
1) Important and urgent
2) Important but not urgent
3) Not important but urgent
4) It's not important and urgent
System architecture design optimization : important ( Occupy the first place 1、2 position )
Business iteration support : emergency ( Occupy the first place 1、3 position ).
But in our daily work , The common mistake that business departments and R & D departments often make is to raise the third priority to the third . The important issues of system technology optimization are excluded by business iteration .
Our R & D personnel often complain about , There's no time for technology optimization , I tease myself for :“ Moving bricks again ...”、“ Working overtime to write BUG 了 ...”
It seems that we have forgotten : The business department is just focused on the business , Evaluation and optimization of system architecture , It's the responsibility of R & D personnel !
How to balance the work of the two , It's the way for R & D personnel to be promoted and cultivated .
Don't ignore the value of system architecture , If one day the system is so hard to maintain that it can only be overturned and restarted , It can be said that the system technology optimization can not keep up with the rapid iteration of the business , At the same time, it shows that the R & D students are not qualified enough in their own work .
4、 Practical solutions for reference
There are many difficulties in balancing technical architecture optimization and business iteration support . Is there a good way to balance ?
I collate some experience from my own work practice , Mainly “ total - branch - total ” Principles , For your trial reference :
4.1、【 total 】 Project approval , Evaluate the target return
Do things with value , In particular, technical optimization projects , Be sure to understand what the payoff point is , At the same time, we should make clear the cost performance of input and output .
It is suggested to spend more time at this stage , More research and analysis , It is suggested that the goal should be as quantifiable as possible , Achievable .
【 Project goal setting - Example 】
project :XX System performance optimization
The goal is : System service level sound <= 200ms(90 Quantile value <= 500ms)
4.2、【 branch 】 Split and refine , Evaluate the scope of optimization transformation
After setting a goal , The target needs to be disassembled , And evaluate the percentage and priority of each action .
Function point splitting should start with the end , Make sure you don't deviate from the goal .
Specific methods can be referred to :
1) Split according to process logic
2) Split by work module
3) Split by stream
It is possible that the previous assessment of each point may not be accurate , Allow for later adjustments , But there should be no big adjustment , Otherwise, it needs to be reconsidered .
【 Project breakdown - Example 】
Concurrent 、 Service dependency optimization 、cache、 Table structure split 、 Table index optimization 、 Logic optimization ( Loop set loop )、Redis Big Key Optimize 、 Resource isolation wait
4.3、【 total 】 Categorical convergence , Plan feasible project milestones
Functional assessments are classified by the same type , Split the sub optimization items into daily business iterations , Or interpose into the gap of each requirement development , Small step run , The project was steadily promoted .
【 Categorical convergence - Example 】

4.4、【 guarantee 】 Report and follow up , Project iteration progress
A weekly project reporting system can be established , Call relevant students to follow up on a regular basis , Project progress & The problem continues Review, Ensure the overall progress of the project .
The main focus of project progress report :

summary
Many people refer to the chaotic relationship between business and technology as “ Love that kill ”, In fact, technology and business are not antagonistic , It's complementary .
Technology as the theoretical basis , Business as a practice to test landing . The technology we learned , Business is our landing point , Business success can also reflect the technical value .

This article is from WeChat official account. - The road to the advanced architecture (jiagou_jingjin).
If there is any infringement , Please contact the [email protected] Delete .
Participation of this paper “OSC Source creation plan ”, You are welcome to join us , share .
边栏推荐
- Matlab finds a prime number that is greater than a given integer and follows this integer
- Win10 one click Reset win10 to solve all system bugs without deleting any files and Applications
- CCF access control system (Full Score code + problem solving idea) 201412-1
- 数控加工中心打刀缸工作原理及故障处理
- 1137: encrypted medical record
- How to get palindrome number in MATLAB (using fliplr function)
- Finding the median of two arrays by dichotomy
- 1066 root of AVL tree (25 points)
- It's so brain - burning that no wonder programmers lose their hair
- The sound network has fully opened the real-time transmission network sd-rtn, which has been free of network wide accidents for seven years - this is FPA!
猜你喜欢

Zero basic C language learning notes -- first introduction -- 2 data types & variables and constants

Solve the problem that codeblocks20.03 on win11 cannot run for the first time

The principle of fluent 2 rendering and how to realize video rendering

NPM install --global --save --save dev differences

Three types of technical debt that programmers often encounter: code, data, and architecture

CCF Z-scan (full mark code + problem solving ideas) 201412-2

Shift operator (detailed)

How to do a good job in high concurrency system design? I have summarized three points

Developer practice - the future of Agora home AI audio and video
![[matlab] 3D drawing summary](/img/57/05156340ccdd79b866c4df955b3713.jpg)
[matlab] 3D drawing summary
随机推荐
How many questions can you answer for the interview of Mechanical Engineer?
Double pointer letter matching
1035 password (20 points)
Sorting by character frequency
Infrastructure is code. What are you talking about?
On which platform is it safer to buy Treasury reverse repo?
1148 werewolf - Simple Version (20 points)
Analysis on the problems of irregular step hole on horizontal machining center
机械工程师面试的几个问题,你能答上来几个?
Using member variables and member functions of a class
Sum of squares of two pointers
Steps for commissioning of vertical machining center
这种零件该怎么编程加工?
[untitled]
1027 colors in Mars (20 points)
(Niuke) BFS
左旋梯形螺纹的编程
CCF elimination games (Full Score code + problem solving ideas + skill summary) February 2, 2015
Soap comparison result file description
Matlab judges the number of same purchases