从文章中知道,掌握IT技能有两个基本条件:一个是环境足够规律,以便于能够预测;另一个则是有机会通过长时间的实践来学习、掌握这些规律。但是软件项目往往是没有规律及可预测环境的,因为用户的需求是一直在改变和增加,我们也需要不断地改变,我们一直处于学习--实践--纠正的循环。
传统的软件项目与常规的、可预测的环境相反。开发软件的过程往往是千变万化的,几乎无法确定这些决定中的哪一个导致了成功或失败。
软件项目是复杂的系统,而不是常规环境,这一事实导致了另一个问题——收集技术、实践和方法论实际有效的数据的极端困难,以及几乎不可能在收集数据的环境之外推广这些数据。
如果跟着软件开发方法论走,我们工作得非常幸苦,便会觉得它很糟糕。