当前位置:网站首页>[beauty of software engineering - column notes] 22 | how to do a good job in technology selection for the project?
[beauty of software engineering - column notes] 22 | how to do a good job in technology selection for the project?
2022-07-29 08:01:00 【if...else...】
List of articles
Column information
Columnist : The treasure jade
Column publishing platform : Geek time
primary coverage
In the process of Architecture Design , I'm sure I can't get around the topic of technology selection , Big to architecture 、 frame 、 Language choice , Small enough to use what components 、 Design patterns .
The main goal of architecture design , Is to be able to meet demand and demand changes at a low cost , Ensure the software operation at a low cost . However, personal preferences for Technology , It's likely to let you choose technology , Ignore the goals of architectural design , The cost of meeting the demand becomes higher , Or the operating cost remains high .
So today , Let's discuss , In software engineering , How can we avoid the tendency of this type selection , Do a good job in technology selection scientifically and objectively .
One 、 Technology selection is project decision
Technology selection , It is to choose the scheme suitable for the current project situation among two or more technical schemes . Technology selection seems to be a technology choice , But it is actually a project decision closely related to the project situation .
Do a good job in technology selection , Is to make project decisions . So how to choose the appropriate technology selection from the perspective of making project decisions ?
Subject to time 、 Scope and cost constraints
Technology decision is a kind of project decision , Also subject to time 、 Scope and cost , You can't go beyond the boundaries of these three when making decisions .
Analyze the feasibility and risk
If in the project decision , Regardless of feasibility , Do not estimate the risk , It is very likely to lead to decision failure .
Consider stakeholders
When making project decisions , If no one represents the stakeholders when making decisions , They may make decisions that do not consider their interests .
Two 、 Common pitfalls in project decision-making
Whether it is technology selection or , Or other project decisions , Often encounter some pits , If you are not careful, you will step on it .
Take the opinions you hear as facts
Everyone has his own point of view, no problem , But you can't take opinions as facts , Especially before making decisions , At least it needs to be verified .
first impressions are strongest , Find evidence when you have a conclusion
When making technology selection or project decision , Another problem is that there may be an answer in my heart , The later so-called decision , It's just looking for evidence that helps you answer .
3、 ... and 、 How to do a good job in technology selection ?
For technology selection, including project decision-making problems , We can divide it into : Problem definition 、 research 、 verification 、 Decision making These stages .
Problem definition
In the problem definition stage , Two questions need to be clarified : Why do we need technology selection ? What is the goal of technology selection ?
research
After clarifying the goal of technology selection , You can research , See which technology selection can meet the goal , Include Open source solutions and commercial solutions .
verification
Is a technology suitable , If you don't understand , If it has not been applied , It is necessary to use it in practice . Through a small rapid prototyping project , Quickly make a prototype with candidate technical solutions , Only in the process can we know , Does the technology selection you choose really meet the goal of technology selection .
Decision making
After the research and verification , You can bring all stakeholders together , There will be a meeting to review the research results of the selected scheme , Let everyone put forward their own opinions , Make the final decision .
If you encounter a very tangled situation , The person in charge of decision-making is needed to make a decision , At this time, there is not necessarily right or wrong , The point is to make a choice , Then follow your choice . Sometimes I hesitate to choose 、 No decision is the worst result .
Four 、 Other excerpts
- Only when the goal of technology selection is clear , Can there be a standard to judge which scheme to choose .
- Must admit , For technology selection , There is uncertainty . Even through the above process , It is also possible to make wrong decisions . But there is a scientific process , At least it can guarantee to improve the probability of making correct decisions .
- At the end of the project , We should also summarize the previous technology selection and project decision , Constantly improve the mechanism of technology selection and project decision , Help make better decisions in the future .
summary
Technology selection , It is essentially a kind of project decision , It also conforms to some characteristics of project decision . in other words , The choice of technology selection should be subject to the scope 、 Time and cost constraints , Analyze the feasibility and risk , Consider stakeholders . There are also some pits to be avoided carefully , For example, we should avoid taking the opinions we hear as facts , To verify ; Avoid preconceived ideas , Don't look for evidence when you have a conclusion .
Technology selection , Don't get too tangled , Be brave in decision-making , Choose to implement firmly .
边栏推荐
- Monitor the bottom button of page scrolling position positioning (including the solution that page initialization positioning does not take effect on mouse sliding)
- Technology sharing | quick intercom integrated dispatching system
- QT connects two qslite databases and reports an error qsqlquery:: exec: database not open
- [experience] relevant configuration of remote connection to intranet server through springboard machine
- [paper reading] tomoalign: a novel approach to correcting sample motion and 3D CTF in cryoet
- postman接口测试|js脚本之阻塞休眠和非阻塞休眠
- NLP introduction + practice: Chapter 5: using the API in pytorch to realize linear regression
- Jiamusi Market Supervision Bureau carried out special food safety network training on epidemic and insect prevention
- 207. Curriculum
- How to connect VMware virtual machine to external network under physical machine win10 system
猜你喜欢
(视频+图文)机器学习入门系列-第5章 机器学习实践
207. Curriculum
Analyze the roadmap of 25 major DFI protocols and predict the seven major trends in the future of DFI
Amaze UI 图标查询
207.课程表
An Optimal Buffer Management Scheme with Dynamic Thresholds论文总结
Redshift 2.6.41 for maya2018 watermark removal
An optimal buffer management scheme with dynamic thresholds paper summary
Unity - default rendering pipeline - sculpt shader
[paper reading | cryoelectron microscope] interpretation of the new subtomogram averaging method in relion 4.0
随机推荐
[WPF] realize language switching through dynamic / static resources
207. Curriculum
Data warehouse modeling, what is wide table? How to design? Advantages and disadvantages
Internet worm
C language data type
[密码学实验] 0x00 安装NTL库
Pytorch's skill record
[note] the art of research (understand the importance of the problem)
@JsonSerialize注解的使用
关于pip升级损坏导致的问题记录
Jiamusi Market Supervision Bureau carried out special food safety network training on epidemic and insect prevention
What are the common error types and solutions of black box testing?
10 practical uses of NFT
String class
Amaze UI icon query
An optimal buffer management scheme with dynamic thresholds paper summary
Go, how to become a gopher, and find work related to go language in 7 days, Part 1
What are the principles and methods of implementing functional automation testing?
(视频+图文)机器学习入门系列-第5章 机器学习实践
The smallest positive number that a subset of an array cannot accumulate