软件设计改进并非一蹴而就,而是需要经历一段“绝望之谷”。设计师需要在改进设计之初,预见到未来更优的设计结构,并将其分解成可执行的步骤。设计师需要权衡改进的程度、速度以及带来的短期阵痛,并通过合理的步骤控制风险,最终实现设计的成功迭代。