我眼中的軟件質(zhì)量管理
一條重要的管理公理這樣說到:“未經(jīng)跟蹤的工作等于沒做脸侥⌒猎铮”
軟件的質(zhì)量管理也是這樣。我理解這句話的意思是:首先迈窟,要建立一個(gè)軟件質(zhì)量的管理制度私植,然后有人跟蹤軟件開發(fā)活動(dòng),確保軟件開發(fā)活動(dòng)滿足已建立的管理制度要求菠隆。
- 建立制度
建立質(zhì)量管理制度兵琳,這是高層管理者的職責(zé)。因?yàn)橹挥懈邔庸芾碚咦钋宄浖某杀竞唾|(zhì)量之間的利害關(guān)系骇径,只有高層管理者才能做出平衡二者關(guān)系最有利于組織的決策。當(dāng)然者春,高層管理者要做出這個(gè)正確的決策破衔,還要依賴于技術(shù)層、管理層以及財(cái)務(wù)的支持钱烟,依賴于他們提供的準(zhǔn)確的信息晰筛。
質(zhì)量管理制度必須進(jìn)行持續(xù)改進(jìn)。因?yàn)樾碌捻?xiàng)目總會(huì)伴隨著一些新的狀況新的問題出現(xiàn)拴袭,而原有的制度很難處理這些新的情況读第,只有管理制度進(jìn)行不斷地改進(jìn),不斷地完善拥刻,才能適應(yīng)新的狀況怜瞒,解決新樣的問題。
好的管理制度不一定是多么完美,但它一定是不斷改進(jìn)的吴汪。
- 監(jiān)督制度
監(jiān)督制度是項(xiàng)目管理者的職責(zé)惠窄。項(xiàng)目管理者監(jiān)督項(xiàng)目進(jìn)展過程中的各項(xiàng)活動(dòng),確保其合規(guī)漾橙,并且具有較高的完成質(zhì)量杆融。但是,如果項(xiàng)目規(guī)模較大霜运,項(xiàng)目成員和項(xiàng)目活動(dòng)較多脾歇,項(xiàng)目管理者不可能獨(dú)自完成所有的監(jiān)督活動(dòng),這時(shí)就需要建立質(zhì)量保證組淘捡,以幫助項(xiàng)目管理者完成監(jiān)督任務(wù)藕各。
監(jiān)督活動(dòng),可以分為對(duì)過程的監(jiān)督和對(duì)產(chǎn)品的監(jiān)督兩類活動(dòng)案淋。
要做好對(duì)過程的監(jiān)督座韵,首先要有一個(gè)定義清晰的過程。過程定義要有入口準(zhǔn)則踢京、輸入誉碴、活動(dòng)描述、輸出瓣距、出口準(zhǔn)則等內(nèi)容黔帕。有了清晰的過程定義,項(xiàng)目管理者或質(zhì)量保證組就能夠依據(jù)這些清晰的要求去監(jiān)督蹈丸、判斷每個(gè)活動(dòng)是否遵循已定義的過程成黄。過程監(jiān)督的難點(diǎn)是要確保過程的有效性。如果過程缺乏有效性逻杖,即使把定義的過程活動(dòng)按部就班地執(zhí)行了奋岁,也不會(huì)有過程定義所期望的結(jié)果。要能夠較準(zhǔn)確地判斷過程的有效性荸百,需要出口準(zhǔn)則有個(gè)很好的定義闻伶。如果僅僅是“完成需求規(guī)格說明”,就很難判斷過程完成的質(zhì)量够话;如果說“完成的需求規(guī)格說明通過評(píng)審”蓝翰,這個(gè)過程的有效性就會(huì)更值得相信。
要做好產(chǎn)品的監(jiān)督女嘲,首先要有好的技術(shù)規(guī)范畜份,以明確好的工作產(chǎn)品應(yīng)滿足的要求。同時(shí)欣尼,應(yīng)具有好的指南和模板爆雹,幫助開發(fā)人員更好更快地完成工作產(chǎn)品。而這個(gè)技術(shù)規(guī)范,也是質(zhì)量保證組監(jiān)督工作產(chǎn)品的標(biāo)尺顶别。評(píng)審和測(cè)試是產(chǎn)品監(jiān)督的兩個(gè)有效手段谷徙。有效的評(píng)審,需要同行專家的積極參與驯绎,并且有定義清晰的評(píng)審?fù)ㄟ^準(zhǔn)則完慧,這樣才能給出開發(fā)人員依據(jù)規(guī)范生產(chǎn)且通過質(zhì)量保證組檢查的產(chǎn)品遺留的缺陷。有效的測(cè)試剩失,需要做好測(cè)試計(jì)劃屈尼,設(shè)計(jì)充分的有效和無效的測(cè)試用例,分析測(cè)試結(jié)果拴孤,在滿足合理的測(cè)試終止條件后脾歧,完成測(cè)試。
有效演熟,說起來容易鞭执,做起來很難。如果評(píng)審只停留在模板芒粹、規(guī)范的符合性上面兄纺,不去深入探究對(duì)產(chǎn)品質(zhì)量屬性是否有影響,這樣的問題發(fā)現(xiàn)和糾正的再多化漆,也沒有什么用處估脆。所以,軟件質(zhì)量管理座云,必須要和質(zhì)量屬性掛鉤疙赠。
軟件質(zhì)量屬性可以分為對(duì)用戶最重要的屬性和對(duì)開發(fā)者最重要的屬性兩種。
對(duì)用戶最重要的屬性包括:
- 有效性
- 高效性
- 靈活性
- 完整性
- 互操作性
- 可靠性
- 健壯性
- 可用性
對(duì)開發(fā)者最重要的屬性包括:
- 可維護(hù)性
- 可移植性
- 可重用性
- 可測(cè)試性
在制定有效的規(guī)范朦拖、指南圃阳、準(zhǔn)則、模板時(shí)璧帝,要考慮本組織對(duì)質(zhì)量屬性的要求限佩,這樣,依據(jù)這些規(guī)范生產(chǎn)出來的軟件產(chǎn)品才會(huì)真正地符合組織對(duì)于軟件產(chǎn)品質(zhì)量的要求裸弦。這也就是我們軟件質(zhì)量管理追求的目標(biāo)吧。