实际的问题可能与我们假设的不同

马克·吐温曾说过:“不是你不知道的东西让你陷入麻烦。”你明明知道事实并非如此!”

大多数软件项目之所以失败,是因为它们产生的并不是最终用户实际需要的东西。在传统的瀑布式方法中,项目的需求在一开始就被收集、审查、签署和冻结,而在项目的后期阶段不会再进行验证。不幸的是,需求经常会在一段时间内发生变化!这样就产生了一个设计良好、功能丰富的解决方案,但却无法解决当前的问题。

为了创造出有效的解决方案,关键是首先要对实际问题有一个很好的把握。问题的细微差别往往只有在项目取得进展时经过密切调查才会暴露出来。在设计思维等更敏捷的设计方法中,团队通过终端用户的定期反馈来持续验证问题陈述。反馈不仅有助于细化解决方案,而且还有助于细化每次迭代中的问题陈述。这意味着只有当最终用户确认特定的迭代解决了问题时,项目才会进入下一个阶段。