黃 強
摘要:文章論述了基于LOC、Delphi法、經驗類比法、功能點分析法、COCOMO法等各種成本估算方法設計開發(fā)軟件成本估算專家輔助系統(tǒng)。針對開發(fā)需求,研究了理論框架結構、人員框架結構,以及該系統(tǒng)的工作過程和需求事項。框架為軟件設計提供了清晰的結構,是開發(fā)專家系統(tǒng)的基礎。
關鍵詞:軟件成本估算;專家輔助系統(tǒng);框架;裝備軟件;開發(fā)需求
中圖分類號:TP393
文獻標識碼:A
文章編號:1009-2374(2009)17-0041-02
進行準確的裝備軟件成本估算是保證裝備軟件開發(fā)順利進行的關鍵和必要手段,也是保證裝備采購人員能夠對裝備軟件進行準確定價,避免軍費浪費。但是,當前對裝備軟件成本估算的手段單一,方法不多,不夠精確。在裝備軟件的估算過程中,由于裝備軟件開發(fā)過程的諸多不確定性,導致在估算過程中必須要有具備深厚專業(yè)知識的專家人員,但是在產品開發(fā)的實際中,這種專業(yè)深厚的高水平專家人員比較少,完全依靠領域專家來進行估算成本代價太高,不切實際。因此,設想開發(fā)一套裝備軟件成本估算專家輔助系統(tǒng),用于在開發(fā)過程中對裝備軟件的項目時間、成本進行估算,解決缺乏專業(yè)領域專家人員的情況下對裝備軟件進行估算。估算人員只需要輸入開發(fā)軟件的相關信息或者整個軟件編碼,經過系統(tǒng)的匹配和綜合的估算,把估算結果顯示于界面上,方便快捷。如圖1所示:
一、開發(fā)背景
當前,裝備軟件成本估算主要存在估算的方法有限,精確度不夠,直接影響了裝備軟件的設計開發(fā)和增加了采購成本。主要表現(xiàn)在兩個方面:
1、裝備軟件的設計開發(fā)主要是依據(jù)軍方立項,通過國家指定的軍品生產廠方,依據(jù)確定的標準和要求進行的。但是大多數(shù)承制方缺乏專業(yè)領域知識深厚的專家,并且,裝備軟件的設計開發(fā)缺乏市場競爭,參與的企業(yè)少,規(guī)范的軟件生產企業(yè)不多,對設計開發(fā)過程中的裝備軟件成本估算不足,因而直接影響了裝備軟件開發(fā)的順利進行和產品質量。
2、在軍方采購人員中,大部分人員是軍校畢業(yè)后直接進入采購部門工作,既沒有經過專業(yè)的理論培訓也沒有相關領域的經驗,對軟件的成本估算只懂皮毛甚至不懂,大部分是按照國家關于軍品的微利補貼原則,以承制方的價格為基礎進行采購,這樣條件下的采購無疑是帶有較大的盲目性,難以避免對軍費的浪費。因此,如果能設計一套專家輔助系統(tǒng),其意義較重大。
二、設想理論框架
裝備軟件成本估算專家輔助系統(tǒng)理論框架主要由兩個部分組成。一個是存儲各種算法和估算標準的數(shù)據(jù)庫。該數(shù)據(jù)庫由算法知識庫、歷史模型庫、儲存比較庫、智能估算執(zhí)行庫組成。算法知識庫主要是對當前各種關于裝備軟件成本估算的算法進行編程存檔(LOG法、Delphi法、經驗類比法、功能點估計法、COCOMO法等),主要提供給智能執(zhí)行庫的估算模型原則。歷史模型庫主要存儲許多歷史經典裝備軟件模型,收集盡可能多的模型,為估算軟件提供近似匹配依據(jù)。智能估算執(zhí)行庫主要是完成對輸入的估算程序調用算法知識庫中的各種算法進行估算,同時對裝備軟件進行歷史模型匹配,得到近似估算值,儲存結果比較庫主要是把各種估算結果存儲下來并根據(jù)智能執(zhí)行庫的指令進行比較,最后對估算值進行按預定比例系數(shù)進行加權處理,得到最終估算結果經傳輸設備傳出。另一個框架就是操作系統(tǒng)和人機交換框架,主要是操作系統(tǒng)對第一個框架內的各種數(shù)據(jù)進行維護管理,科學地組織和存儲數(shù)據(jù),高效地獲取和維護數(shù)據(jù),準確的物理尋址,并及時對數(shù)據(jù)進行更新,用戶通過人機交互界面與系統(tǒng)打交道,把要估算的裝備軟件信息或者編碼輸入進計算機,調用第一個框架內的數(shù)據(jù),獲取知識,并進行推理,得到解釋,并對數(shù)據(jù)庫進行維護,并把估算結果顯示出來。
三、開發(fā)人員框架
裝備軟件成本估算專家輔助系統(tǒng)的功能是完成對裝備軟件的成本估算,主要為解決廠方在進行軟件項目開發(fā)時對軟件成本的預算不準和軍方在采購過程中對裝備軟件的知識不深厚導致對其成本估算不準確。在開發(fā)這個系統(tǒng)需要四類人員參與才能完成開發(fā)。第一類就是眾多領域專家進行知識收集和整理,建立各種算法和模型;第二類就是知識工程師進行知識建模、形式化、編輯以及語法檢查;第三類是開發(fā)軟件工程師根據(jù)系統(tǒng)的目的和已建模型進行系統(tǒng)設計和調試;第四類是最終用戶對系統(tǒng)進行軟件成本估算。如圖2所示:
四、開發(fā)需求
裝備軟件成本估算專家輔助系統(tǒng)首先要對目標用戶的要求做出準確定位。即:裝備軟件成本估算專家輔助系統(tǒng)主要是供給廠方在進行裝備軟件項目開發(fā)和軍方在對裝備軟件采購定價時用,因此,對廠方和軍方最需要了解的是裝備軟件成本的組成和估算精確度的問題。由此可以確定該系統(tǒng)要達到的要求,以及用什么方式實現(xiàn)這些要求,這就需要組織大量的專業(yè)領域專家進行論證和算法研究及建模,收集更多的歷史模型,方便地對模型進行建模管理、存取管理、運行管理、模型組合,能方便地對知識進行插入、修改、更新、查詢等,及時對數(shù)據(jù)庫進行維護和更新。
五、工作過程
首先,由眾多領域專家進行知識的收集整理,進行各種算法的研究探討,并對算法進行驗證可行,此過程也稱為抽象的過程;在此基礎上,由知識工程師根據(jù)領域專家的各種算法進行數(shù)學建模,成為可以理論計算的模型,此過程就是把抽象到具體的過程;然后,由軟件開發(fā)工程師根據(jù)已有的數(shù)學模型進行計算機編程,成為計算機可執(zhí)行的程序編碼并存儲與計算機內,此過程就是把具體到應用的過程;在前三個過程結束后,實際工作中的用戶只需要將相關信息輸入進計算機便可以進行成本的估算了。用該系統(tǒng)進行成本估算主要有兩種工作方式:一種是廠方進行裝備軟件項目的開發(fā)設計時,主要對該軟件項目的成本進行預算;一種是針對軍方采購人員進行采購是便于對裝備軟件的定價而進行成本估算??偟膩碚f其原理是一樣的。用戶把需要估算的軟件相關信息或者整個程序編碼輸入計算機,通過操作系統(tǒng)把相關信息傳輸?shù)街悄軋?zhí)行庫,智能執(zhí)行庫根據(jù)接收到的相關信息進行分項估算,調用算法庫中的相關算法結合相關的信息進行估算,把估算的結果存儲在存儲比較庫中暫存,再根據(jù)歷史模型庫中的模型匹配進行概算,得到的結果也存儲于存儲比較庫中暫存,最后智能執(zhí)行庫根據(jù)存儲比較庫中的暫存數(shù)據(jù)進行加權平均計算,將最后優(yōu)算得結果經操作系統(tǒng)的指令直接傳出到人機交互界面,供給用戶參考。
六、結語
成本估算專家輔助系統(tǒng)的主旨是在缺乏專業(yè)領域專家人員的情況下,便于裝備軟件在開發(fā)設計時能準確對其成本進行預算和在采購時便于對裝備軟件定價而進行估算。文章中的理論框架為軟件設計提供了清晰的結構,是開發(fā)裝備軟件成本估算專家輔助系統(tǒng)的基礎。開發(fā)裝備軟件成本估算專家輔助系統(tǒng)在理論框架、人員框架、開發(fā)需求的指導下,通過詳細設計、數(shù)據(jù)庫設計、編碼實現(xiàn)、測試等過程實現(xiàn)系統(tǒng)全部功能。開發(fā)該系統(tǒng)之前需要大量的工作才能完成,但是一旦該系統(tǒng)設計開發(fā)完成后,將對實際工作過程中具有重要現(xiàn)實意義。文中提出的框架結構和開發(fā)需求對于裝備軟件成本估算以及裝備軟件成本估算專家輔助系統(tǒng)設計研究具有很好的指導作用。
參考文獻
[1]張家浩,白思俊,軟件項目管理[M]機械工業(yè)出版社,2005
[2]李幟,林立新,曹亞波,功能點分析方法與實踐,北京:清華大學出版社,2005
[4]任永昌,趙穎應用COCOMOI模型估算軟件開發(fā)工作量渤海大學學報(自然科學版),2007,23(3)
[5]尹朝慶,尹皓,人工智能與專家系統(tǒng),北京:中國水利水電出版社,2002
作者簡介:黃強(1980-),男(苗族),湖南洪江人,供職于第二炮兵工程學院研究生二隊,正連職,研究方向:管理科學與工程。