您的位置:軟件測試 > 軟件項目管理 > 團隊管理 >
軟件開發(fā)團隊的“基礎設施”建設
作者:網絡轉載 發(fā)布時間:[ 2013/5/16 14:49:39 ] 推薦標簽:

一.軟件團隊

自軟件危機爆發(fā)以來,人們開始用軟件工程來試圖解決這個問題,提出了各種各樣的開發(fā)理論, 開發(fā)模式。軟件開發(fā)的藝術性,和不可預知性,使得各種開發(fā)理論,開發(fā)模式,總是有其局限性,終始無法精確的用工程的手段來量化開發(fā)過程。

軟件是科學與藝術的結合,理論與實踐的結合。作為一種智慧產品,軟件開發(fā)基本上是一種智能的投入,是軟件開發(fā)團隊的智慧結晶。在軟件中凝結的智能愈高,軟件的價值愈高,能被市場接受的價格愈高。完全按工程組織來完成軟件開發(fā),基本是不可能完成的任務。

在看似平靜的表面下面,軟件開發(fā)其實是充滿著各種風險,不可預知,和躁動不安的。按開發(fā)計劃完成軟件是世界上困難的事情之一。雖然你有著那么多的開發(fā)經驗,技術資源,開發(fā)模式,但是你不能完全的依賴它們,每一個軟件都有它的獨特性,都需要你特別的付出和關注。你不要指望事情能按你預想的那樣一帆風順的進行。你需要關注,特別的關注,直到它的誕生。因此有人說:與其說軟件的開發(fā)是可依進度或功能切割的項目,不如說是一種第六感。有時候它的確是這樣。

也正因為軟件誕生的艱辛,所以它的誕生也具有震撼性。一個偉大的軟件產品,總是震撼著市場,震撼著心靈,將是人們全部的焦點所在,顧客將帶著鈔票搶著購買。公司也將因此成為行業(yè)中的個中翹楚。這是軟件的魅力。一個高效率的開發(fā)團隊會將這一切變?yōu)榭赡堋?/p>

微軟的成功,促使人們更多的開始關注小的開發(fā)團隊的使用。

軟件開發(fā)團隊是為一個軟件產品,或者一個項目的開發(fā)而組合在一起的組織. 軟件開發(fā)團隊首先是為目標的存在而存在的.

對一個軟件開發(fā)團隊首先要解決的問題是: 應該由那些角色來組成團隊.在傳統(tǒng)上組建一個開發(fā)團隊時,習慣上是找一個主管,幾個主力程序員,加從其他部門調來,或者現(xiàn)招幾個程序員,算做是一個開發(fā)團隊,期望他們能按時按質的拿出東西,運氣好的話,他們可以搞定,大多數(shù)時候,項目不是嚴重超期,是永無出頭之日,后只有下馬的命運.

一個先天不足的團隊,很難期望他們能按時按質的拿出產品。

參照微軟項目團隊組成,一個軟件開發(fā)團隊應該由如下角色組成:項目經理,系統(tǒng)設計師,程序員,測試人員,用戶教育培訓人員。項目經理對整個項目的成敗負責,需要關注項目的進度,與客戶的溝通交流,理解客戶需求,項目經理更多的是作為用戶和開發(fā)人員之間溝通的橋梁.因此對項目經理,不僅要求在技術上能夠解決項目中發(fā)生的各種問題,也能預見到項目的各種潛在風險,并規(guī)避風險,更重要的是做為產品的代言人,能闡述清楚產品的用途,特色給潛在客戶,也能明白,清晰的理解客戶的需求描述,并和客戶在需求問題上達成一致或折中.系統(tǒng)設計師和主力程序員一起對整個產品的架構,設計負責,確認開發(fā)語言,制定開發(fā)規(guī)范,預先架構中的潛在問題,解決開發(fā)中遇到的技術問題和測試問題.程序員分為主力程序員和一般程序員,主力程序員將承擔更多的責任,協(xié)助系統(tǒng)設計師的設計工作,并具體指導一般程序員的開發(fā)工作,主力程序員一般由有多年項目經驗的程序員擔任.測試人員負責產品的測試工作,從方案設計開始參與并撰寫測試計劃,測試人員也應包括幾種:能寫測試代碼的,完全不懂計算機,只做用戶測試的.其測試的側重點不同。

