Ubuntu課堂:Ubuntu發(fā)行版是怎樣煉成的
原創(chuàng)近幾年來,由Canonical領導的Linux發(fā)行版Ubuntu憑借優(yōu)秀的用戶體驗和功能取得了快速的增長,Ubuntu 10.10 Maverick Meerkat即將在10月底發(fā)布,不久我們就將看到***的Ubuntu服務器和桌面版帶來的創(chuàng)新,Ubuntu能取得今天的成就,和Canonical CTO Matt Zimmerman準確的戰(zhàn)略眼光和團隊堅定的毅力是密不可分的。
51CTO特別專題推薦:Ubuntu 10.10——夢幻般的狐獴國度 | Ubuntu 10.04——清醒的猞猁
這可不是一個小壯舉,要讓項目和所有開發(fā)人員組織有序是一個規(guī)模宏大的任務,需要做好全球范圍日常工作的協(xié)調(diào),但正如Zimmerman所說的,他們采用了恰當?shù)姆椒ê驼_的流程才得以保證Ubuntu項目取得成功。
Ubuntu的開發(fā)團隊
Zimmerman對項目的跟蹤從未間斷過,確保團隊成員之間保持密切溝通,這是一個與眾不同的的組織,首先,雖然Canonical在多個國家設立了辦事處,但Zimmerman手下的大部分工程師并沒有在這些地方工作。
Zimmerman說:“我的團隊大約有120人,但只有不到5個人長期呆在辦事處工作”,他同時表示,他每季度會定期和團隊成員面對面平等交流一次,但要真正堅持下來,是需要耐心和魄力的,Zimmerman卻做到了,因此他成功了。不過Zimmerman說了,要堅持定期交流還是需要一些方法的,例如,Zimmerman說Canonical工程師的許多事情都是通過IRC,Wiki和電話會議完成的,團隊也使用開源的Gobby工具進行協(xié)作編輯,使用Mumble搭建了語音聊天室。
Zimmerman說:“Mumble就像是支持語音的IRC,你可以設置一組頻道,團隊成員可以進入不同的頻道尋找相關的人交流,他們可以自由進出這些頻道,就象進出房間一樣”。
工程組織通常喜歡使用白板分享想法,Ubuntu團隊也不例外,雖然Canonical員工和Ubuntu貢獻者在地里位置上是分散的,但Zimmerman說很多事情是依靠共享桌面和屏幕完成的,不過他也承認,不管協(xié)同技術多么先進,也無法取代一對一使用白板交流的效果。
Ubuntu的開發(fā)過程
至于項目總體目標管理,Canonical使用它自己的Launchpad平臺。Zimmerman說:“Launchpad提供了一些基本的項目管理支持,我們還在開發(fā)其它工具實施跟蹤”。
Zimmerman掌控著項目的全局管理藍圖,Canonical有專門的工具從Launchpad提取數(shù)據(jù)制成報告,Zimmerman看得最多的報告關鍵部分是燃燒圖,燃燒圖是Scrum敏捷軟件開發(fā)方法的重要元素。
Zimmerman說:“它本質上是一個條線圖,顯示了在你的迭代中還有剩下多少工作要做,假設項目總共有200個任務,根據(jù)你的計劃從200到0畫一條趨勢直線,在項目開展期間,根據(jù)實際進展在圖上畫出真實的進度趨勢,***通常會畫出一條曲線,這意味著項目與你制定的計劃存在偏離,我們可以通過燃燒圖實時了解項目的進展”。
雖然Zimmerman也使用了Scrum風格的燃燒圖跟蹤項目進度,但他表示并沒有嚴格遵守一種特定的開發(fā)方法。
Zimmerman指出,使用Scrum方法中的某些元素后,他可以根據(jù)團隊的生產(chǎn)能力做報告。他說:“我們可以準確地知道在一段時間內(nèi)究竟能完成多少任務,讓下一步預測變得更準確”。
Ubuntu與Debian和社區(qū)的聯(lián)系
從測試的角度來看,Ubuntu工程組織有多項任務在并發(fā)進行,Zimmerman說硬件認證測試工作在硬件實驗室日夜不停地運行,諸如兼容性等測試完全實現(xiàn)了自動化。此外,從舊版本進行升級的測試也是完全自動化的,當然也少不了手工測試,但這項任務通常是由Ubuntu社區(qū)完成的。 (說到社區(qū),請大家參考這里開源社區(qū)是如何運作的——Ubuntu篇)
Ubuntu開發(fā)人員并不是在真空中運轉,他們也是上游開源生態(tài)系統(tǒng)的一部分,大多數(shù)上游軟件的補丁都是由他們貢獻的,有時Ubuntu還會先于上游發(fā)布相關漏洞的補丁。
Zimmerman說:“我們先于上游發(fā)布補丁主要是為了滿足我們的***期限需要,我們的目標是為了將δ變得更小,每個發(fā)布周期,我們都要花大量的工程時間在上游補丁上”。
Ubuntu也嚴重依賴于它和Debian Linux發(fā)行版的關系,Zimmerman指出,大多數(shù)Ubuntu補丁提交給Debian都被接受了,至于其它上游項目,Ubuntu實在是沒有太多的精力為它們做貢獻。
拓展:Debian與Ubuntu 父與子的對比哲學
Zimmerman說:“我們的工作充滿挑戰(zhàn),因為牽連的項目太多了,我們不能與開源社區(qū)的每一個人都保持密切的私人關系,但我們必須要能夠一起協(xié)同工作”。
原文出處:http://www.linuxplanet.com/linuxplanet/reports/7169/1/
原文名:How Ubuntu is Made
作者:Sean Michael Kerner
【編輯推薦】