軟件研發中的沖突及解決之道

來源: 程序員  發布時間: 2011-06-14 13:46  閱讀: 2310 次  推薦: 0   原文鏈接   [收藏]  

  

  深圳易方數碼科技新技術研究主管,微軟MVP時永安認為:

  軟件項目在研發過程中牽涉到很多利益相關方,這些相關方因為關注角度的不同,會產生很多矛盾沖突。這些沖突,輕則打擊士氣,拖延項目的進度,重則使項目無法正常進行。在我這些年的軟件項目管理工作中,遇到過各種各樣的沖突,其中最常見的有:項目開發周期的沖突和團隊內部人際關系的沖突。

  軟件項目的研發周期,本來是應該根據項目工作量和開發人員情況來估算的。但現實中,往往會受到市場部門以及公司高層的干涉。他們從產品銷售的角度考慮,希望軟件產品越早發布越好,在他們眼里軟件開發彈性極大,只要給的壓力足夠大,就可以成功地將開發周期縮短。作為開發人員,我很清楚如果按照他們的要求隨意確定開發周期,就意味著無休止的加班、低沉的士氣以及進度的一再拖延。這就有了沖突,因為雙方都覺得自己有道理而不愿讓步。出現這種情況時,互相妥協是唯一的辦法。項目主管可以通過安排適量的加班,削減或者推遲部分功能的辦法來做出一定的讓步,但這種妥協一定要有底線,過度的妥協會導致一個無法達成的開發進度計劃,對項目造成極大的傷害。

  如果說上述沖突是外患的話,那項目團隊內部的人際沖突就是內憂。軟件開發人員往往表面看似低調,其實內心驕傲,他們對自己的智力充滿了自信,最無法容忍的就是自己的工作成果被否定。進行Code Review及Bug責任人確定時,最容易引起內部沖突。處理這種沖突有賴于項目主管的管理技巧以及公平的處事原則,同時把對事不對人的工作態度灌輸給項目中的每個成員。沖突發生時,既要堅持原則,有理有據地作出分析,也要注意照顧雙方的情緒,多做安撫工作。

  總之,軟件研發過程中的沖突無法避免,但也不是洪水猛獸,只要積極應對,就可以將負面影響降到最低。

  

  IBM中國研發中心軟件工程師崔康認為:

  軟件研發團隊會不可避免地遇到各種主觀或客觀的沖突,如何較好地解決矛盾是團隊成熟與否的重要標志。我選擇了兩個典型案例,希望對讀者有所啟發。

  時區/地域沖突

  這是一種客觀沖突。全球性的研發團隊包含了來自不同時區和地域的工程師,在這種情況下,應該采用哪些協作方法來降低沖突帶來的負面影響?處理這種沖突的關鍵在于提高溝通的質量,一方面要盡量不影響各地工程師的正常作息,另一方面要通過合適的安排來最大限度地利用時間差。我有以下建議。

  1. 團隊例會時間由各個地區的工程師共同商議確定,選擇一個大家都醒著的時間段,如果困難,則采用定期輪換的方式讓大家公平地享受熬夜。開會采用視頻或者電話形式,不鼓勵使用文字交流,書面會議紀要由團隊成員輪流記錄。會議之前確定議題方案、備選方案、決策規則等,提前發給團隊成員,開會時直奔主題,不延時。會議紀要必須包含下一步的行動計劃,具體到每個人,得到大家認可后立即散會。

  2. 工作安排上,盡量利用時間差。換句話說,在某時區白天工作的成員要把當天的結果通過郵件等書面形式及時反饋給另一時區(稍后上班)的同事,形成良性循環,以便大家都能夠在自己上班時看到前一時區同事的反饋并據此開展工作,然后在自己下班時將進展和問題反映給后面時區的同事。

  新舊勢力沖突

  這是一種主觀沖突。隨著技術的不斷發展,研發團隊經常嘗試引入一些技術或者方法,在這個過程中,新舊勢力會發生沖突。當事一方是項目經理或者架構師,他們對新技術充滿信心,并想盡快實踐;另一方是團隊普通成員,他們已經習慣了手頭的老技術,應用自如,對新技術的實際作用存在疑問,不愿嘗試。如果不能很好地解決,必然導致雙方互相埋怨,新技術推廣艱難。分析其中原因,除了必要的溝通,還需務實的計劃和實踐。我有以下建議。

  1. 引入新技術和方法前,通過學習會議等形式讓所有成員對新技術有充分的了解,但不要強制他們認可并馬上實踐。

  2. 制訂循序漸進的增量引入計劃,不要立即整個拋棄老技術,請團隊成員一點一滴地試用新技術,逐步習慣甚至喜歡上它。

  3. 在技術過渡階段,團隊負責人和架構師等要實踐其中,不能置身事外指指點點,及時聽取團隊各個成員的反饋,并作出相應調整。

  4. 定期召開團隊會議,讓成員根據自己的實踐結果對新舊技術做評價對比,培養認可新技術的氛圍。時機成熟后,大規模采用新技術。

  5. 新技術引入后期階段,團隊管理層對成員表現進行肯定和獎勵。

  

  趨勢科技測試工程師張小明認為:

  有人的地方就有沖突和斗爭,不管你在,還是不在,只要有人在,沖突就在那里,不多不少。作為一名普通的軟件工程師,其實更愿意稱自己是一枚程序員。我在國企、私企、外企都寫過程序,編譯過、運行過、調試過,可謂撒過汗、通過宵也掉過肉,在軟件研發過程中自然也經歷過大大小小不同類型的沖突。不同的企業有不同的文化(沒有文化也是一種文化):國企的沖突往往被套上了制度的枷鎖,私企的沖突往往和大當家的為人處世和經營理念有關,而外企的沖突往往不分尊卑,帶有天馬行空、各成一派的自由風格。

  我曾經在金融軟件項目中做研發,該項目的開發模式是與客戶(某大型國有銀行)的開發部門共同合作,兩撥人在一起辦公,我們有一個項目經理,銀行方面也有一個項目經理。雖然研發的主導力量在我們這邊,但從理論上講,人家是客戶,我們是上門服務。沖突緣起于某次項目趕進度,對方項目經理要求加班,而我們有些成員不太情愿加班。這時對方經理要求自愿加班,而我們的項目經理帶頭拒絕加班,根本不給客戶情面,于是導致客戶非常憤怒。接著沖突升級,對方經理提出要致電我們老板要求當家的出面強制加班,結果沖突再次升級,老板的出面還是沒能讓我們項目經理接受加班。后來團隊里抵制加班的相關同事被通報批評,并且被強制在客戶面前書面道歉,而這件事的直接后果是這個項目組中的我們公司的研發人員全部跳槽。這是一次沒有善終的沖突。

  作為一名普通工程師,我認為,既然從事這個行業,就應該端正自己的職業態度,你是為公司打工,更是為自己攢人品。不管當下的待遇或境遇有多差,我們可以選擇其他方式解決或者高貴地離開,至少不應該把怨氣發到客戶的身上,但同時也必須從制度上杜絕以強凌弱的現象發生,比如違約金這種東西。

  上面舉的例子比較偏激,而且我恰恰認為沖突不應該刻意去避免,優秀的團隊文化應該鼓勵適當的沖突,并進行引導,然后化解,而不是壓抑住沖突(壓抑久了就可能會導致上面的杯具再次發生)。作為一名程序員,我堅持認為良性的碰撞和沖突能產生火花和靈感,甚至是解決方案,但實現這些需要思考的前提是:如何構建和諧、優秀的團隊氛圍,從工程師的角度來看,我認為就是端正自己的職業態度。

0
0
 
標簽:項目管理
 
 

文章列表

全站熱搜
創作者介紹
創作者 大師兄 的頭像
大師兄

IT工程師數位筆記本

大師兄 發表在 痞客邦 留言(0) 人氣()