高效的軟件開發(fā)團(tuán)隊是建立在合理的開發(fā)流程及團(tuán)隊成員密切的合作的基礎(chǔ)之上的,成員共同的迎接挑戰(zhàn)、有效的計劃、協(xié)調(diào)和管理各自的工作以至完成明確的目標(biāo),高效的開發(fā)團(tuán)隊具有如下特征:
1、 具有明確且有挑戰(zhàn)性的共同目標(biāo)
一個具有明確的而且有挑戰(zhàn)性目標(biāo)的團(tuán)隊比目標(biāo)不明確或不具有很大的挑戰(zhàn)性目標(biāo)的團(tuán)隊效率高得多,通常技術(shù)人員往往會因為完成了某個明確的任務(wù),而且這個任務(wù)的完成具有挑戰(zhàn)性的意義而感到自豪,反過來團(tuán)隊成員為了獲取這種自豪的感覺而更加積極的工作從而帶來團(tuán)隊開發(fā)的高效率,如作為系統(tǒng)設(shè)計人員很清楚的知道在什么時候要做到什么,什么時候開始做,什么時候必須完成,為了完成工作必須面臨哪些挑戰(zhàn),怎么解決這些困難等為設(shè)計出一個高質(zhì)量的軟件項目提供了重要保證,而模模糊糊的去設(shè)計一個系統(tǒng)或模模糊糊的就去編寫代碼是非常危險的,而且會為此付出高昂代價,因此高效的軟件開發(fā)團(tuán)隊具有挑戰(zhàn)性的共同目標(biāo)。
2、 團(tuán)隊具有很強的凝聚力
在一個高效的軟件開發(fā)團(tuán)隊中,成員們凝聚為一個整體共同進(jìn)行工作,他們是相互支持、互相交流、互相尊重的,而不是相互推卸責(zé)任、保守、相互指責(zé)的,在一些散亂的開發(fā)團(tuán)隊中往往存在這樣的問題,一些程序員是比較保守的,明明知道另外的模塊中需要用到一段與自己已經(jīng)編寫完成但有些難度的程序代碼,他也不愿拿出來給其它程序員共享,不愿與系統(tǒng)設(shè)計人員交流,這樣給項目的進(jìn)度造成了些不可度量的因素。
3、 具有融洽的交流環(huán)境
在一個開發(fā)團(tuán)隊中,每個人行使自己的職責(zé),如需求分析人員制定需求規(guī)格說明、系統(tǒng)設(shè)計人員做系統(tǒng)概要設(shè)計和詳細(xì)設(shè)計、項目經(jīng)理配置項目開發(fā)環(huán)境并且制定項目計劃等,但每個人的工作不可能做到完美的,如系統(tǒng)概要設(shè)計的文檔可能有個別地方詞不達(dá)意,做詳細(xì)設(shè)計的時候就可能會造成誤解,項目經(jīng)理制定計劃時可能忽略了某種風(fēng)險的存在而造成執(zhí)行者過于緊張的壓力等等情況都需要大家通過交流、反饋的手段然后協(xié)商解決的,因此高效的軟件開發(fā)團(tuán)隊是具有融洽的交流環(huán)境的,而不是那種簡單的命令執(zhí)行式的。
4、 具有共同的工作規(guī)范和框架
高效軟件開發(fā)團(tuán)隊具有規(guī)范性及共同框架的工作,對于項目管理具有規(guī)范的項目開發(fā)計劃,對于分析設(shè)計具有規(guī)范和統(tǒng)一框架的文檔及審評標(biāo)準(zhǔn),對于代碼具有程序規(guī)范條例,對于測試有規(guī)范且可推理的測試計劃及測試報告等等。并且所有成員都明白自己的職責(zé),知道必須完成什么計劃?由誰來完成?什么時候開始?什么時候結(jié)束?按什么順序?等,總之一個高效的開發(fā)團(tuán)隊無論是工作內(nèi)容還是工作流程都具有不同程度的規(guī)范性和標(biāo)準(zhǔn)風(fēng)格的框架。
5、 采用合理的開發(fā)過程
軟件的開發(fā)不同于一般商品的研發(fā)和生產(chǎn),開發(fā)過程中會面臨著各種難以預(yù)測的風(fēng)險,比如需求的變化、人員的異動、技術(shù)的瓶頸、同行的競爭等,高效的軟件開發(fā)團(tuán)隊往往是采用了合理的開發(fā)過程去控制開發(fā)過程中的風(fēng)險、提高軟件的質(zhì)量、降低開發(fā)費用,這樣的團(tuán)隊會根據(jù)自身的必要程度決定要執(zhí)行哪些工作?如配置管理、資源管理、版本控制、代碼控制等,團(tuán)隊還合理的分劃并定義開發(fā)過程的里程碑,決定每項活動內(nèi)容的底線和審評標(biāo)準(zhǔn),決定各項活動的先后關(guān)系或迭代的關(guān)系等。總之高效的軟件開發(fā)團(tuán)隊的開發(fā)過程的原則是高效率、高質(zhì)量、低成本。
前4點容易做到,第5點就難了,經(jīng)常是在不可能的時間里完成任務(wù),老板或者是業(yè)務(wù)人員會說沒問題,我們3個月就能完成,每當(dāng)聽到這種話我的兩眼一片漆黑,休息日沒了,加班加點成為正常的了,而且給人罵的機(jī)會來了。我很佩服印度人的管理,在人員素質(zhì)較低的情況下能作出如此好的東西不簡單,靠的是什么?過程管理。