• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      軟件可靠性綜述

      2021-11-16 19:42:28徐振洋謝萍武孟
      關(guān)鍵詞:軟件可靠性軟件測(cè)試備份

      徐振洋 謝萍 武孟

      針對(duì)大型復(fù)雜軟件可靠性低、重大任務(wù)運(yùn)行過(guò)程中出現(xiàn)軟件故障的問(wèn)題,從軟件的全生命周期角度研究軟件可靠性設(shè)計(jì)方法,從軟件架構(gòu)設(shè)計(jì)、軟件冗余設(shè)計(jì)、軟件健壯性設(shè)計(jì)、軟件測(cè)試設(shè)計(jì)、軟件可讀性設(shè)計(jì)、軟件重用設(shè)計(jì)、數(shù)據(jù)存儲(chǔ)設(shè)計(jì)、軟件錯(cuò)誤恢復(fù)設(shè)計(jì)等方面研究軟件可靠性設(shè)計(jì)方法,涵蓋了軟件需求、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、測(cè)試設(shè)計(jì)等不同階段,最后以實(shí)例進(jìn)行驗(yàn)證。

      軟件是各個(gè)系統(tǒng)的必要組成部分,也是各系統(tǒng)的核心功能所在,隨著SDN/NFV的出現(xiàn),軟件的地位和作用越來(lái)越突出。同時(shí)軟件直接面向各級(jí)各類運(yùn)維人員,是網(wǎng)絡(luò)整體運(yùn)行狀態(tài)的呈現(xiàn)者,為大型任務(wù)網(wǎng)可靠高效運(yùn)行保駕護(hù)航,為重大任務(wù)的順利完成提供技術(shù)支撐,因此研制高可靠性高質(zhì)量的軟件勢(shì)在必行,研究軟件可靠性設(shè)計(jì)是非常有意義的課題。本文從軟件生命周期的角度,研究軟件可靠性的各個(gè)環(huán)節(jié),從軟件需求、軟件體系架構(gòu)、軟件界面、軟件測(cè)試等方面進(jìn)行研究。

      軟件可靠性設(shè)計(jì)

      從軟件體系架構(gòu)設(shè)計(jì)、軟件冗余設(shè)計(jì)、軟件健壯性設(shè)計(jì)、軟件測(cè)試設(shè)計(jì)、軟件可讀性設(shè)計(jì)和軟件重用設(shè)計(jì)方面進(jìn)行詳細(xì)研究。

      軟件架構(gòu)設(shè)計(jì)

      軟件體系架構(gòu)設(shè)計(jì)主要從軟件體系設(shè)計(jì)、模塊化設(shè)計(jì)、服務(wù)化設(shè)計(jì)等方面進(jìn)行設(shè)計(jì)。

      ①體系化設(shè)計(jì):軟件系統(tǒng)越來(lái)越復(fù)雜,可靠性高的軟件要求采用層次結(jié)構(gòu)設(shè)計(jì),層與層之間單向依賴,減少?gòu)?fù)雜性,提高可靠性,是否進(jìn)行層次結(jié)構(gòu)設(shè)計(jì)是關(guān)注的重點(diǎn);

      ②模塊化設(shè)計(jì):是否采用層次結(jié)構(gòu)與模塊化設(shè)計(jì)相結(jié)合的方法,是否進(jìn)行模塊化設(shè)計(jì),模塊化設(shè)計(jì)是否高內(nèi)聚、低耦合,模塊之間接口是否清晰明確簡(jiǎn)潔,上述都是軟件設(shè)計(jì)的關(guān)注重點(diǎn);為降低軟件的復(fù)雜度,采用層級(jí)結(jié)構(gòu)和模塊化設(shè)計(jì)相結(jié)合的思想,將軟件分層,層與層之間只存在單向德依賴關(guān)系,在此基礎(chǔ)上分解為若干個(gè)功能獨(dú)立的模塊。各模塊相互交互,實(shí)現(xiàn)軟件的相關(guān)功能。但是,隨著軟件模塊的數(shù)量增加,軟件模塊間的信息交互勢(shì)必大幅增多,增加了軟件的復(fù)雜度。因此,軟件模塊的劃分需要考慮軟件模塊的功能單一性(即軟件模塊盡量?。┖蛙浖K間信息交互少的原則。

      ③服務(wù)化設(shè)計(jì):將獨(dú)立功能的軟件模塊進(jìn)行了服務(wù)化封裝,服務(wù)之間的通信是否簡(jiǎn)單明確,服務(wù)是否進(jìn)行了注冊(cè)、發(fā)布、共享,該項(xiàng)目的服務(wù)是全新設(shè)計(jì)還是基于已有項(xiàng)目的設(shè)計(jì);是否最大限度重用了服務(wù)庫(kù)中的服務(wù),重用服務(wù)占整個(gè)軟件項(xiàng)目服務(wù)設(shè)計(jì)的百分比是多少;因?yàn)槌墒斓娜霂?kù)服務(wù),均已經(jīng)經(jīng)過(guò)測(cè)試部署使用,其可靠性比較高,直接應(yīng)用于新項(xiàng)目中既可以縮短開(kāi)發(fā)時(shí)間,又可以提高可靠性。

      軟件冗余設(shè)計(jì)

      ①主備熱備設(shè)計(jì):對(duì)于可靠性要求極高的軟件,如航天系統(tǒng)相關(guān)軟件,一定要采用主備熱備、雙機(jī)熱備模式,確保系統(tǒng)故障時(shí)的零切換和數(shù)據(jù)的實(shí)時(shí)存儲(chǔ)備份。

      ②重要模塊備份設(shè)計(jì):針對(duì)系統(tǒng)功能強(qiáng)大復(fù)雜,軟件模塊眾多的系統(tǒng)的,要重點(diǎn)設(shè)計(jì)關(guān)鍵硬件、關(guān)鍵模塊備份模式,冷熱備份根據(jù)實(shí)際需求選擇。

      ③信息冗余設(shè)計(jì):針對(duì)大型復(fù)雜系統(tǒng),數(shù)據(jù)庫(kù)是重要的信息存儲(chǔ)方式,數(shù)據(jù)庫(kù)的選型,選擇達(dá)夢(mèng)、金倉(cāng)國(guó)產(chǎn)化數(shù)據(jù)庫(kù),數(shù)據(jù)高效存儲(chǔ)和讀取。

      軟件健壯性設(shè)計(jì)

      軟件健壯性設(shè)計(jì)包括界面設(shè)計(jì)、數(shù)據(jù)設(shè)計(jì)和軟件操作防護(hù)設(shè)計(jì):

      ①在界面設(shè)計(jì)中:對(duì)輸入數(shù)據(jù)的有效性及合理性進(jìn)行設(shè)計(jì),數(shù)據(jù)輸入范圍設(shè)計(jì)。

      ②數(shù)據(jù)健壯性設(shè)計(jì):對(duì)輸入數(shù)據(jù)的格式和存儲(chǔ)方式進(jìn)行設(shè)計(jì)。

      ③軟件誤刪除防護(hù)設(shè)計(jì):針對(duì)軟件的刪除設(shè)計(jì)做防范操作,首先進(jìn)行刪除提示和確認(rèn)操作設(shè)計(jì),同時(shí)針對(duì)刪除的數(shù)據(jù)做短時(shí)間備份存儲(chǔ),以便出現(xiàn)誤操作刪除時(shí)進(jìn)行撤銷和數(shù)據(jù)恢復(fù)操作。

      軟件測(cè)試設(shè)計(jì)

      在軟件測(cè)試設(shè)計(jì)中,主要關(guān)注如下方法:

      ①需求階段:是否有詳盡的需求說(shuō)明和設(shè)計(jì)文檔(重點(diǎn)關(guān)注是否與用戶進(jìn)行透徹溝通交流),需求不透徹的話,可能會(huì)導(dǎo)致整個(gè)系統(tǒng)重新設(shè)計(jì)翻盤代價(jià)甚大。

      ②概要和詳細(xì)階段:進(jìn)行體系架構(gòu)設(shè)計(jì),軟件模塊劃分設(shè)計(jì),軟件流程設(shè)計(jì)和函數(shù)設(shè)計(jì),能指導(dǎo)軟件編碼;

      ③測(cè)試階段:設(shè)計(jì)測(cè)試用例、測(cè)試策略,黑盒測(cè)試和白盒測(cè)試,進(jìn)行軟件正常運(yùn)行,超負(fù)荷運(yùn)行檢測(cè)并采取手段。

      軟件可讀性設(shè)計(jì)

      軟件編程風(fēng)格是否統(tǒng)一、合理,對(duì)增加軟件代碼可讀性、提高軟件可靠性、便于軟件的維護(hù)等方面有重要影響。要求每一個(gè)軟件模塊標(biāo)準(zhǔn)功能、作用、包含函數(shù)。要求軟件代碼注釋率不低于15 %。

      針對(duì)不同的編程語(yǔ)言分別制定了相應(yīng)的編程規(guī)范,建立了專門編程規(guī)范執(zhí)行制度來(lái)約束編碼人員按編程規(guī)范編寫(xiě)代碼。統(tǒng)一、合理的軟件編程風(fēng)格在一定程度上減少了軟件的問(wèn)題,方便軟件問(wèn)題的排查和后期維護(hù)。

      軟件重用設(shè)計(jì)

      軟件重用的所有資料都是經(jīng)過(guò)嚴(yán)格篩選,按照規(guī)定要求錄入的,被證明是合格、準(zhǔn)確和可靠的。

      數(shù)據(jù)存儲(chǔ)設(shè)計(jì)

      隨著業(yè)務(wù)的多樣化、網(wǎng)絡(luò)的復(fù)雜化,網(wǎng)絡(luò)運(yùn)行過(guò)程中所產(chǎn)生的數(shù)據(jù)越來(lái)越多,數(shù)據(jù)種類越來(lái)越多,除了結(jié)構(gòu)化數(shù)據(jù)之外,非結(jié)構(gòu)化數(shù)據(jù)也越來(lái)越多,傳統(tǒng)的oracle數(shù)據(jù)庫(kù)存在存取速度慢、存取效率低的弊端越來(lái)越難以滿足要求。由于待存儲(chǔ)流量信息巨大,因此采用分級(jí)分布式的云計(jì)算數(shù)據(jù)中心結(jié)構(gòu),每級(jí)數(shù)據(jù)中心的核心存儲(chǔ)平臺(tái)采用HADOOP平臺(tái)的HDFS分布式存儲(chǔ)集群,具有分布式存取、容災(zāi)性強(qiáng)、安全性高等特點(diǎn)。由于網(wǎng)絡(luò)帶寬資源和存儲(chǔ)資源有限,從系統(tǒng)可靠性的角度出發(fā)構(gòu)建分布式NameNode集群,根據(jù)集群的負(fù)載和網(wǎng)絡(luò)狀況進(jìn)行數(shù)據(jù)的安全存儲(chǔ)和安全訪問(wèn),從而保證云存儲(chǔ)數(shù)據(jù)中心的安全和負(fù)載平衡。

      軟件錯(cuò)誤恢復(fù)設(shè)計(jì)

      系統(tǒng)軟件在運(yùn)行過(guò)程中由于軟件運(yùn)行環(huán)境故障、人員操作異常、軟件自身錯(cuò)誤等原因造成軟件出錯(cuò)故障。如何在軟件發(fā)生錯(cuò)誤后盡快的恢復(fù)過(guò)來(lái)、繼續(xù)正常運(yùn)行是軟件可靠性設(shè)計(jì)考慮的重點(diǎn)。

      ①日志機(jī)制:系統(tǒng)軟件設(shè)計(jì)采用日志管理設(shè)計(jì),提供安全日志、操作日志、登錄日志等各種日志的實(shí)時(shí)記錄和存儲(chǔ)備份功能,在軟件發(fā)生故障后,可以查看日志記錄查找故障原因,快速恢復(fù)軟件。

      ②狀態(tài)恢復(fù)機(jī)制:系統(tǒng)總部級(jí)網(wǎng)管中心軟件采用主備雙機(jī)熱備備份,在主用發(fā)生故障后,備用能迅速啟用,狀態(tài)轉(zhuǎn)化為主用。

      ③數(shù)據(jù)恢復(fù)機(jī)制:系統(tǒng)軟件采取自動(dòng)保存、數(shù)據(jù)備份等手段,確保軟件發(fā)生故障后,網(wǎng)絡(luò)管理數(shù)據(jù)的可恢復(fù)性,提高軟件的可靠性。

      實(shí)例驗(yàn)證

      以某平臺(tái)網(wǎng)管軟件為例,進(jìn)行可靠性設(shè)計(jì)實(shí)例驗(yàn)證。

      該軟件實(shí)現(xiàn)對(duì)多個(gè)廠商多個(gè)型號(hào)設(shè)備的統(tǒng)一管理,具有軟件規(guī)模大、前后臺(tái)交互信息量大、頻繁存取數(shù)據(jù)、適合各級(jí)各類操作人員、可視化易操作的特點(diǎn)。

      ①首先進(jìn)行軟件需求設(shè)計(jì),詳細(xì)分解細(xì)化需求,提取出軟件功能(五大功能)、性能(7項(xiàng)性能指標(biāo))、接口(SNMPv2/ SNMPv3/TELNET/SSH/SYSLOG/NETFLOW)、運(yùn)行環(huán)境(中標(biāo)麒麟服務(wù)器和客戶端操作系統(tǒng)、達(dá)夢(mèng)數(shù)據(jù)庫(kù))要求。

      ②進(jìn)行軟件架構(gòu)設(shè)計(jì),分析得知,需要基于B/S軟件架構(gòu)設(shè)計(jì),檢索軟件重用庫(kù),獲取B/S軟件架構(gòu)相關(guān)指導(dǎo)手冊(cè),軟件源代碼,同時(shí)基于重用庫(kù)中的軟件界面集成框架進(jìn)行設(shè)計(jì),大量節(jié)省時(shí)間,同時(shí)軟件架構(gòu)的可靠性和可用性都是經(jīng)過(guò)驗(yàn)證的。

      ③進(jìn)行軟件模塊化、服務(wù)化設(shè)計(jì),根據(jù)需求中規(guī)定的五大功能,詳細(xì)分解為高內(nèi)聚、松耦合的軟件模塊,每個(gè)軟件模塊盡量完成獨(dú)立的軟件功能,同時(shí)基于標(biāo)準(zhǔn)化接口進(jìn)行服務(wù)化封裝,服務(wù)化模塊之間基于標(biāo)準(zhǔn)的消息進(jìn)行信息傳輸。

      ④進(jìn)行軟件界面設(shè)計(jì),基于軟件重用庫(kù)中的軟件界面集成框架進(jìn)行設(shè)計(jì),為了增加軟件界面的可視化,減少?gòu)?fù)雜性和操作盲目性,在每一個(gè)界面元中都丟界面元素的名稱、含義數(shù)據(jù)輸入范圍)進(jìn)行tip框提示,同時(shí)采用能用下拉列表框盡量用下拉列表框的設(shè)計(jì)思路,減少用戶輸入。

      ⑤軟件測(cè)試設(shè)計(jì),進(jìn)行模塊設(shè)計(jì)、合格性測(cè)試設(shè)計(jì)、集成測(cè)試設(shè)計(jì),同時(shí)從軟件安裝、卸載、運(yùn)行負(fù)荷、安全性、可靠性等方面也設(shè)計(jì)相應(yīng)的測(cè)試用例,針對(duì)每一個(gè)測(cè)試用例,都從測(cè)試用例設(shè)計(jì)和編寫(xiě)要從正常值、邊界值、異常值等多個(gè)維度進(jìn)行設(shè)計(jì)。測(cè)試前要確定測(cè)試標(biāo)準(zhǔn)、規(guī)范,設(shè)計(jì)測(cè)試用例要盡可能遍歷所有的測(cè)試項(xiàng)目,測(cè)試要盡可能詳盡,測(cè)試要強(qiáng)化輸入,正常值、邊界值、異常值都要測(cè)試,盡可能多的發(fā)現(xiàn)軟件錯(cuò)誤剔除軟件錯(cuò)誤。

      ⑥容錯(cuò)設(shè)計(jì):針對(duì)軟件刪除,進(jìn)行刪除確認(rèn)提示,同時(shí)提供一個(gè)月內(nèi)的數(shù)據(jù)刪除備份手段;在軟件服務(wù)器方面,采取主備備份機(jī)制,主備軟件同時(shí)熱備運(yùn)行,任何一方出現(xiàn)問(wèn)題都可以即時(shí)接管。

      通過(guò)上述的軟件可靠性設(shè)計(jì),相比于未采取本文論述的系列可靠性手段,大大提高了該軟件的可靠性,縮短了研制周期。

      軟件在各系統(tǒng)中的占比越來(lái)越大,地位越來(lái)越重要,核心功能越來(lái)越突出。因此做好軟件首先要對(duì)軟件各個(gè)環(huán)節(jié)的可靠性進(jìn)行設(shè)計(jì)。只有在軟件生命周期的每一個(gè)環(huán)節(jié)和節(jié)點(diǎn)充分重視和嚴(yán)格執(zhí)行軟件可靠性設(shè)計(jì)的規(guī)定要求,充分收集并利用各測(cè)試階段的可靠性數(shù)據(jù),才能設(shè)計(jì)出高可靠性的軟件。

      隨著軟件定義網(wǎng)絡(luò),軟件定義一切的理念和技術(shù)深入發(fā)展,軟件越來(lái)越成為整個(gè)系統(tǒng)的靈魂所在,因此其可靠與否直接影響整個(gè)系統(tǒng),所以有必要深入研究軟件定義網(wǎng)絡(luò)后的新型軟件可靠性。

      猜你喜歡
      軟件可靠性軟件測(cè)試備份
      “備份”25年:鄧清明圓夢(mèng)
      基于OBE的軟件測(cè)試課程教學(xué)改革探索
      軟件可靠性工程綜合應(yīng)用建模技術(shù)研究
      EXCEL和VBA實(shí)現(xiàn)軟件測(cè)試記錄管理
      電子制作(2018年16期)2018-09-26 03:27:18
      關(guān)于軟件測(cè)試技術(shù)應(yīng)用與發(fā)展趨勢(shì)研究
      軟件測(cè)試工程化模型及應(yīng)用研究
      數(shù)控系統(tǒng)軟件可靠性設(shè)計(jì)與故障分析技術(shù)
      淺析數(shù)據(jù)的備份策略
      科技視界(2015年6期)2015-08-15 00:54:11
      簡(jiǎn)談使用BoundsChecker進(jìn)行計(jì)算機(jī)聯(lián)鎖系統(tǒng)人機(jī)界面軟件可靠性測(cè)試
      出版原圖數(shù)據(jù)庫(kù)遷移與備份恢復(fù)
      阿鲁科尔沁旗| 阿克苏市| 临洮县| 青海省| 旺苍县| 怀集县| 安徽省| 韩城市| 泗水县| 张家界市| 黎平县| 阿拉善盟| 上犹县| 宁阳县| 宣化县| 临猗县| 大港区| 昌黎县| 屯门区| 商都县| 大兴区| 乡城县| 岫岩| 乌拉特后旗| 长海县| 东丽区| 汝州市| 鹤岗市| 平陆县| 岐山县| 定日县| 正安县| 资源县| 永和县| 桑植县| 河西区| 巴林右旗| 惠来县| 陇南市| 卢氏县| 弥渡县|