天天看點

從《技術的本質》看靈活開發的流行

從一本書說起

布萊恩·阿瑟是著名的經濟學家,是研究經濟正回報機制的先驅。他在1990年獲得“熊彼特獎”。投身複雜性科學領域,讓他打通了技術和經濟之間的關系。兩本著作《複雜經濟學》和《技術的本質》,诠釋了他的主要思想。

《技術的本質》這本書,介紹了一套關于技術産生和進化的系統性理論,被譽為一把打開“技術黑箱”的金鑰匙。

我們的世界因技術而改變,但是,技術的本質是什麼呢?

從本質上看,技術是被捕獲并加以利用的現象的集合,技術是對現象有目的的程式設計。這樣講有些抽象,不好了解。我們舉個例子。

當談論程式設計思想時,我們常會比較面向過程的程式設計和面向對象的程式設計。“面向什麼”其實就是把“什麼”作為主要的加以利用的現象,通過把這些現象集合起來、組織起來、操作起來,以此實作最終解決實際問題的目的。

看趨勢和變化

我們回顧程式設計思想的進化,面向對象的程式設計發展的态勢,優于面向過程的程式設計。這是為什麼?

面向過程,會讓一個類越來越全能,似乎要去完成所有的事情。而面向對象的程式設計,核心思想是’一切皆對象’,每一個類隻需要做好自己的一件事,就可以了。大家各司其職,合作起來,做大事。

因為根據物質的熵增定律,世界的演變方式,一定是走向分化,分化就是殘化。而殘化後,若想求存,就必須互相媾和,彼此依托。

面向對象的程式設計,能夠成為主流,是遞弱代償定律的必然結果。

基本原則的背後又是什麼

靈活開發對瀑布式開發的替代,也反映了這一定律。我們看靈活開發的四項基本原則。

1、遞增,而不是連續的:傳遞的工作軟體是一小部分一小部分遞增的。不必等到一個階段完全完成後才開始另一個,完成的工作,也并不是業務最終期限,這驅動靈活傳遞,也是熵增定律的力量展現。

2、避免不必要的開銷:團隊要盡可能多地減少項目計劃和文檔。想到了,就趕緊動手去做,不把時間浪費在整理檔案上。這是最小作用力原則的展現。

3、協作:根據需求,團隊成員一直與其它人進行互動,以及一些外部利益相關者。每個成員在承擔自己的任務外,還需要與團隊協作。沒有人的工作是孤立的,也沒有團隊本身是獨立工作的。這對應了分化後必求媾和的樣态。

4、說真話:為了保證真正的靈活,團隊探讨的與項目相關的一切都要是真實的。大家一起正視問題,并一起解決。看似松散的團隊,實際上是一個有機的整體,形散而神不散。

技術的本質是什麼,我們從内驅力的角度觀察。技術的内驅力,在于不斷分化的必然動勢,然後它們之間又彼此依存,而無法做到有效依存的哪些,進了故紙堆,成為了曆史。

繼續閱讀