More Related Content Similar to Why did the tower of babel fail Similar to Why did the tower of babel fail (20) Why did the tower of babel fail10. What
All the documents of project need to be part of
this structure.
Objectives, external specifications, interface
specifications, technical standards, internal
specifications, and administrative memoranda.
10
13. If there are n workers on a project, there are
(n^2-n)/2 interfaces across which there may
be communication.
13
14. Tree-like programming
organization
a mission interface definitions
among the parts
a producer
a technical director or
architect
a schedule
a division of labor
14
18. The Tower of Babel was the
first engineering fiasco,
but it was not the last.
18
Editor's Notes \n 在一次從東方往西方遷徙的過程中,人們發現了蘇美爾地區,並在那裡定居下來。 接著他們奔走相告說:“來,讓我們製造磚塊,並把它們燒好。”於是,他們用磚塊代替石頭,用瀝青代替灰泥(建造房屋)。 然後,他們又說:“來,讓我們建造一座帶有高塔的城市,這個塔將高達雲宵,也將讓我們聲名遠揚,同時,有了這個城市,我們就可以聚居在這裡,再也不會分散在廣闊的大地上了。”於是上帝決定下來看看人們建造的城市和高塔,看了以後,他說:“他們只是一個種族,使用一種的語言,如果他們一開始就能建造城市和高塔,那以後就沒有什麼難得倒他們了。來,讓我們下去,在他們的語言裡製造些混淆,讓他們相互之間不能聽懂。”這樣,上帝把人們分散到世界各地,於是他們不得不停止建造那座城市。 (創世紀,11:1-8)\n \n \n \n 作者把建巴別塔比喻到大型專案中來分析,這個專案有明確目標、有足夠的人力、材料也不虞匱乏、時間多到沒有限制、技術也沒有問題,但是卻因為溝通(communication)跟組織(organization)失敗了,當然這是神的旨意造就的,不過在一個大型專案中,我們該如何避免這兩個問題發生呢?\n \n \n \n 什麼是工作手冊?『所有在專案中所使用到的文件都應該是屬於這個組織結構中的一部分,包括:計畫目標、外部規格、介面規格、技術標準、內部規格、管理備忘錄。』\n 為什麼要有工作手冊?第一個理由『對技術工作者而言,善用前人或現有的素材,跟親自操刀創作一樣地重要。』,第二個理由『用來控制資訊的分佈』。\n \n 為了解決溝通的問題,在大型軟體開發專案需要透過人力配置(division of labor)和專業分工(specialization of function)來減少隨著軟體的大型化所增加的溝通問題!這一章有強調,我們常見的組織結構是樹狀的,但是溝通的實際狀況卻是網狀的,所以有時組織並不一定解決溝通上的問題。\n 所以要利用樹狀的組織結構來減少溝通的成本,每個子樹必須具備基本要素:\n—(1)任務\n—(2)管理者(producer)\n—(3)技術總監(technical director)或架構設計師\n—(4)時程\n—(5)人力配置\n—(6)各個職掌之間的介面定義\n\n 1.由管理者兼任技術總監:6~8人的小團隊很適合,大型專案團隊就很少可以行得通,原因有二,一是具備優秀管理天份與技術天份的人才相當少,二是這兩種角色都是全職角色。\n 2.管理者是老闆,技術總監是副手:這個困難在於如何賦予技術總監充分下達技術決策的權力,以免使他陷入管理的命令體系之中而浪費太多時間。這裡面我想到中國歷史上有很多類似的案例,但不一定都有很好的結果,像漢高祖劉邦的韓信,韓信後來沒有很好的下場,反倒是張良就比較聰明,這裡頭有的是功高震主的問題,但也有很好的張良下場,三國的劉備跟諸葛孔明也是好結果,這之間牽涉到管理者與技術總監的互信問題,所以人之間的溝通問題真的很難。\n \n \n \n \n