当前位置:网站首页>Eight habits of software design experts

Eight habits of software design experts

2021-05-04 15:45:45 Jiedao jdon

The best designers work with specific habits 、 Learnable practices and principles to follow .

What makes a software design expert ? The traditional answer is experience and innate ability , It's not satisfying , Although it contains elements of truth , But it offers very little , We can't learn and generalize from it . obviously , Experts not only do their work at random . On the contrary , They have specific habits in their design work , The practice learned and the principles followed .

Some people may be familiar with them , Others are not familiar with . Some are easy to put into practice , Some don't . Some have an immediate impact , Some don't . however , It often happens that , Professional software designers will be keenly aware of all these practices , And use it for reference when the situation requires .

Many years of research on professional software designers and the foundation of their working methods , our 《 Software design decoding 》 A book illustrates 66 A habit , Practice and principles , Let's focus on some of them . They've been confirmed over and over again by people in the field , And each can be traced back to the academic literature that records the behavior of experts .

Now , Software is no longer limited by technology , It's limited by imagination . However , Software that turns imagination into reality can be complex , And the environment in which this transformation must take place may be more complex . This makes extraordinary demands on software designers , It's just us together “ Step up your efforts ” To achieve continuous excellence in design to meet these requirements .

1) Experts involve users :

Experts are acutely aware that users . They deliberately involve users in the design process , Conduct research , Talk to them , Get them involved in testing intermediate design , They are even required to play an active role in the design team .

However , Experts don't fully accept what users say . They are aware of the potential limitations , Because the user's mind is usually filled with current experience . Experts not only focus on the needs of users , Also focus on the actual needs of users .

2) Experts design elegant abstractions :

When all developers create abstractions , Experts will design it . Good abstraction can show what's important , No matter what you do and how you do it . Through an abstraction , It conveys the problem to be solved and the mechanism for its solution .

Experts are not satisfied with any abstraction , They deliberately seek elegant abstraction , They can effectively introduce , Understand and reference complex structures .

3) Experts focus on the essence :

Every design problem has an essence , A set of core considerations , These issues have to be successfully understood , And in designing solutions “ Put the nail in ”, To solve the problem successfully . This nature can be destructive : Changes in the core can greatly change the peripheral decisions that need to be made . Experts first focus on the essence , And then postpone the effort to peripheral design .

4) Experts keep simulating :

Experts simulate all aspects of the software they envision , And how different parts of the design support various scenarios . When working with others , Experts will explain the operation of design step by step , So as to design on a regular basis . When alone , They'll simulate psychologically , And design over time .

5) Experts look around :

It's like an architect walking around the city and taking inspiration from existing buildings , Software experts also check the design of other software , With “ See how they do it .” They often do this to meet their specific challenges , But they often take the time to look around , To increase the variety of design solutions they may use in the future .

6) Experts reshape the problem space :

Experts usually take a step back from the stated problem , Think more broadly about problem space , Looking for understanding “ What's the problem ” Alternative methods . They may change direction by re understanding the problem space or solving other problems in the same space . They deliberately choose goals that are different from the original design problem , Because it leads to insight into the real problems or how to overcome key obstacles .

7) Experts see mistakes as opportunities :

Design often involves mistakes :“ error ”, misunderstand , obstacle , Wrong turn , emergency . Experts are not afraid of mistakes , It's about seeing mistakes as opportunities . They accept it as an inherent part of the design , And take some time to explore the failure and the context surrounding it . Understanding what's going on often reveals insights about problems or solutions , For example, suppose , misunderstand , Dislocation and emergency .

8) Experts think about things they didn't design :

Although it's natural to focus on what design has to do , But experts also spend time thinking about what design is not going to do . In clarifying and considering boundaries , They will find over design and under design .

Marianne · Peter (Marian Petre) I'm a computer professor at Open University .Andrévan der Hoek Professor of informatics at the University of California, Irvine . They are “  Software design for decoding  ” The author of .

版权声明
本文为[Jiedao jdon]所创,转载请带上原文链接,感谢
https://chowdera.com/2021/05/20210504154434294c.html

随机推荐