当前位置:网站首页>How to quickly deliver high-value software

How to quickly deliver high-value software

2022-06-25 03:57:00 Blockchain research

What is value

stay 《 Zen and motorcycle maintenance Art 》 In a Book , By Robert · Federo, the protagonist created by bossig, has been exploring what is good quality (quality). Fidello thought ,“ Good quality , It's the things you like ”. In software development , We also introduce a similar point of view .


What is value ? We will decide what to do based on value , And what not to do . We will do something of high value first , And put things of low value behind . that , What is the value here ?


Simply speaking , Value is “ What we want ”.

The selling point of some browsers is that they can open web pages quickly , Then the value is speed .

about 12306 for , Value is that users can book tickets , The interface is ugly , Poor experience comes second .

If our product development is too slow , We decided to simplify some functions , Speed up , here , Value is the speed of development .

Selection value , Is to choose what is important to us .
The so-called value , That's what we want .

 

At the same time, build functional features and foundation

Software development is like architecture , Build a house , Want to lay the foundation , The same goes for software development .

Every feature needs to have a solid design foundation , Or solid “ Infrastructure ”.

 

 

 First build a simple and practical version
If for each required feature , We can all build small versions , At the same time, it also lays a solid foundation for them , Then we can do our best .


 

Zero defects and good design

 

Defects are the equivalent of poor functionality . It makes the project progress uncertain . Only eliminate defects , Only then do we know what features have been completed .

 

 

Fixing defects can lead to uncertain time delays . Find defects and repair them at any time , Only in this way can we clearly know what features have been completed
 


 

Test your software anytime, anywhere

Late delivery of products , And delivered defective products , It makes us look stupid . We'd better not do this .

actually , There is no other good way . At the end of each iteration , We all have to make the software as defect free as possible . Do that , The only way is to test .

Not only does testing not slow down development , It makes it faster ! This is because testing can make us make fewer mistakes , At the same time, errors can be found more quickly .

 

The software is always well designed

Keep the design in good condition while changing it , This is often referred to as refactoring (refactoring)

If the design cannot be kept in good condition , If not, it will affect the progress of the project , If it is serious, the project will fail !

Testing and refactoring are combined , Make incremental development possible .

 

Ability is the premise of improving speed

Every entrepreneurial team wants to go faster . If you run hard, you may get bug( defects )、 Make a mistake , Tired team , In the end, it will delay the progress .

To speed up development , The most valuable thing we can do is to improve the skills of our team members . This investment will soon bring the following returns : Less time is wasted fixing defects 、 The development process will be smoother . Don't think of speed as efficiency . The fastest team is always smooth 、 Advance gracefully .

Team strength is the upper limit of speed . There is only one secret to being faster : Find better people .

 

Streamline functions

 

Simplicity is more difficult than complexity . You have to try to clarify your thinking , To make everything simple . But it is worth it , Because once you do , Can create miracles .
—— Steve · Steve jobs

If you put 4 Three functions are cut off 2 individual , The development speed will double immediately . The version originally planned to take one and a half months to complete , Now you can send it in three weeks . Besides, , It is a good thing that the early products have few functions .

In order to create products of superior quality , Will selectively restrict product functions .iPhone When it first appeared, it was a very excellent product , Although it lacks some of the features you expect to see in smartphones , If the application cannot be organized into folders , You cannot switch between applications that are running at the same time , You can't take photos when the phone is locked . Is it true that the genius of apple just forgot these product functions in a moment of confusion ? Is unlikely to . They know very well that many functions are filled in at the beginning of the product , It will only delay the release time , Reduce product quality , And they know that they can add functions when the product is updated . therefore 2007 The first of the year iPhone When it was released , Apple hasn't been very popular with business people , Those jubilant users are more entertainment consumers .

Gmail The father of Paul Buchheit Once said that :“ If your product is great , Then it doesn't need to be a product that does well in all aspects .” Buchheit The core point to be expressed here is , You need to do the best of a few things , Instead of thinking about doing everything perfectly .

 

restructure

 

We need to move forward steadily . So , Need to keep the design clear and tidy at all times . And to do that , You have to refactor .

 

 

The time required to build a feature comes roughly from the following two main aspects : One is its inherent difficulty , The other is the difficulty of adding it to existing code . The inherent difficulty of building functional features , The development team will generally estimate more accurately . therefore , What makes development uncertain or slow down is the difficulty of adding features to existing code . We call this difficulty “ Bad code ”.
If we allow the quality of the code to degrade , Then some features may be easily added , Other features that look similar may be trapped in the zigzag path of poor code . This results in a large difference in the time required for two seemingly similar tasks .
In order to keep the progress stable , We must avoid such zigzag passages ; And when such channels do exist , All we need to do is straighten it .

 

 

原网站

版权声明
本文为[Blockchain research]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/02/202202210537010091.html

随机推荐