迭代與創新 - 不要指望一次成功

軟件的複雜性的一個重要方面的需求的複雜性。只要一個軟件稍具規模,就很少有人能把這個軟件成型之後的樣子一下子想明白。更嚴重的時候,人們甚至不知道要解決的業務是什麼樣的。

當人們嘗試通過軟件手段來改善企業流程,提升企業的工作效率,首先需要對現有的業務有清醒的認識。沒有這個認識就不可能知道目前的問題是什麼。不知道目前的問題是什麼,也就無法確定項目要達到的目標。瞭解了當前的業務以及當前業務中的問題之後,需要針對問題對業務流程進行優化,重新設計其中的部分或全部業務流程。這看起來是順其自然的事情。然而,實際上這在很多情況下是很難進行的。越是不成熟的行業和企業,這種工作就越難進行。

想要在短時間內解決這種問題是不太容易的。我們需要一種機制讓人們可以很容易地開始,然後通過一個路徑能夠逐漸逼近理想的目標,就如同學習數學要先從學習數字開始一樣。認識是一個逐步深化的過程,而實踐則爲認識提供反饋,可以讓人們對事物的認識更正確。

可以把這個逐步逼近的過程類比爲科學研究。先提出一個設想,然後做一些試驗去驗證這個設想,發現一些不合理,然後再修正原先的設想,然後開始下一次試驗。這樣一個循環的過程就是迭代的過程。

軟件的迭代式開發亦如此。科學家搞研究的過程是創新的過程,軟件的開發也需要這樣的過程。對於上述的業務不明確,需求不明確的問題,我們首先需要有“不要指望一次成功”的態度,其次,我們不能懼怕失敗,然後,我們要堅持不懈,而且,我們需要反饋、反思和修正。迭代使我們通過不斷的設想、試驗、反饋、修正這樣一個基本過程的多次循環,最終達到我們想要的結果。這個過程是一個創新的過程,因爲這是我們對未知問題的探索。這個過程讓我們始終對未來充滿希望,因爲我們知道我們正在逼近目標。這個過程能夠讓我們勇敢地面對失敗,成爲一個真正的戰士。

迭代吧!

關於敏捷開發的更多討論,請參考:演示敏捷開發的一些特點

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章