在考慮如何提高產(chǎn)品質(zhì)量前,我們需要明白什么是產(chǎn)品的質(zhì)量,對(duì)于很多從事軟件開發(fā)或者互聯(lián)網(wǎng)開發(fā)的工程師或者項(xiàng)目經(jīng)理來(lái)說(shuō),第一反應(yīng)估計(jì)應(yīng)該是:“產(chǎn)品的質(zhì)量就是產(chǎn)品的缺陷率“。這也無(wú)可厚非,這幫哥們都讓績(jī)效考核、KPI跟折騰的。其實(shí)真正的產(chǎn)品質(zhì)量應(yīng)該和用戶滿意度畫上等號(hào)。考量一個(gè)產(chǎn)品是否滿足質(zhì)量要求應(yīng)該就是考量的一個(gè)產(chǎn)品是否滿足用戶的要求,當(dāng)然這里的用戶是一個(gè)邏輯的概念,指產(chǎn)品的典型目標(biāo)用戶。
所以要提高產(chǎn)品質(zhì)量就是要提高產(chǎn)品的用戶滿意度。這是一個(gè)系統(tǒng)的工程,涵蓋了產(chǎn)品設(shè)計(jì),產(chǎn)品開發(fā)的所有階段和方方面面?;跁r(shí)間和篇幅的考慮,本文只想對(duì)軟件本身的質(zhì)量來(lái)進(jìn)行討論。
一:軟件的質(zhì)量是規(guī)劃出來(lái)的,而不是測(cè)試出來(lái)。
個(gè)人認(rèn)為,項(xiàng)目的計(jì)劃階段已經(jīng)決定了軟件的質(zhì)量。很多項(xiàng)目人員和項(xiàng)目經(jīng)理一直對(duì)做軟件的開發(fā)計(jì)劃異常的不理解,認(rèn)為在軟件的過(guò)程種各種風(fēng)險(xiǎn)發(fā)生的可能太大,計(jì)劃永遠(yuǎn)都跟不上變化。而我認(rèn)為,這里的軟件開發(fā)計(jì)劃并不僅僅是一個(gè)時(shí)間計(jì)劃。而是讓項(xiàng)目經(jīng)歷在計(jì)劃的過(guò)程種綜合考慮項(xiàng)目的實(shí)施的各個(gè)方面,包括范圍,進(jìn)度,質(zhì)量,風(fēng)險(xiǎn)等,從而形成一份包括進(jìn)度計(jì)劃,質(zhì)量保證計(jì)劃和風(fēng)險(xiǎn)計(jì)劃的項(xiàng)目管理計(jì)劃。在這里根據(jù)項(xiàng)目的情況,這些計(jì)劃可以不以書面的形式來(lái)進(jìn)行體現(xiàn)。然而項(xiàng)目經(jīng)理一定要經(jīng)過(guò)充分的思考和規(guī)劃。
為保證軟件產(chǎn)品的質(zhì)量,項(xiàng)目經(jīng)理在這個(gè)階段要考慮的因素包括但不限于如下各個(gè)方面
1:定義項(xiàng)目的質(zhì)量目標(biāo),這些指標(biāo)包括功能指標(biāo),性能指標(biāo)等等。項(xiàng)目也可以根據(jù)公司的情況為各個(gè)研發(fā)活動(dòng)定義質(zhì)量目標(biāo)。比如設(shè)計(jì)階段的Bug檢出率等等。質(zhì)量目標(biāo)是基于,質(zhì)量保證活動(dòng)都要依據(jù)目標(biāo)進(jìn)行建設(shè)。
2:項(xiàng)目采用的軟件開發(fā)流程。采用什么樣的流程取決了公司的標(biāo)準(zhǔn)流程和裁剪規(guī)范以及軟件項(xiàng)目的難以程度。在這個(gè)研發(fā)活動(dòng)中項(xiàng)目經(jīng)理需要根據(jù)自己的經(jīng)驗(yàn)判斷項(xiàng)目需要的質(zhì)量保證過(guò)程。比如是否需要引入單元測(cè)試,是否需要測(cè)試用例等等
3:項(xiàng)目的三要素的平衡,我們之前說(shuō)過(guò),產(chǎn)品的質(zhì)量=產(chǎn)品的用戶滿意度。所以對(duì)不同的產(chǎn)品用戶的滿意度是不同的,比如電信產(chǎn)品的質(zhì)量要求和互聯(lián)網(wǎng)產(chǎn)品的質(zhì)量要求是不同的,項(xiàng)目經(jīng)理需要能夠根據(jù)產(chǎn)品的用戶滿意素來(lái)決定在項(xiàng)目的三要素之間來(lái)進(jìn)行平衡。
4:項(xiàng)目的質(zhì)量保證計(jì)劃,這個(gè)研發(fā)活動(dòng)應(yīng)該是SQA的職責(zé),但是很多企業(yè)都沒(méi)有設(shè)立這個(gè)職位,在沒(méi)有這個(gè)職位的時(shí)候,默認(rèn)應(yīng)該由項(xiàng)目經(jīng)理來(lái)承擔(dān)這個(gè)職責(zé)。項(xiàng)目經(jīng)理要根據(jù)之前定義的項(xiàng)目目標(biāo)來(lái)定義質(zhì)量保證活動(dòng)和質(zhì)量保證計(jì)劃。項(xiàng)目質(zhì)量保證計(jì)劃需要依據(jù)項(xiàng)目定義的軟件開發(fā)流程,是對(duì)軟件開發(fā)流程種質(zhì)量活動(dòng)的更詳細(xì)的定義。
不管你采用的CMM還是敏捷的軟件開發(fā),以上活動(dòng)都需要進(jìn)行,只不過(guò)進(jìn)行的復(fù)雜程度和研發(fā)活動(dòng)的交付不同罷了,最基本的要求是項(xiàng)目經(jīng)理要在自己的腦子里面考慮過(guò)以上事情。
從管理上來(lái)說(shuō)“軟件的質(zhì)量是規(guī)劃出來(lái)的,而不是測(cè)試出來(lái)”講的是流程。決定軟件產(chǎn)品質(zhì)量的另外一個(gè)關(guān)鍵要素是人。這里的人包括了技能這個(gè)要素。在網(wǎng)絡(luò)上關(guān)于CMM和敏捷開發(fā)的討論層出不窮,基于我對(duì)它們的極端的理解。CMM強(qiáng)調(diào)的是流程。流程為王。而敏捷開發(fā)更多的是強(qiáng)調(diào)人的作用。當(dāng)然這是一個(gè)極端的理解,它們的區(qū)別主要體現(xiàn)在側(cè)重點(diǎn)的不同上。
二:產(chǎn)品是人做到的,所以產(chǎn)品的質(zhì)量完全取決于產(chǎn)品的開發(fā)人員。
然而對(duì)人的管理是一門藝術(shù),要遠(yuǎn)復(fù)雜與一切流程和規(guī)范。所以這部分技巧的整理是一個(gè)難題,有點(diǎn)只可意會(huì)不可言傳的味道。再這里我只能做一個(gè)粗層次的介紹
1:建立團(tuán)隊(duì)文化
建立團(tuán)隊(duì)文化非常的重要,因?yàn)橹匾砸脖容^難以建立。你要提高產(chǎn)品的質(zhì)量,首先要在您的團(tuán)隊(duì)里面建立一種負(fù)責(zé)任的團(tuán)隊(duì)文化,這只是其中一點(diǎn),也是最重要的一點(diǎn)。
2:提高團(tuán)隊(duì)的技能,建立學(xué)習(xí)型組織
培養(yǎng)下屬永遠(yuǎn)是一個(gè)Leader的主要職責(zé),您需要通過(guò)努力把您的團(tuán)隊(duì)內(nèi)建設(shè)成為一個(gè)學(xué)習(xí)型的組織,進(jìn)而形成進(jìn)取的團(tuán)隊(duì)文化,如何建立學(xué)習(xí)型組織請(qǐng)參考:
總之,如果您要提高您的產(chǎn)品質(zhì)量,你可以從兩方面下手,第一:建立一套合適的產(chǎn)品開發(fā)體系,可以參考IPD 。第二:進(jìn)行團(tuán)隊(duì)建設(shè),建立高效能的團(tuán)隊(duì)。
【?發(fā)表評(píng)論?0條?】