用戶教育培訓人員撰寫用戶使用文擋,產品說明書等,用戶教育培訓人員是一個項目很容易被忽視的角色,但事實上,在一個大項目中,他們的身影重要,這部分工作,沒有專人來做,必然的分攤到程序員身上.程序員很難有時間,有心情來完成這些東西,不但會影響程序員的專注,也使文擋的質量很差.特別是在項目的后期,程序員的專注是非常重要的.我們看微軟的項目管理,角色可以重疊,合并,但程序員與其他角色是不會重疊,合并的。

將團隊劃分為幾種角色,目的是要他們各司其職,相互倚重,共享前景.一個團隊如果沒有明確的職責分工,沒有規(guī)劃,沒有分工合作,只會讓事情亂做一團,遇到問題,人人推委,終導致團隊信譽整體下降。項目經理雖然對項目的成敗負責,但是項目經理不可能面面俱到. 因此保持出了問題有人負責處理的原則,是非常重要的.懂得分工與授權,項目經理才能"解放"自己,團隊成員也才會遇事不躲,主動承擔并處理問題。

二.人員建設

團隊劃分出各種角色后,應明確各個角色的素質要求和技能要求,一個不適合的人處于一個不合適的職位上,是一個雙輸?shù)倪x擇。團隊建設上應避免把團隊建設成為一個大籮筐,什么東西都可以裝。開發(fā)團隊要進人,應該嚴格的按照崗位要求,招合適的人。在嚴把進人關的基礎上,團隊還應該逐步的,有計劃的把不合適的人員替換掉.這個崗位不適合他,應該還有更適合他的崗位,而勉強呆在原位,不僅對團隊,也對他不公平.當然在中國這個人情化社會里,要做到這一點很不容易.特別是工作多年的同事,同時可能也是朋友,要做做這一點更難。管理者也要克服掉人情關。過不了人情關,很難成為一個合格的管理者。

大家聽說過木桶理論:一個木桶所能裝的水不是由長的那根木條決定的,而是由短的那根木條決定的。對這個理論應用到軟件開發(fā)領域是:一個軟件開發(fā)團隊開發(fā)出的產品品質差是由能力差的人決定的,所能開發(fā)出來的好的產品品質是由能力強的人決定的。通俗的理解是,一個開發(fā)團隊開發(fā)出來的產品品質是由差和好的人來決定的,也是團隊成員決定的。一個產品的現(xiàn)狀往往能很準確的反映出一個團隊的現(xiàn)狀。產品的品質也是團隊的品質。這是為什么有的產品叫好又叫座,而有的產品缺無人問津,甚至中途夭折,產品品質終是由人來決定的。而當某個團隊請到一個牛人指導時候,其產品品質往往有大幅度的提升。而某個產品很糟糕的時候,回頭看看他的開發(fā)團隊,通常是整體表現(xiàn)為能力欠缺。

因此軟件開發(fā)團隊想要開發(fā)出好的軟件產品,首先要做的是挑戰(zhàn)團隊成員自身的局限。團隊成員的自大,高傲,拒絕合作,敵視,盲目自信都不利于團隊的成長,更不利于自身的成長。而一個開放的心態(tài),虛心的態(tài)度,崇尚交流的風氣將更利于團隊成員相互接受,互助合作,更容易完成任務。當團隊形成注重成長的風氣后,產品品質將會得到不斷的提升,團隊成員在自身成長的同時,也會帶動其他成員的成長,這是有示范效應的。當短的木條和長的木條都在開始長長的時候,木桶能裝的水是在增加,而對于開發(fā)團隊來說,是能開發(fā)出品質更高的產品,他所能解決的問題域更廣,經驗更豐富,更懂得如何去開發(fā)出一個好的產品。

