試題一(25分)
某公司承接了一個銀行業務系統的軟件開發項目,質量要求非常高。項目經理小趙制定了項目的整體計劃,將項目劃分為需求、設計、編碼和測試四個階段,他將測試階段預留了大量時間,以便開展充分的測試工作。
需求分析完成后,項目組編寫了《需求分析報告》,項目經理小趙召集部分骨干人員召開評審會。為了盡快進入下一階段工作,評審會從早上9點一直開到晚上9點,終于把全部的文件都審完了。評審組找到了幾處小問題,并當場進行了修改,項目經理宣布可以進入設計階段了。編程結束后,進入了測試階段。第一輪測試,發現了70個缺陷。項目組對發現的缺陷進行了修改,又重新提交了測試。第二輪又發現了100多個缺陷,就這樣反復修改和測試,直到第六輪,發現了33個缺陷。各輪發現的缺陷數如下:
這時,小趙終于松了一口氣,由于第六輪只剩下33個缺陷,他覺得測試工作應該很快就會結束了。
【問題1】(10分)
請分析此項目的質量管理過程中存在哪些問題。
【問題2】(9分)
請在答題紙上標出縱坐標的刻度值,并畫出測試缺陷的趨勢圖。根據趨勢圖分析“小趙覺得測試工作很快就會結束了”是否有道理,并分析原因。
【問題3】(3分)
請結合軟件生命開發周期分析軟件存在缺陷的可能原因。
【問題4】(3分)
請結合實際經驗說明軟件項目的質量管理工作應重點完成哪些工作。
參考答案:
【問題1】(6分)
(1)沒有制定單獨的質量管理計劃,也沒有安排質量管理人員;
(2)沒有實施質量保證工作;
(3)在項目重大里程碑處沒有對階段成果進行評審,無法確保結果和預期目標一致;
(4)技術評審會沒有關注于發現問題,沒有達到預期效果;
(5)設計文件未經過正式評審,可能沒有發現設計文件中的錯誤;
(6)評審會召開時間過長,也沒有起到質量控制的作用;
(7)在進入項目下一重要階段前沒有進行評審;
(8)重要項目干系人或客戶沒有參加需求評審會,可能導致最終對需求的理解不能達成一致。
【問題2】(9分)
小趙分析得沒有道理。因為趨勢線上下波動很大,不能得出下一輪測試缺陷數必然減少的結論。最后一輪測試缺陷次數雖然減少,但是,缺陷沒有經過回歸測試,新的缺陷可能還會產生。系統也沒有經過集成測試,也可能還有新的缺陷產生。
【問題3】(3分)
需求缺陷、設計缺陷、編碼缺陷、測試不充分。
【問題4】(3分)
(1)要制定出切實可行的質量管理計劃;
(2)應安排獨立于項目組的QA人員負責QA工作;
(3)對軟件開發過程實施質量保證;
(4)加強技術評審工作,注重對需求、設計等文檔的技術評審工作;
(5)注重測試工作,應安排相對獨立的測試人員;
(6)對發現的缺陷進行統計分析,確保最終的軟件產品質量符合要求。