设计中最困难的部分在于搞清楚要设计什么

软件设计的目的

为了高效率、低成本、高扩展性、高安全性地可持续交互产品。

解决未来的不确定性可能存在的问题。

如何进行更好地设计

image.png
设计充分考虑功能需求与非功能性需求

image.png
扩展性
性能
安全性
稳定性
可维护性
成本

重新理解约束

架构、时间、成本、团队、供应商、法律合规

推荐的书籍


《智能时代 大数据与智能革命重新定义未来》
《反脆弱: 从不确定性获益》