廉波
[摘要]本文指出了軟件開發(fā)過程中質(zhì)量控制的重要性,通過分析開發(fā)過程中存在的問題,提出了一些提高軟件開發(fā)質(zhì)量的方法的對策措施。
[關(guān)鍵詞]軟件開發(fā);軟件工程;質(zhì)量控制
[中圖分類號]TP311.5
[文獻標識碼]A
[文章編號]1672-5158(2013)05-0168-01
一、軟件開發(fā)過程的問題分析
(1)不能明確分析軟件的需求。軟件的需求是決定軟件質(zhì)量的一個非常關(guān)鍵的因素,如果不能夠準確明了的分析軟件需求,就達不到軟件應(yīng)有的效果,從而不能真正滿足客戶的要求。然而軟件的需求不是顯而易見的,它需要軟件開發(fā)人員和客戶或者業(yè)務(wù)人員之間進行充分有效地溝通和交流,使得在軟件開發(fā)一開始就能夠?qū)⑿枨筇岬眉让鞔_又充分,這樣才能為以后的工作打好基礎(chǔ),避免在一開始就偏離了軟件開發(fā)的方向。在設(shè)計開發(fā)的過程中也要不斷與客戶進行溝通和交流,及時按照客戶的意見調(diào)整軟件,才能提高軟件開發(fā)的質(zhì)量。
(2)軟件開發(fā)工作不規(guī)范。由于軟件質(zhì)量許多指標不能量化,因此,軟件開發(fā)的質(zhì)量好壞也沒有辦法直接考核軟件開發(fā)人員的責(zé)任,這樣就致使軟件開發(fā)人員不會很重視軟件開發(fā)的質(zhì)量,往往更關(guān)心項目開發(fā)的成本和進度。此外,軟件開發(fā)人員沒有制定軟件開發(fā)計劃或者并不能按照軟件開發(fā)的計劃進行工作,為了趕進度經(jīng)常跨階段進行開發(fā)工作,這樣就沒法保證軟件開發(fā)過程的科學(xué)性和系統(tǒng)性,軟件開發(fā)的質(zhì)量也不能得到保證。軟件開發(fā)管理人員和技術(shù)人員也會影響軟件開發(fā)的質(zhì)量。軟件開發(fā)工作需要他們之間進行頻繁的溝通和交流,倘若不能及時溝通,對開發(fā)過程中出現(xiàn)的不同認識和誤解等等問題不能及時消除,就勢必會影響到軟件產(chǎn)品的質(zhì)量。此外,軟件開發(fā)人員在開發(fā)過程中一旦出現(xiàn)流動,就會給軟件開發(fā)工作帶來很大的影響,也不利于提高軟件產(chǎn)品的質(zhì)量。
二、提高軟件開發(fā)質(zhì)量方法和對策
1 軟件產(chǎn)品質(zhì)量控制方法。
(1)軟件工程方法。軟件工程的基本方法就是把軟件開發(fā)過程劃分為若干個階段,在每個階段開發(fā)過程中都設(shè)置不同的目標、成本、時間等驗收標準,在前一階段工作通過驗收后才能開始下一階段的工作,這樣就會達到提高軟件開發(fā)的質(zhì)量的目標。軟件工程將開發(fā)過程分為軟件生產(chǎn)方法、需求分析、軟件設(shè)計、軟件生產(chǎn)工具、測試、驗證與確認、評審和管理等8個階段,每個階段都以軟件質(zhì)量控制為核心,規(guī)范每個操作流程,從而提高軟件開發(fā)產(chǎn)品的質(zhì)量。
(2)ISO9000-3標準。ISO9000系列標準原本并不能直接用于管理軟件制作,而是為制造硬件產(chǎn)品而制定的標準。后推行的ISO9000-3標準為使軟件產(chǎn)品達到質(zhì)量要求,要求軟件開發(fā)機構(gòu)建立質(zhì)量保證體系,明確供需雙方的職責(zé),針對所有可能影響軟件質(zhì)量的各個因素都要采取有力措施,作出如何加強管理和控制的對策和措施。ISO9000-3標準敘述了需方和供方應(yīng)如何進行有組織的質(zhì)量保證活動,規(guī)定了從雙方簽訂開發(fā)合同到設(shè)計、實現(xiàn)以至維護整個軟件生存期中應(yīng)當(dāng)實施的質(zhì)量保證活動,但并沒有規(guī)定具體的質(zhì)量管理和質(zhì)量檢驗方法和步驟。
(3)cMM認證。CMM是一種專門針對軟件產(chǎn)品開發(fā)及服務(wù)的高效管理方法,強調(diào)軟件開發(fā)過程的不斷改進和提高,在軟件企業(yè)中引入CMM,有助于解決軟件開發(fā)過程中質(zhì)量控制方面出現(xiàn)的問題。CMM不僅對軟件企業(yè)工程能力進行評估,更著重于軟件開發(fā)過程的管理,強調(diào)“對軟件開發(fā)過程進行持續(xù)的改進”。CMM通過優(yōu)化企業(yè)開發(fā)流程,改善現(xiàn)有的規(guī)范、團隊配合工作方法,來彌補軟件企業(yè)對某個項目經(jīng)理或開發(fā)工程師的單純依賴。軟件能力成熟度模型重點是從組織管理方面研究評估軟件生產(chǎn)過程,從而提高軟件質(zhì)量。
2 軟件開發(fā)質(zhì)量控制對策。
(1)合理規(guī)劃并嚴格按照計劃執(zhí)行。在進行軟件開發(fā)之前首先要制定一個提高軟件開發(fā)質(zhì)量的保證計劃,在開發(fā)過程中嚴格按照計劃執(zhí)行,不急于搶進度,保證軟件開發(fā)的質(zhì)量。建立文檔記錄需要跟蹤的工作以及保證軟件開發(fā)質(zhì)量所需要的信息。
(2)堅持軟件評審制度。堅持軟件評審是保證軟件質(zhì)量的重要方法,軟件開發(fā)過程按階段可大致分為軟件需求分析、軟件設(shè)計、編碼和單元測試、軟件部件測試、軟件驗收六個階段。軟件評審工作要貫穿于軟件開發(fā)的整個過程中,在軟件開發(fā)的各個階段都要進行評審,當(dāng)前軟件開發(fā)階段的工作成果達到計劃要求以后才能開始下階段的工作。評審工作可以以會議的形式組織開展,會議要各方面人員都要參加,包括客戶、軟件管理人員以及軟件開發(fā)人員等等,通過會議進行溝通交流,最終給出評審結(jié)果。
(3)采用先進的軟件設(shè)計技術(shù)和方法。在軟件開發(fā)過程中應(yīng)盡量采用先進的設(shè)計技術(shù)和方法,如面向?qū)ο蠛突跇?gòu)件的方法,來提高軟件設(shè)計產(chǎn)品的質(zhì)量。面向?qū)ο蟮姆椒▋?yōu)點是能夠提高軟件的重復(fù)利用性,將錯誤和缺憾最小化,還有利于用戶的參與,能夠很好的提高軟件產(chǎn)品的質(zhì)量。基于構(gòu)件的開發(fā)方法又稱為“即插即用編程”方法,構(gòu)件可以向軟件供應(yīng)商購買,也可以自行開發(fā),而且可以重復(fù)多次使用,然后將編制好的構(gòu)件插入到設(shè)計好的框架中去,從而形成一個大型的軟件。如果某個構(gòu)件不符合開發(fā)的要求,可以對某個構(gòu)件進行修改,不會對其他構(gòu)件造成影響,也不會影響到整個系統(tǒng)功能。
(4)軟件質(zhì)量控制的關(guān)鍵——軟件測試。在軟件開發(fā)過程中,軟件測試也是軟件質(zhì)量控制的關(guān)鍵,軟件測試主要包括單元測試、集成測試、確認測試和系統(tǒng)測試。在開發(fā)的每個階段都要通過測試,如果測試結(jié)果與預(yù)期結(jié)果不一致,就要查找出軟件中存在的問題,針對問題提出解決方案,不斷改進軟件質(zhì)量。通過軟件測試不僅可以尋找出軟件中存在的與軟件客戶需求不一致的錯誤和缺陷,還可以節(jié)省大量的時間和人力,確保軟件開發(fā)的質(zhì)量。開始測試之前要制定好測試計劃,確定好測試的范圍方法等等。在測試過程中要做好記錄,詳細記錄每個測試過程中的數(shù)據(jù),而且每個階段測試的結(jié)果都要進行存檔,如果測試過程中出現(xiàn)錯誤,就要編寫錯誤問題的報告,經(jīng)過調(diào)試解決所發(fā)現(xiàn)的問題以后才能進行下階段工作。
(5)注重文檔管理。目前很多軟件開發(fā)商都忽視了軟件開發(fā)過程中的文檔管理,其實文檔管理在軟件開發(fā)過程中起著非常重要的作用,在軟件開發(fā)的過程中建立并保存文檔,有利于軟件的使用和維護,有益于軟件質(zhì)量的提高。文檔管理要貫穿于整個軟件開發(fā)的全過程,即軟件在每階段的開發(fā)、測試、評估都要保存相關(guān)的文檔,這樣有利于軟件的開發(fā)和維護,出現(xiàn)了錯誤有章可循,有助于軟件開發(fā)質(zhì)量控制。
(6)客戶要參與到軟件開發(fā)中去。軟件客戶要參與到軟件開發(fā)的全過程中去,在開發(fā)之初對軟件的需求不是很明確的情況下,要加強與軟件開發(fā)人員的溝通和交流,不斷了解自身更深層次的需求。軟件開發(fā)需要多方參與,尤其是軟件客戶方面的人,在需求調(diào)查和分析階段,軟件客戶要將自己的需求和軟件開發(fā)人員進行有效地溝通,使得軟件開發(fā)人員能夠最大限度的了解客戶需求,才能按照需求目標開發(fā)出令客戶滿意的軟件。在軟件測試和評審階段,客戶應(yīng)按照自己的需求對設(shè)計開發(fā)的軟件進行檢測和評審,提出自己的意見和建議,以便在得出結(jié)論以后能夠盡快及時的得到修正。軟件開發(fā)人員對于客戶提出的意見和建議要按照要求進行修改和完善,及早與用戶進行溝通,避免影響驗收。
參考文獻
[1]張?zhí)煊?《中小型軟件開發(fā)質(zhì)量控制研究》.《微電子學(xué)與計算機》.2004
[2]楊鳴.《淺談軟件開發(fā)質(zhì)量控制》.《煤礦現(xiàn)代化》.2002