最近陪家人逛了幾集電視連續(xù)劇《情迷天使》和《玉觀音》,《玉觀音》算是重播了,只是以前也沒注意,現(xiàn)在看了幾集,真是看不下去了,其中給我最大的感受就是一群人,一時(shí)的沖動(dòng),種下惡果,然后前方百計(jì)的企圖改變或是掩蓋這個(gè)結(jié)果,苦苦掙扎著。既然希望有個(gè)嚴(yán)肅的結(jié)果,行為就一定要嚴(yán)謹(jǐn)。那么是否行為嚴(yán)謹(jǐn)就一定能有嚴(yán)肅的結(jié)果。

  由此我一直在想著,行為決定結(jié)果的問題,也想著這其中和軟件開發(fā)管理之間存在的緊密關(guān)系。任何一個(gè)項(xiàng)目,就算是最資深的開發(fā)組長,最團(tuán)結(jié)優(yōu)秀的開發(fā)團(tuán)隊(duì),也不能保證開發(fā)過程一定能按計(jì)劃完全順利進(jìn)行,更別說放任計(jì)劃隨意進(jìn)行的開發(fā)了(實(shí)際上這樣進(jìn)行開發(fā)的項(xiàng)目很多)。這根源到底是什么呢?我想說的就是可控性,如何實(shí)現(xiàn)可控性,是項(xiàng)目計(jì)劃工具—Microsoft Project 2002,是軟件開發(fā)管理工具—美國Intersolv 公司的PVCS,是軟件配置管理工具—ClearCase, 是畫出優(yōu)美項(xiàng)目周期的Viso,不,都不是,各位別見笑,我并沒有看輕它們的意思,這些都是舉世之作,不是我狂妄的地方。之所以說不是,是因?yàn)檫@完全是兩碼子事,它們進(jìn)行的是宏觀的調(diào)控,不夠細(xì)分,控制不到細(xì)節(jié)。結(jié)果是由每個(gè)細(xì)節(jié)的過程來決定的,要控制項(xiàng)目就要控制到每個(gè)開發(fā)的細(xì)節(jié),所以今天要說的是微軟的開發(fā)管理理念之一—BMS 缺陷管理理念(這里說的是廣義的缺陷管理) 好好了解如何運(yùn)用這個(gè)理念和工具真正掌控細(xì)節(jié),從而實(shí)現(xiàn)開發(fā)的最優(yōu)路徑。

  (一)BMS 缺陷管理的作用

  保持進(jìn)度、保證質(zhì)量

  我們都知道,管理的目標(biāo)是爭取讓每個(gè)事情都能按時(shí)完成并保證質(zhì)量,使“客戶滿意、公司獲利”,其實(shí)還有一個(gè)當(dāng)然就是“員工受益”,通過軟件開發(fā)管理提高,提高軟件質(zhì)量,創(chuàng)造效益,最終達(dá)到大家滿意。

  (二)BMS 缺陷管理如何運(yùn)作

  1、如何保持進(jìn)度

  缺陷管理理念講究的是將工作細(xì)分成小模塊甚至是最小的單元,列出要完成的模塊,每個(gè)模塊工作安排具體還細(xì)分到要完成的每個(gè)步驟,具體分配到人。比如軟件項(xiàng)目中的一個(gè)小模塊就可以分成:需求(或bug)、指派、開發(fā)、測試、構(gòu)造、驗(yàn)收、發(fā)布。項(xiàng)目主管可以把每個(gè)小模塊分配到開發(fā)組長,開發(fā)組長可以繼續(xù)指派到每個(gè)開發(fā)人員手中,開發(fā)中的每個(gè)人都有他對應(yīng)的位置,每個(gè)人都可以輕松看到他在每個(gè)模塊中的任務(wù)內(nèi)容及時(shí)間安排。主管也很容易了解到每個(gè)人完成的情況,從而可以隨時(shí)修正方向,及時(shí)調(diào)整工作安排,保持項(xiàng)目不偏不離繼續(xù)按計(jì)劃進(jìn)行。這也就是缺陷管理真正的精髓:將原來隱含的關(guān)系變成清晰的、易于管理的關(guān)系,使項(xiàng)目開發(fā)更有計(jì)劃和有效地運(yùn)行。

  2、如何保證質(zhì)量

  既然要讓工作具有質(zhì)量,那么就要極力預(yù)防錯(cuò)誤的發(fā)生,就算發(fā)生了,也要能及早發(fā)現(xiàn),及時(shí)修正。缺陷管理的理念就是每個(gè)環(huán)節(jié)都有相對應(yīng)的人員在進(jìn)行稽核,一直循環(huán),直到達(dá)到要求為止,每個(gè)開發(fā)人員分別完成自己的功能,針對要修改的任務(wù)進(jìn)行修改,每個(gè)測試人員針對可測試的功能進(jìn)行測試,測試不合格,再重新返回修改。把bug扼殺在交給客戶使用之前。我們知道開發(fā)過程中,bug越遲清除,時(shí)間花得越多,立刻除蟲,時(shí)間是節(jié)省最多的(既然有時(shí)間還不如聽聽音樂,侃侃大山),也不用到后面弄得渾身乏術(shù),筋疲力盡,連對開發(fā)軟件的興趣都沒了。甚至還被客戶投訴,連獎(jiǎng)金都沒了。

  3、管理文檔

  開發(fā)中還經(jīng)常出現(xiàn)的就是項(xiàng)目組把工作進(jìn)度報(bào)告看成是一種很重的負(fù)擔(dān),要么寫不出來,要么要花很多時(shí)間去寫,為什么要特別說很重的,因?yàn)樨?fù)擔(dān)都是有的,但還是要寫,沒辦法,可是如果每天要花3~4個(gè)小時(shí)寫報(bào)告,正常的開發(fā)工作卻不得不加班做,那么就要想想辦法了,畢竟我們是做項(xiàng)目的,不是寫報(bào)告的。缺陷管理的理念就是清楚的紀(jì)錄每個(gè)問題的過程狀態(tài),中間產(chǎn)生的文檔可以通過系統(tǒng)隨時(shí)記錄在案,最高效率產(chǎn)生文檔,一目了然,完成哪些模塊,更正哪些問題,基本上報(bào)告也就寫完了。文檔的管理還有另一個(gè)好處就是容易翻閱歷史資料,減少內(nèi)耗和誤差,這點(diǎn)大家體會(huì)應(yīng)該也很深,因?yàn)楹芏嗉?xì)節(jié)的部分,是不會(huì)記錄在案的,當(dāng)時(shí)為什么要這樣做,那樣改,由誰改,全憑腦袋記憶,無從查證,運(yùn)用BMS缺陷管理,可以輕松解決這一點(diǎn)困擾。

  (三)如何選用工具進(jìn)行缺陷管理

  開發(fā)管理過程不是操作復(fù)雜,就說明管理就是好;也不是稿紙寫一寫,會(huì)議開一開,就可以。最關(guān)鍵的是適合,看得見,管得著(不是管人哦,注意是管事)。如何跟蹤,自然靠的就是軟件,那么就稍微介紹一下國外已經(jīng)非常流行、國內(nèi)剛開始的缺陷管理工具。現(xiàn)在網(wǎng)上可以查得到的缺陷管理軟件大部分是英文版的,也有2~3個(gè)是中文版的,有要收費(fèi)的,有免費(fèi)提供的。但無論如何,比較好的缺陷管理系統(tǒng)應(yīng)該具備下列的優(yōu)點(diǎn)

 1、 安裝簡易,操作簡易

  2、 支持開發(fā)、構(gòu)建、測試、驗(yàn)收多重迭代

  3、 支持項(xiàng)目經(jīng)理全程追蹤督促

  4、 支持開發(fā)組長、測試組長多級指派

  5、 完整的追蹤信息展現(xiàn)

  6、 支持發(fā)布版本的缺陷關(guān)聯(lián)

  7、 Mail實(shí)時(shí)通知缺陷任務(wù)

  有了先進(jìn)的缺陷管理理念和一套好的缺陷管理系統(tǒng),相信項(xiàng)目組長,開發(fā)組長,都可以很輕松的控制整個(gè)開發(fā)的進(jìn)度,時(shí)刻了解開發(fā)的進(jìn)度,保證開發(fā)的質(zhì)量,交出滿意的工作清單。