隨著知識經(jīng)濟時代的到來,各種知識、技術(shù)不斷推陳出新,競爭日趨緊張激烈,市場需求越來越多樣化,使企業(yè)管理層所面臨的情況和環(huán)境極其復雜,在很多情況下,單靠個人能力已很難完全處理各種錯綜復雜的信息并采取切實高效的行動,所有這些都要求組織成員之間進一步相互依賴、相互關(guān)聯(lián)、共同合作。因而團隊精神就顯得越來越重要,尤其是在軟件項目開發(fā)中,這種精神更是發(fā)揮的淋漓盡致。

說到團隊精神,我們首先應該知道什么是團隊。所謂團隊,是指一些才能互補、團結(jié)和諧并為負有共同責任的統(tǒng)一目標和標準而奉獻的一群人。團隊不僅強調(diào)個人的工作成果,更強調(diào)團隊的整體業(yè)績。團隊所依賴的不僅是集體討論和決策以及信息共享和標準強化,它還強調(diào)通過成員的共同貢獻,能夠得到實實在在的集體成果,這個集體成果超過成員個人業(yè)績的總和,即團隊大于各部分之和 。團隊的核心是共同奉獻。這種共同奉獻需要一個使各個成員能夠信服的目標。只有切實可行而又具有挑戰(zhàn)意義的目標,才能激發(fā)團隊的工作動力和奉獻精神,為工作注入無窮無盡的能量。

團隊是應組織外部環(huán)境及組織結(jié)構(gòu)發(fā)生的變化而產(chǎn)生的。隨著組織結(jié)構(gòu)的扁平化和柔性化的發(fā)展趨勢,為了適應不斷發(fā)展變化的外部環(huán)境、迅速對客戶的需求做出反應,組織中的很多工作需要以項目的形式來解決,因而就需要組建臨時性的項目團隊。

光有了項目團隊還不行,如何領導和管理好這個團隊才是最重要的。一個團隊建設和管理的好壞直接影響著整個項目的開發(fā)和實施。那么,什么是團隊管理呢?我們先來看簡單的例子:如果有一車沙從大廈頂上倒下來,對地面的沖擊是不太大的,如果把一整車已凝固成整塊的混凝土從大廈上倒下來,其結(jié)果就大不一樣了。團隊管理就是把一車散沙變成已凝固成整塊的混凝土,將一個個獨立團隊成員變成一個堅強有力的團體,從而能夠順利完成項目的既定目標。沙土需要搭配石頭、鋼筋和水泥等才能形成混凝土,在團隊建設中同樣如此。每個成員的知識結(jié)構(gòu)、技術(shù)技能、工作經(jīng)驗和年齡性別按比例的配置,達到合理的互補,決定了這個團隊的基本要素。有了沙土等基本要素,是否就一定是混凝土呢?沒有水,沒有攪拌,就還不行?;炷林械乃褪且环N良好的團隊氛圍,團結(jié)信任積極向上的工作氣氛。具備了這種氣氛,意味著項目成功了一半。項目主管在團隊管理中相當于一個攪拌機,組織會議、討論、學習、攻關(guān)和休閑等活動,與成員之間形成良好的溝通,最終能形成明智的決策。

其次,開發(fā)文檔在整個項目開發(fā)過程中也占有重要的地位。在軟件項目進度安排中我們已經(jīng)把寫文檔的時間也規(guī)劃進去了,這里雖然是寫文檔,其實是設計程序,整理一下思路與架構(gòu),磨刀不誤砍柴工,這樣在實際寫代碼時會流暢很多,節(jié)省時間,因此可以說真正有思想性的東西都在寫文檔這段時間內(nèi)完成了。當然我們這里的文檔格式不像ISO那樣規(guī)定了條條框框,但對于幾個主要點一般來說是需要說明的。要求寫的文檔能讓他人比較容易地看明白,能把問題講清楚,能反映你的設計思想。軟件計劃中需要寫明的是本項目完成的任務和主要目標,人員的分配和開發(fā)進度的安排;軟件需求規(guī)格說明書主要包括系統(tǒng)流程圖、E-R圖、數(shù)據(jù)流圖、數(shù)據(jù)字典等;軟件設計說明書主要包括功能結(jié)構(gòu)圖和數(shù)據(jù)庫設計,主要描述實現(xiàn)此項目的主要功能之間的關(guān)系以及數(shù)據(jù)庫中各元素和表之間的關(guān)系。

我們從理論上掌握軟件工程,可行性研究,需求分析,形式化說明,總體設計,詳細設計,實現(xiàn),維護,面向?qū)ο蠓椒▽W導論,面向?qū)ο蠓治?,設計,實現(xiàn),還有軟件工程管理,使我們系統(tǒng)的了解軟件工程這門課程。但是理論不是實踐。軟件工程主要講述軟件開發(fā)的道理,基本上是軟件實踐者的成功經(jīng)驗和失敗教訓的總結(jié)。軟件工程的觀念、方法、策略和規(guī)范都是樸實無華的,平凡之人皆可領會,關(guān)鍵在于運用。我們不可以把軟件工程方法看成是諸葛亮的錦囊妙計─—在出了問題后才打開看看,而應該事先掌握,預料將要出現(xiàn)的問題,控制每個實踐環(huán)節(jié),并防患于未然。研究軟件工程永遠做不到理論家那么瀟灑:定理證明了,就完事。

另外這次實驗使我深刻體會到了LEADER的團隊的重要性??梢孕蜗蟮谋扔鳛槭墙?jīng)營一個加工廠或一個飯店,經(jīng)理們可以不必懂技術(shù)。因為他們的常識,以及通過耳聞目睹或者咨詢都能解決實踐中的問題。在軟件領域,技術(shù)的力量是無窮的,一天之內(nèi)就可使整個產(chǎn)業(yè)發(fā)生巨變。也許你在商業(yè)上很精明,但無法保證自己在技術(shù)浪潮中安然無恙。軟件公司的各級經(jīng)理最好既精通技術(shù)又懂管理。 一個出色的領導,加上一支技術(shù)過硬的隊伍,才有可能創(chuàng)造業(yè)績。不能光指望請來孫子或諸葛亮當教練,就能讓弱不禁風的男足去捧世界杯。我們深刻意識到:好兵好將都不是天生的,是后天練出來的;既要學會冷靜地分析問題,又要充滿激情地去工作。

最后也就是開發(fā)過程中的失敗和錯誤。不管是生活或工作,人們都應該向錯誤與失敗學習,目的是讓我們在短暫的健康年華中少犯錯誤、少失敗,多做幾件正確的對社會有貢獻的事導致軟件項目失敗的因素很多,如果不去找借口的話,就會發(fā)現(xiàn)錯誤的根源在自己身上:知識貧乏、才能低下、經(jīng)驗不足、驕傲自負……。我們必須正視自身的不足與缺點,才會學到經(jīng)驗教訓??扇藗兂S刑嗟奶摌s,為了克服心理障礙,白白浪費了很多本該用于創(chuàng)造的精力。我們在遭受項目失敗并開始反省時,不是就事論事地僅把眼光鎖在特定的項目上,而是吃一塹長一智才,使團隊少犯同樣的錯誤。