王 華,王學寧,張連偉,王 山
(火箭軍裝備研究院第四研究所,北京 100094)
電子信息系統(tǒng)應用軟件可靠性分析
王 華,王學寧,張連偉,王 山
(火箭軍裝備研究院第四研究所,北京 100094)
在明確軟件可靠性對于電子信息系統(tǒng)重要性的基礎(chǔ)上,描述了軟件主要環(huán)境因素,闡明了軟件可靠性管理、設(shè)計方面的措施,同時結(jié)合軟件試驗進行了可靠性評價,并對于系統(tǒng)軟件可靠性工作得出相關(guān)結(jié)論,以有利于應用軟件研制與電子信息系統(tǒng)的建設(shè)。
電子信息系統(tǒng);應用軟件;可靠性分析
電子信息系統(tǒng)是以系統(tǒng)工程理論為指導,綜合運用先進的技術(shù)手段,將業(yè)務應用、信息處理、通信保障等功能結(jié)合在一起的有機整體。電子信息系統(tǒng)主要特點是涉及領(lǐng)域廣泛、人機結(jié)合密切、技術(shù)更新較快,并且與應用需求緊密相關(guān)。電子信息系統(tǒng)研制按照裝備型號管理模式,建立了行政業(yè)務線和技術(shù)業(yè)務線,全面落實管理責任制,健全了質(zhì)量保證體系,強化了技術(shù)總體設(shè)計和軟件工程化管理,并且從管理、設(shè)計、試驗等方面對軟件可靠性工作進行了有效的規(guī)劃與實施,有力地保證了軟件和系統(tǒng)的可靠性能力。
當前應用軟件已成為電子信息系統(tǒng)的關(guān)鍵組成部分,軟件失效能夠?qū)е孪到y(tǒng)故障與宕機,因此軟件可靠性工程是電子信息系統(tǒng)研制的重要內(nèi)容。軟件可靠性分析則通過改進軟件可靠性設(shè)計與工程管理,提高軟件研制過程中的可靠性水平,并對軟件產(chǎn)品進行可靠性評價。
軟件研制過程是一個包括開發(fā)人員、測試人員、應用背景等方面復雜關(guān)聯(lián)并動態(tài)演化的過程,其中的種種因素都會影響軟件可靠性的水平。環(huán)境因素是存在于軟件開發(fā)、測試、維護等過程中的,對軟件的缺陷及失效情況會產(chǎn)生影響的各種特征與行為的集合。軟件環(huán)境因素作為軟件問題的基礎(chǔ)與根源,與軟件研制過程密不可分。軟件環(huán)境因素可以分為產(chǎn)品因素、過程因素和資源因素三類,如表1所示。
在電子信息系統(tǒng)應用軟件研制過程中,針對可靠性環(huán)境因素采取了以下措施:
1)軟件可靠性計劃表明對可靠性工作的重視程度和所做的努力,體現(xiàn)對軟件可靠性要求的實現(xiàn)與保證能力。開展可靠性工作必須分配相應的人員、經(jīng)費等資源,并要把可靠性計劃納入系統(tǒng)研制計劃,同步實施。在計劃實施過程中要進行一系列可靠性檢查和評審,監(jiān)督和評價可靠性工作是否按規(guī)定要求進行、可靠性要求是否能夠得到保證;可利用報告、檢查、評審、鑒定和認證等活動,取得相關(guān)信息,保證各項工作的順利開展??煽啃怨ぷ饔媱澘煞蛛A段制定與完善,在軟件的需求分析階段、設(shè)計階段、實現(xiàn)階段、測試階段,直至維護階段,應積極實施上述軟件可靠性計劃的一系列活動,努力保證與落實可靠性水平。
2)強化軟件技術(shù)評審。在評審過程中對軟件設(shè)計質(zhì)量進行跟蹤,用文件記錄評審的過程和結(jié)果。在系統(tǒng)研制過程中進行了軟件需求分析、軟件概要設(shè)計和詳細設(shè)計、軟件確認測試、軟件驗收等評審。軟件評審組對本階段工作及形成的文檔進行審查,按不同評審階段分別填寫軟件需求分析評審內(nèi)容記錄表、軟件設(shè)計評審內(nèi)容記錄表、軟件測試評審內(nèi)容記錄表和軟件評審問題記錄表,經(jīng)討論形成審查意見。對于評審中的存在問題,根據(jù)評審組的意見,填寫問題處理跟蹤報告單,完成整改并經(jīng)上一級認可后,方可轉(zhuǎn)入下一階段,從而很好地消除了軟件缺陷的累積效應。
3)落實軟件問題歸零。對于在評審、測試與試驗中發(fā)現(xiàn)的軟件問題進行軟件評審問題記錄與問題處理跟蹤,軟件測試問題處理、修改和回歸。在軟件單元測試、集成測試、配置項測試中,依據(jù)相應的軟件測試計劃和測試說明有序地實施了各級別軟件測試,用例覆蓋了軟件的相關(guān)接口與有關(guān)功能性能指標,同時針對測試中發(fā)現(xiàn)的問題進行了認真分析、及時修改、缺陷排除與回歸測試,嚴格執(zhí)行測試實施—故障分析—軟件修改—測試確認的閉環(huán)過程;在系統(tǒng)聯(lián)試過程中,針對出現(xiàn)的有關(guān)軟件問題及時進行了分析與整改,按照配置管理要求進行軟件更改,并通過測試驗證軟件問題處理的有效性,同時積極地做好軟件問題及處理的文件記錄,從而切實地提高了軟件的可靠性水平。
表1 軟件主要環(huán)境因素
在系統(tǒng)應用軟件的整個開發(fā)過程應按照軟件工程化要求,應貫徹執(zhí)行軟件工程規(guī)范,分階段并按適當?shù)哪P烷_發(fā)軟件;完整地列出軟件的系統(tǒng)需求,建立一個結(jié)構(gòu)良好的軟件系統(tǒng),并分工完成軟件設(shè)計、程序編碼和軟件測試;同時做好軟件配置管理和質(zhì)量保證工作,使軟件開發(fā)和使用過程具有可追溯性;并積極借鑒和實現(xiàn)CMM、TSP、PSP的有關(guān)要求,完善軟件開發(fā)規(guī)范和控制過程,并持續(xù)改進軟件研制過程,不斷提升軟件的可靠性技術(shù)能力。
在電子信息系統(tǒng)應用軟件研制中,充分注重頂層設(shè)計,實現(xiàn)支撐平臺、傳輸機制、共享機制、數(shù)據(jù)標準、信息流程、信息接口的統(tǒng)一和協(xié)調(diào),制定與貫徹軟件集成與數(shù)據(jù)集成工程規(guī)范、軟件設(shè)計與編程指南,為系統(tǒng)可靠性提供了堅實的基礎(chǔ)。
3.1 軟件結(jié)構(gòu)設(shè)計
電子信息系統(tǒng)應用軟件結(jié)構(gòu)包括系統(tǒng)應用層、專用支撐層、公共支撐層、基礎(chǔ)數(shù)據(jù)層:
1)系統(tǒng)應用層,面向電子信息系統(tǒng)提供業(yè)務控制、信息處理、通信保障等要素具體應用。
2)專用支撐層,包括專用軟件和專用服務,提供相關(guān)業(yè)務應用的構(gòu)件,可集成到業(yè)務要素,提供基礎(chǔ)信息處理服務。
3)公共支撐層,提供業(yè)務作業(yè)、情況綜合等通用構(gòu)件與服務,以及多種業(yè)務處理手段和統(tǒng)一信息處理服務支持。
4)基礎(chǔ)數(shù)據(jù)層,面向系統(tǒng)及應用軟件提供數(shù)據(jù)存儲與管理,其中共享數(shù)據(jù)庫基于信息訂閱/分發(fā)服務實現(xiàn)系統(tǒng)數(shù)據(jù)的訂閱/分發(fā),專業(yè)數(shù)據(jù)庫面向各要素提供業(yè)務信息存儲與管理。
試樣的檢測面經(jīng)研磨后,加以腐蝕,劃一條既與熔合線底部相切,又平行于試板軋制面的直線,在此直線上,每隔0.5mm進行維氏硬度的測定,切點兩側(cè)各測七點(見圖4)。焊接熱影響區(qū)最高硬度試驗結(jié)果如表5所示。
3.2 容錯設(shè)計
在電子信息系統(tǒng)應用軟件研制中,在容錯設(shè)計方面采取了一系列措施:
1)系統(tǒng)數(shù)據(jù)庫通過網(wǎng)絡互聯(lián)形成邏輯整體,可以實現(xiàn)數(shù)據(jù)的實時同步與更新,保證系統(tǒng)數(shù)據(jù)的準確性和一致性。
2)數(shù)據(jù)庫運行采用歸檔方式,定期進行邏輯備份和物理備份,并應與容災系統(tǒng)結(jié)合起來統(tǒng)一設(shè)計。
3)各業(yè)務數(shù)據(jù)庫按照統(tǒng)一數(shù)據(jù)庫標準、數(shù)據(jù)字典和標準參考信息,訪問統(tǒng)一的系統(tǒng)對象以及其它共享信息,保證數(shù)據(jù)的一致性。
4)為保證系統(tǒng)數(shù)據(jù)安全和交換效率,各業(yè)務中心的數(shù)據(jù)交換通過共享庫進行,完成電子信息系統(tǒng)有關(guān)任務、成果以及臨時數(shù)據(jù)的交互。
3.3 構(gòu)件化設(shè)計
在電子信息系統(tǒng)應用軟件研制中,系統(tǒng)地運用了構(gòu)件化設(shè)計,對已有軟件按照系統(tǒng)集成標準進行相應構(gòu)件化改造,對新研制的軟件按照系統(tǒng)工程標準進行軟件設(shè)計和集成,以實現(xiàn)不同技術(shù)體制的業(yè)務應用軟件在同一平臺的協(xié)調(diào)運行。
2)根據(jù)軟件集成標準,進行新軟件的研制。應調(diào)用集成者提供的對象轉(zhuǎn)換代理,將應用軟件的外部接口包裝成通用接口,實現(xiàn)軟件的調(diào)用與控制規(guī)范化。
3)運用設(shè)計開發(fā)可視化工具,實現(xiàn)業(yè)務軟件和功能服務的按需定制,對照用戶需求選擇集成對象,定制系統(tǒng)菜單,完善界面構(gòu)成,形成滿足用戶需求的軟件發(fā)行包和配置文件,并提交用戶安裝、運行與使用。
在電子信息系統(tǒng)應用軟件研制過程中進行了軟件測試、系統(tǒng)聯(lián)試等可靠性相關(guān)試驗,較為順利地實現(xiàn)了系統(tǒng)可靠性的不斷增長。
4.1 軟件測試
在系統(tǒng)總體組統(tǒng)一組織下,進行了軟件測試工作的安排,實施了相關(guān)軟件的單元測試、集成測試、配置項測試,軟件測試內(nèi)容包括功能測試、接口測試、分支覆蓋和語句覆蓋等。測試步驟從測試計劃、測試說明、測試記錄準備,到執(zhí)行測試;對測試過程中出現(xiàn)的差異情況進行了分析,對不合理的和錯誤的設(shè)計提出改進建議,并按研制程序進行有關(guān)問題的修改、處理,并先后通過回歸測試。通過軟件的單元測試、集成測試、配置項測試,盡早地發(fā)現(xiàn)并排除了有關(guān)軟件缺陷,不斷保證了軟件實現(xiàn)過程產(chǎn)品的基礎(chǔ)性質(zhì)量與可靠性。
4.2 系統(tǒng)聯(lián)試
電子信息系統(tǒng)應用軟件在模擬環(huán)境進行了系統(tǒng)聯(lián)試,聯(lián)試由總體組組織,質(zhì)量組實施;其中綜合聯(lián)試共進行33項試驗,應用軟件責任故障2項。在聯(lián)試過程中,能夠按聯(lián)試大綱的要求進行充分準備;系統(tǒng)聯(lián)試項目設(shè)置較為科學合理,對系統(tǒng)及各分系統(tǒng)功能項目的測試覆蓋率達到100 %;測試人員與開發(fā)人員隊伍各自獨立工作,測試過程嚴格受控,測試結(jié)果真實可信;檢驗了電子信息系統(tǒng)應用軟件的整體功能、性能以及互聯(lián)互通互操作能力,并很好地驗證了電子信息系統(tǒng)及其應用軟件的研制要求和設(shè)計目標。
4.3 可靠性計算
根據(jù)電子信息系統(tǒng)應用軟件綜合聯(lián)試有關(guān)結(jié)果,按照可靠度評估模型:
可以得到系統(tǒng)應用軟件在置信度為0.9時的可靠度置信下限為:
電子信息系統(tǒng)應用軟件可靠性滿足系統(tǒng)研制的相關(guān)要求。
在電子信息系統(tǒng)應用軟件研制過程中,能夠著力推進系統(tǒng)質(zhì)量管理與軟件工程化,密切結(jié)合研制要求進行可靠性、安全性和互操作性設(shè)計;同時全面地實施了技術(shù)評審、軟件測試和系統(tǒng)試驗,并對測試、試驗、評審等所發(fā)現(xiàn)的有關(guān)問題進行分析與歸零,認真做好系統(tǒng)的可靠性、安全性和互操作性改進和確認工作;并且,嚴格控制各種軟件配置的變更與存取,對軟件配置控制情況進行及時認真的檢查,軟件與系統(tǒng)可靠性和質(zhì)量水平得到了穩(wěn)定提高并滿足要求。隨著系統(tǒng)可靠性工程與軟件工程化技術(shù)的日益發(fā)展,軟件可靠性與質(zhì)量工作的不斷深化,電子信息系統(tǒng)應用軟件可靠性的提升應有更廣闊的前景。
[1] 何國偉,王 緯. 軟件可靠性[M]. 北京:國防工業(yè)出版社, 2001.
[2] 陸廷孝,鄭鵬洲等. 可靠性設(shè)計與分析[M]. 北京:國防工業(yè)出版社, 2001.
[3] 楊為民,阮鐮等. 可靠性、維修性、保障性總論[M]. 北京:國防工業(yè)出版社, 2001.
[4] 李秋英,李海峰,陸民燕. 基于環(huán)境因素的軟件可靠性定性評價技術(shù)研究[J]. 中國航空學會2007年學術(shù)年會,1-8.
[5] 孟令中,陸民燕,張超群. 基于軟件生命周期的軟件可靠性度量選取與應用[C]. 第六屆中國測試學術(shù)會議, 2010: 468-473.
[6] 石柱,鄭重. 軟件可靠性度量實例研究[J]. 系統(tǒng)工程與電子技術(shù), 2011,33(1):233-236.
[7] 李陽. 軟件可靠性設(shè)計技術(shù)運用分析[J]. 數(shù)字技術(shù)與應用, 2015,15(05): 215.
[8] Daniel Galin. Software Quality Assurance [M]. London:Pearson Education Limited, 2004.
[9] Tasso C. Software Quality Rngineering [M]. Boston: Computational Mechanics Publications, 1997.
王華,江蘇鹽城人,高級工程師,主要從事信息系統(tǒng)建設(shè)、軟件可靠性工程以及相關(guān)技術(shù)研究。
Reliability Analysis of Application Software for Electronic Information System
WANG Hua, WANG Xue-ning, ZHANG Lian-wei, WANG Shan
(The Fourth School of the Rocket Force Equipment Academy, Beijing 100094)
Based upon the importance of software reliability to electronic information system, this paper sets forth main environment factors of application software, puts forward the practical measures for software reliability management and design, carries through reliability validation on basis of software testing, and educes related conclusion, so as to help the development of application software and electronic information system.
electronic information system; application software; reliability analysis
TP311
A
1004-7204(2016)06-0026-04