形成新的驅(qū)動(dòng)力
維護(hù)所承受的最大壓力來源于它的目標(biāo)設(shè)定。所謂格局決定結(jié)局。何以形成更為有利的格局?
首先軟件維護(hù)團(tuán)隊(duì)的技術(shù)應(yīng)當(dāng)與開發(fā)團(tuán)隊(duì)是相通的,為什么不能加以利用?維護(hù)過程中發(fā)現(xiàn)的問題和識(shí)別出來的需求,是不是可以導(dǎo)入到開發(fā)團(tuán)隊(duì)中去?
相對(duì)于開發(fā)團(tuán)隊(duì)/項(xiàng)目團(tuán)隊(duì),如果維護(hù)團(tuán)隊(duì)時(shí)間壓力相對(duì)小(取決產(chǎn)品類型),就有機(jī)會(huì)對(duì)問題進(jìn)行深入的研究,特別是領(lǐng)域相關(guān)的知識(shí)。深入研究問題以降低副作用本身也是維護(hù)團(tuán)隊(duì)最需要做的。這一優(yōu)勢(shì)正是可以加以發(fā)揮的特點(diǎn),就是交給維護(hù)團(tuán)隊(duì)深入挖掘問題并尋求解決方案的職責(zé)。研究成果再以文檔或者技術(shù)分享的形式移轉(zhuǎn)到研發(fā)團(tuán)隊(duì)。
另外一點(diǎn),就是由維護(hù)團(tuán)隊(duì)參予開發(fā)團(tuán)隊(duì)的走查,包括設(shè)計(jì)、文檔以及代碼,也會(huì)為團(tuán)隊(duì)的整體能力提升提供莫大的助力。
維護(hù)團(tuán)隊(duì)建設(shè)
正因?yàn)榫S護(hù)團(tuán)隊(duì)的約束大,團(tuán)隊(duì)建設(shè)的難度也更大。最大難題就是人員穩(wěn)定性的問題。如何選對(duì)人進(jìn)入維護(hù)團(tuán)隊(duì)?首先做事細(xì)致嚴(yán)謹(jǐn),既要甘于平淡,又要技術(shù)能力達(dá)標(biāo),這樣的人是可遇不可求的,而且常有變化。治水在疏而不在堵。個(gè)人覺得有四個(gè)要點(diǎn):
一.盡量選擇合適的人進(jìn)入維護(hù)團(tuán)隊(duì)。雖然難,但還是要努力去做。一定要清楚什么是首要條件,什么是次要條件。比如技術(shù)能力是不是首要條件,取決于團(tuán)隊(duì)目標(biāo)。
二.建立良好的輪崗制度,好進(jìn)好出,至少可以保證順暢地在維護(hù)團(tuán)隊(duì)和開發(fā)團(tuán)隊(duì)間輪調(diào)。出入的條件則靈活設(shè)置。
三.建立技術(shù)交接流程,降低因?yàn)槿藛T流動(dòng)而引發(fā)的風(fēng)險(xiǎn)。
四.結(jié)合第二點(diǎn)的輪崗制度,可以吸收新進(jìn)技術(shù)人員和實(shí)習(xí)生到維護(hù)團(tuán)隊(duì),在降低工作負(fù)荷的同時(shí),也可以活躍團(tuán)隊(duì)氣氛。
這些做法可以使得維護(hù)團(tuán)隊(duì)相對(duì)開發(fā)團(tuán)隊(duì)或項(xiàng)目有其獨(dú)特的優(yōu)勢(shì),也就能吸引一些人。其關(guān)鍵是要維持一種公平性。亞當(dāng)斯的公平理論提到一個(gè)感受的公平的條件就是他是否認(rèn)可自己的所得與投入的比例。也就是說如果以項(xiàng)目團(tuán)隊(duì)的管理方式來帶維護(hù)團(tuán)隊(duì),維護(hù)團(tuán)隊(duì)成員能否感受公平呢?
當(dāng)然這些做法還只是治標(biāo),并不治本。要治本,還要再探討團(tuán)隊(duì)目標(biāo)的設(shè)定。
維護(hù)團(tuán)隊(duì)中的決策
如果一個(gè)維護(hù)項(xiàng)目終止,就可能導(dǎo)致維護(hù)團(tuán)隊(duì)的解散。早一點(diǎn)預(yù)見到維護(hù)項(xiàng)目的前景,會(huì)讓管理者有充分的準(zhǔn)備時(shí)間。
軟件維護(hù)團(tuán)隊(duì)的目標(biāo)和流程
軟件維護(hù)團(tuán)隊(duì)被賦予維護(hù)已交付產(chǎn)品的職責(zé),主要工作內(nèi)容是分析修復(fù)新發(fā)現(xiàn)的Bug, 以及客戶對(duì)軟件提出一些調(diào)整,具體的內(nèi)容要視維護(hù)合約而定?傊蛎词切扌扪a(bǔ)補(bǔ),要么就是錦上添花。因?yàn)槭且呀桓兜漠a(chǎn)品,其變更是開發(fā)團(tuán)隊(duì)開發(fā)過程中所花費(fèi)的成本的2~25倍,這在軟件工程領(lǐng)域早有定論(可以參考這里和這里)。如果因?yàn)樽兏肓诵碌腂ug,則表示要完成至少兩次變更,成本則是開發(fā)過程修復(fù)的4~50倍。為了保證變更的質(zhì)量,降低風(fēng)險(xiǎn)和不一致性成本,軟件維護(hù)團(tuán)隊(duì)的流程通常較開發(fā)團(tuán)隊(duì)要嚴(yán)格地多,管理上也要細(xì)致許多。