團隊是不停的發(fā)展變化的,成員的新增,辭職是不可避免的。對于新進員工,應有一個"入模子" 的過程。聯(lián)想柳總總結出來的"入模子"過程,很形象的說明我們是要把新進員工的身上打上自己的標記,讓大家有共同的語言,共同的行事規(guī)則,共同的理念,共同遠景。團隊文化,氛圍如果不能影響新進員工進入共同頻道,這個團隊建設是失敗的,不能延續(xù)的,遲早會出問題。要形成自己的氛圍,理念不是一早一夕能作到的,團隊建設者應更多的關注到這個問題上來。這是形成團隊戰(zhàn)斗力的關鍵。也是凝聚團隊的關鍵。對不能溶入共同頻道的人,應堅決的予以清除。

三.職業(yè)生涯規(guī)劃

堡壘往往是從內部被攻破的,軟件開發(fā)團隊也會在發(fā)展過程遇到因為內部問題而邦分崩離兮。重要的內部問題,我認為是團隊成員的職業(yè)生涯規(guī)劃問題。一個團隊,其管理者職位總是少數(shù),而目前各個公司沒有明確的職業(yè)生涯規(guī)劃,只有走上管理之路,才能有大的發(fā)展,也造成了千軍萬馬過管理這條獨木橋。人的趨利性使人們只向升職一條獨木橋上鉆。聰明的人開始團結領導,能干的人尋找其它機會, 程序員開始投簡歷,終團隊走向沒落。因此員工的職業(yè)生涯規(guī)劃不能走千軍萬馬過管理這條獨木橋之路,而是要條條大路通羅馬。在國外的一些軟件開發(fā)企業(yè)里,程序員一樣可以拿到相當于副總裁,高級管理人員才能拿到的薪水, 這樣程序員才能安心的解決計算機問題,而不是去解決人際問題。軟件開發(fā)團隊不同其他團隊,軟件開發(fā)中有越多的老戰(zhàn)士在第一線作戰(zhàn),產品成功的概率越大。而我們往往做的是把一個技術好手提升為管理者,再招上十個八個人,來開發(fā)一個漏洞百出的產品,導致技術得不到延續(xù),管理也是一塌糊涂的結果。

團隊成員都能專注于做自己的事情,則這個團隊的開發(fā)效率將越來越高,產品品質越來越好。我認為微軟軟件開發(fā)的成功,也在于此,一個有著數(shù)十年軟件開發(fā)經驗的團隊和一個剛剛建立的團隊開發(fā)出來的產品當然是不可同日而語。《軟件開發(fā)的科學與藝術》一書中提到,微軟NT4前的產品經常會導致無故重啟,死機,但是現(xiàn)在微軟的產品越來越少看到這種現(xiàn)象,主要原因是微軟大量的程序員開發(fā)經驗越來越豐富,測試經驗越來越豐富的結果。可見團隊的延續(xù)性是多么重要;團隊成員的專注是多么重要。而這種專注取決于管理者如何來解決團隊成員的"前途"問題。

團隊成員的發(fā)展途徑,我認為可以有如下幾個:行業(yè)專家,技術專家,設計師,架構師,系統(tǒng)分析師,高級程序員,項目經理, 產品經理。團隊每個人都將有足夠的選擇機會。完全可以根據(jù)自己的特色選擇。喜歡管理的可以向項目經理,產品經理看齊,喜歡技術的可以專注于技術,走技術專家,設計師,分析師之路。終形成百花齊放的格局。在技術上也可保持連續(xù)性,并可不斷的加深技術底蘊。終技術,管理都將得到大的發(fā)展。

上一頁12下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd