軟體專案質量管理

2021-03-04 04:17:19 字數 4806 閱讀 9226

一、研究軟體專案質量管理的背景

提起如今的it專案,軟體工程倍受關注。而軟體的質量更是眾人關注的焦點,因為目前還沒有一套完善的評估標準。甚至有人提出,現在的軟體開發根本提不上是"工程",因為它太稚嫩了,還沒有一套成熟的標準來比照;因而軟體專案極易出現失敗或失誤。

大量實踐證明,軟體工程專案的成敗,通常是因為管理問題(協同工作的能力),而不是技術上的問題。要想做一盤"完美"的軟體大餐,質量管理的作用是不言而喻的。(《長松組織系統》工具包--數千家企業成功發展壯大的選擇,值得您的信賴!

)二、軟體質量管理的主要內容

質量管理主要包括三個過程:質量計畫制定、質量保證和質量控制。

質量計畫:是質量管理的第一過程域,它主要指依據公司的質量方針、產品描述以及質量標準和規則等制定出來實施方略,其內容全面反應使用者的要求,為質量小組成員有效工作提供了指南,為專案小組成員以及專案相關人員了解在專案進行中如何實施質量保證和控制提供依據,為確保專案質量得到保障提供堅實的基礎。

質量保證:是貫穿整個專案全生命週期的有計畫和有系統的活動,經常性地針對整個專案質量計畫的執**況進行評估、檢查與改進等工作,向管理者、顧客或其他方提供信任,確保專案質量與計畫保持一致。

質量控制:是對階段性的成果進行測試、驗證,為質量保證提供參考依據。

在軟體實施專案中,質量保證對應於技術評審與過程檢查,質量控制對應於軟體測試等工作。

2.1質量計畫編制

現代質量管理的基本宗旨是:"質量出自計畫,而非出自檢查"。只有做出精準的質量計畫,才能指導專案的實施、做好質量控制。

編制專案的質量計畫,首先必須確定專案的範圍、中間產品和最終產品,然後明確關於中間產品和最終產品的有關規定、標準,確定可能影響產品質量的技術要點,並找出能夠確保高效滿足相關規定、標準的過程方法。編制質量計畫通常採用流程圖、因果分析圖等方法對專案進行分析,確定需要監控的關鍵元素,設定合理的見證點(w點)、停工待檢點(h點),並制定質量標準:

1)流程圖:

顯示系統的各種成分是如何相互關係的,幫助我們**在何處可能發生何種質量問題,並由此幫助開發處理他們的辦法。

2)因果分析圖(也稱魚刺圖):

對於複雜的專案,編制質量計畫時可以採用因果分析圖,描述相關的各種原因和子原因如何產生潛在問題或影響,將影響質量問題的"人員、裝置、參考資料、方法、環境"等各方面的原因進行細緻的分解,方便地在質量計畫中制定相應的預防措施。其次,質量計畫中還必須確定有效的質量管理體系,明確質量監理人員對專案質量負責和各級質量管理人員的許可權。戴明環(又名pdca迴圈法)作為有效的管理工具在質量管理中得到廣泛的應用,它採用計畫--執行--檢查--措施的質量環,質量計畫中必須將質量環上各環節明確落實到各責任單位,才能保證質量計畫的有效實施。

2.2按照質量計畫實施有效的質量控制

質量計畫確定後,按照其建立的質量管理體系,各責任單位就必須按照pdca質量環的要求,實施有效的質量控制。質量控制應貫穿於專案的整個過程,它可分為監測和控制兩個階段:監測的目的就是收集、記錄和匯報有關專案質量的資料資訊;控制就是使用質量監測提供的資料,進行控制,確保專案質量與計畫保持一致。

在質量監測過程中,對於質量計畫中設定的見證點、停工待檢點,質量監測人員要按照作業程式及時進行測量檢查(其中對於停工待檢點必須由監理人員簽字認可後才能進入下一道工序),以確定專案成果(或階段成果)是否符合相關的質量標準。對於見證點或停工待檢點要防止跳過檢查,因為避免錯誤的成本總是大大低於補救錯誤的成本。對質量監測的結果應採用相應的統計方法進行分析,如帕累託圖法(按發生頻率排序的直方圖,它顯示了可識別原因的種類和所造成的結果的數量)等。

通過統計分析對人員、裝置、參考資料、方法、環境等影響專案質量的因素進行監控,確定專案實施過程是否在控制之中,同時進行趨勢分析,對一些偏向於不合格的趨勢及早進行控制。質量控制階段應根據驗收資料做出驗收決定,確定是否進入下一步工序。對於質量監測中發現的不合格,應及時利用"因果分析圖"等方法分析原因,並進行適宜的處置,保證不合格得到識別和有效的控制。

不合格處置包括返工、返修、降級、讓步放行、報廢等形式。

質量監測分析時,對於已發現的不合格或潛在不合格,應制定相應的糾正措施或預防措施,以消除不合格或潛在不合格的原因,防止不合格的發生。糾正措施或預防措施制定後,應對質量計畫進行相應的調整,保證專案的順利實施。

專案收尾包括專案評估和專案終止兩個階段。專案收尾階段的質量控制是乙個非常重要而又容易忽視的內容。專案管理者聯盟文章

專案質量評估不僅僅是在專案完成後進行,還包括對專案實施過程中的各個關鍵點的質量評估。專案質量評估看起來屬於事後控制,但它的目的不是為了改變那些已經發生的事情,而是試圖抓住專案質量合格或不合格的精髓,以使將來的專案質量管理能從中獲益。

專案終止階段,是在決策專案終止後,檢查專案檔案資料完備,包括專案施工質量驗評表、竣工報告等,同時進行專案總結。專案總結是乙個把實際運**況與專案計畫不斷比較以提煉經驗教訓的過程。通過專案質量計畫和總結,專案過程中的經驗和教訓將得到完整的記錄和昇華,成為"組織財富"。

2.3對軟體質量保證的認識

2.3.1有關sqa的理論

我們都知道乙個專案的主要內容是:成本、進度、質量;良好的專案管理就是綜合三方面的因素,平衡三方面的目標,最終依照目標完成任務。專案的這三個方面是相互制約和影響的,有時對這三方面的平衡策略甚至成為乙個企業級的要求,決定了企業的行為,我們知道ibm的軟體是以質量為最重要目標的,而微軟的"足夠好的軟體"策略更是耳熟能詳,這些質量目標其實立足於企業的戰略目標。

所以用於進行質量保證的sqa工作也應當立足於企業的戰略目標,從這個角度思考sqa,形成對sqa的理論認識。

軟體界已經達成共識的:影響軟體專案進度、成本、質量的因素主要是"人、過程、技術"。首先要明確的是這三個因素中,人是第一位的。專案管理者聯盟

現在許多實施cmm的人員沉溺於cmm的理論過於強調"過程",這是很危險的傾向。這個思想傾向在國外受到了猛烈抨擊,從某種意義上各種敏捷過程方法的提出就是對強調過程的一種反思。"xp"中的乙個思想"人比過程更重要"是值得我們思考的。

我個人的意見在進行過程改進中堅持"以人為本",強調過程和人的和諧。

根據現代軟體工程對眾多失敗專案的調查,發現管理是專案失敗的主要原因。這個事實的重要性在於說明了"要保證專案不失敗,我們應當更加關注管理",注意這個事實沒有說明另外乙個問題"良好的管理可以保證專案的成功"。現在很多人基於一種粗糙的邏輯,從乙個事實反推到的這個結論,在邏輯上是錯誤的,這種錯誤形成了更加錯誤的做法,這點在sqa的理解上是體現較深。

如果我們考證一下歷史的沿革,應當更加容易理解cmm的本質。cmm首先是作為乙個"評估標準"出現的,主要評估的是美國國防部**商保證質量的能力。cmm關注的軟體生產有如下特點:

(1)質量重要

(2)規模較大

這是cmm產生的原因。它引入了"全面質量管理"的思想,尤其側重了"全面質量管理"中的"過程方法",並且引入了"統計過程控制"的方法。可以說這兩個思想是cmm背後的基礎。

上面這些內容形成了我們對軟體過程地位、價值的基本理解;在這個基礎上我們可以引申討論sqa。

2.3.2sqa的工作內容和工作方法

2.3.2.1計畫

針對具體專案制定sqa計畫,確保專案組正確執行過程。制定sqa計畫應當注意如下幾點:

有重點:依據企業目標以及專案情況確定審計的重點。

明確審計內容:明確審計哪些活動,那些產品。

明確審計方式:確定怎樣進行審計。

明確審計結果報告的規則:審計的結果報告給誰。

2.3.2.2審計/證實

依據sqa計畫進行sqa審計工作,按照規則發布審計結果報告。注意審計一定要有專案組人員陪同,不能搞突然襲擊。雙方要開誠布公,坦誠相對。

審計的內容:是否按照過程要求執行了相應活動,是否按照過程要求產生了相應產品。

2.3.2.3問題跟蹤

對審計中發現的問題,要求專案組改進,並跟進直到解決。

2.3.2.4 sqa的素質

過程為中心:應當站在過程的角度來考慮問題,保證了過程,qa就盡到了責任。

服務精神:為專案組服務,幫助專案組確保正確執行過程。

了解過程:深刻了解企業的工程,並具有一定的過程管理理論知識。

了解開發:對開發工作的基本情況了解,能夠理解專案的活動。

溝通技巧:善於溝通,能夠營造良好的氣氛,避免審計活動成為一種找茬活動。

三、專案中質量管理的原則

在軟體專案實施中,由於進度和成本兩大因素的影響,它的質量管理與產品開發有著很大的差別。因此,在專案實施中做好質量管理工作應該堅持自己的原則。

通過網上各種資料的整合和整理,以下幾個原則我認為是比較合理的:

不但要主觀認識到質量的重要性,同時還要落實到行動中。

軟體質量管理的重要性已經逐漸被國內的it企業認可,但是要落實到具體的專案實施工作中,並通過它提高軟體質量,還有一段很長的路要走。因為幾乎所有的軟體公司都灌輸著"進度高於一切"的思想,只要是為了趕進度和發布產品,所有影響進度的工作都可以忽略。

因此,把想法落實到實際工作中是做好軟體質量管理的第一原則。

樹立提高質量就是尊重客戶的思想。

可以說,目前很多公司都有"愚弄客戶"的嫌疑,不管是有心的還是無意的。很多公司實施專案時只要能拿到"錢"就達到目的了,因此也就不在乎是否掩蓋缺陷和敷衍客戶。至於後果,那是以後的事情了。

在軟體產業發達的今天,已經是客戶的買方市場,客戶永遠會選擇質量和服務都表現良好的產品來滿足自己的需求。因此,我們應該尊重客戶,把客戶放在"上帝"的位置上,認證做好質量。

建立規範的質量保證體系,逐步使軟體開發進入良性迴圈狀態。

在沒有開發規範的前提下,軟體團隊是不能開發出高質量軟體的。因此軟體團隊一定要建立規範的質量保證體系,同時把規範體系逐步落實到工作中。如果急功近利,不但會做很多浪費人力和物力的無效工作,還會給客戶留下不好的印象。

專案實施中的技術評審

技術評審可以把一些軟體缺陷消滅在**開發之前,尤其是一些架構方面的缺陷。在專案實施中,為了節省時間應該優先對一些重要環節進行技術評審,這些環節主要有:專案計畫、軟體架構設計、資料庫邏輯設計、系統概要設計等。

如果時間和資源允許,可以考慮適當增加評審內容。

軟體質量管理

前邊我們介紹了,面向過程的軟體開發過程,從計畫到測試的整個過程,但是如何確保軟體的質量呢?只要我們的軟體質量過關才會得到使用者的肯定,所以從質量這個角度看,我們該如何管理呢?這篇部落格,總結了軟體質量管理的相關知識。首先,總的了解一下,需要我們知道一些相關概念 然後是我們軟體質量該如何保證,有什麼措...

軟體開發專案中的質量管理研究

作者 錢潔萍 科技創新導報 2012年第11期 摘要 隨著知識經濟時代的到來,整個社會的高效運作對計算機軟體產品的依賴程度越來越高,軟體質量以及軟體質量管理日益成為人們關注的焦點,對軟體的開發過程進行質量管理是解決軟體質量問題的重要方法。本文詳細介紹了軟體質量的概念 軟體質量工程體系的思想和內容 軟...

軟體開發專案中的質量管理研究

摘要 隨著知識經濟時代的到來,整個社會的高效運作對計算機軟體產品的依賴程度越來越高,軟體質量以及軟體質量管理日益成為人們關注的焦點,對軟體的開發過程進行質量管理是解決軟體質量問題的重要方法。本文詳細介紹了軟體質量的概念 軟體質量工程體系的思想和內容 軟體質量控制和管理的方法和技術,包括軟體質量標準 ...