任洪君
摘 要 隨著科技時(shí)代的不斷推進(jìn),我國(guó)軟件行業(yè)的發(fā)展起到了更加的作用。人們對(duì)于軟件的要求在不斷的提升,比如軟件的可靠性、安全性和保密性等可信性質(zhì)都是人們關(guān)注的重點(diǎn)。本文主要對(duì)高可信軟件工程技術(shù)的發(fā)展現(xiàn)狀以及發(fā)展過程中所要面對(duì)的困難進(jìn)行了討論,同時(shí)提出了高可信軟件的發(fā)展趨勢(shì)。
【關(guān)鍵詞】軟件開發(fā) 高可信軟件 可靠性技術(shù)
伴隨著時(shí)代的發(fā)展,計(jì)算機(jī)應(yīng)用不斷地深入人們的生活中,同時(shí)軟件的應(yīng)用也已經(jīng)在人們正常生活和國(guó)家建設(shè)上擁有了良好的生態(tài)環(huán)境。良好的軟件構(gòu)架給人們的生活帶來(lái)了便利,給人們提供了一種新的生活方式,打開電腦、手機(jī)就可以完成原來(lái)需要到處跑的窘境,人們可以不出家門獲悉全球的動(dòng)態(tài),并且通過新興的行業(yè)電子商務(wù),在家中也可以工作。軟件不僅僅幫助人們更高效、更便捷的生活,在國(guó)家建設(shè)上面,也起著至關(guān)重要的作用。因此,如何保證軟件運(yùn)行過程中與硬件完美結(jié)合,同時(shí)增加軟件的可信程度成為現(xiàn)今軟件工程開發(fā)的重要部分。
1 高可信軟件工程技術(shù)的發(fā)展現(xiàn)狀
高可信軟件的開發(fā)目的就是不會(huì)因?yàn)橄到y(tǒng)中的固有錯(cuò)誤、生態(tài)環(huán)境的改變、大規(guī)模惡意攻擊造成軟件崩潰。這就要求軟件的開發(fā)中,對(duì)于系統(tǒng)行為有著精確的把控,不讓系統(tǒng)的bug影響軟件的正常運(yùn)行。
軟件工程技術(shù)是指在軟件的開發(fā)、運(yùn)行和維護(hù)的相應(yīng)技術(shù),由于對(duì)高可信軟件的要求較高,所以我國(guó)對(duì)于高可信軟件的開發(fā)還停留在“軍用穩(wěn)定、民用簡(jiǎn)單”的程度。我國(guó)的火箭成功率是世界的前三名,如此高的成功率,不僅是硬件的實(shí)力強(qiáng),同時(shí)也是軟件的穩(wěn)定性高,成就了現(xiàn)在我國(guó)火箭發(fā)射的成功率。但是我國(guó)各大銀行的網(wǎng)上銀行軟件雖然能夠運(yùn)行,但是流暢性和實(shí)用性卻大打折扣,這就使用戶的使用體驗(yàn)下降。高可信軟件技術(shù)需要從三個(gè)方面尋求支持才能讓軟件發(fā)揮其作用,從軟件的運(yùn)行系統(tǒng)中需要得到軟件的訪問權(quán)限控制,不讓其他軟件能夠更改底層文件,比如Android系統(tǒng)中,系統(tǒng)的開源程度較高,高可信軟件運(yùn)行時(shí)就需要得到系統(tǒng)的支持;軟件的過程技術(shù),需要對(duì)軟件的可靠性進(jìn)行驗(yàn)證和度量,所以過程技術(shù)中使用一種工程化的方法,對(duì)軟件正常運(yùn)行進(jìn)行支持。
2 高可信軟件技術(shù)的發(fā)展的困難
高可信軟件中有六項(xiàng)性質(zhì)的好壞,是對(duì)于軟件是否能夠穩(wěn)定運(yùn)行的評(píng)判標(biāo)準(zhǔn),這六項(xiàng)標(biāo)準(zhǔn)分別是可靠性(reliability)、可靠安全性(safety)、保密安全性(security)、生存性(survivability)、容錯(cuò)性(fault tolerance)、時(shí)效性(real time),當(dāng)軟件出現(xiàn)以上六種性質(zhì)錯(cuò)誤時(shí),就會(huì)造成不可挽回的損失。并且軟件功能和這些性質(zhì)是混雜在一起的,就意味著軟件的可信性的高低,收到控制時(shí)就變得更加復(fù)雜,如何保證軟件能夠成為高可信軟件就成為一個(gè)難題。
2.1 軟件的行為特征
如何在軟件靜態(tài)和動(dòng)態(tài)使用時(shí)描述軟件的行為特征,是高可信軟件開發(fā)時(shí)所要面臨的巨大挑戰(zhàn)。在龐大的數(shù)據(jù)與軟件結(jié)構(gòu)里,想要有效的分析出軟件與系統(tǒng)的行為特征,是非常困難的,有時(shí)需要進(jìn)行相應(yīng)的預(yù)測(cè)才能使軟件正常的運(yùn)行。同時(shí)軟件的靜態(tài)語(yǔ)法和動(dòng)態(tài)語(yǔ)法是分離開的,所以對(duì)于推理的難度又有所增加。
2.2 軟件可信性質(zhì)的設(shè)計(jì)和推理
如何將軟件的可信性質(zhì),也就是如何將軟件主體性質(zhì)融入到軟件的操作當(dāng)中?通常來(lái)說可信性質(zhì)是對(duì)于整個(gè)軟件系統(tǒng)進(jìn)行設(shè)計(jì)的,并且是在軟件的設(shè)計(jì)過程中逐步的開發(fā)出來(lái)的,最終將這些性質(zhì)進(jìn)行復(fù)雜的融合和測(cè)試,最終能夠獲得這些可信性質(zhì)。如何將多種性質(zhì)從不同的開發(fā)方向進(jìn)行融合時(shí),能夠控制這個(gè)系統(tǒng)的復(fù)雜性,是進(jìn)行全方面的可信性質(zhì)的軟件設(shè)計(jì)和驗(yàn)證的關(guān)鍵。
2.3 如何量化軟件的可信性質(zhì)
由于對(duì)高可信軟件技術(shù)研究較少,沒有一個(gè)系統(tǒng)的量化標(biāo)準(zhǔn)在軟件開發(fā)完成后對(duì)軟件的可信性質(zhì)進(jìn)行驗(yàn)證。如何發(fā)現(xiàn)和測(cè)評(píng)軟件是否缺失可信性質(zhì),是提高軟件可靠程度所要面對(duì)的一大難題。量化是一種科學(xué)成熟的重要標(biāo)志,如何針對(duì)軟件的完整性、可靠性、安全性進(jìn)行考量是接下來(lái)需要付出巨大努力的。而且在軟件的使用過程中,還要制定一套完整的跟蹤制度,防止軟件出現(xiàn)可信性質(zhì)缺失造成無(wú)法挽回的損失。
3 高可信軟件工程技術(shù)的開發(fā)方法
形式化方法對(duì)高可信軟件技術(shù)的發(fā)展與推進(jìn)起這至關(guān)重要的作用,但是這種方法的運(yùn)用多數(shù)還存在于實(shí)驗(yàn)室中,以一種標(biāo)準(zhǔn)化的模式,對(duì)高可信軟件進(jìn)行規(guī)范化,同時(shí)將形式化和非形式化進(jìn)行結(jié)合是行業(yè)的趨勢(shì)。多種可信性質(zhì)的有效結(jié)合是高可信軟件開發(fā)的重點(diǎn),利用形式化方法為高可信軟件工程技術(shù)提供一個(gè)高效、統(tǒng)一的結(jié)構(gòu)框架能夠同時(shí)支持多種的可信性質(zhì),所以形式化方法能夠?qū)㈥P(guān)鍵性質(zhì)進(jìn)行有機(jī)集成。
有些形式化工程方法,可以提供具有形式化方法基礎(chǔ)的工具,這是一種較強(qiáng)的自動(dòng)化工具,使得使用人無(wú)需擁有較強(qiáng)的形式化專業(yè)知識(shí)就能夠使用形式化工程方法。工具的人機(jī)交互功能非常的易于理解,可以有效地對(duì)軟件的主要性質(zhì)、設(shè)計(jì)進(jìn)行相應(yīng)的測(cè)試。
4 總結(jié)
高可信軟件工程技術(shù)是當(dāng)前軟件技術(shù)行業(yè)所要面對(duì)的重要挑戰(zhàn)。把握住這次信息化改革的腳步就能讓我國(guó)軟件開發(fā)行業(yè)更上一層樓。發(fā)展高可信軟件技術(shù)有利于加深人們對(duì)于高可信軟件技術(shù)的認(rèn)識(shí);提升我國(guó)科技的發(fā)展;可靠性的提升還可以幫助人類更好地探索未知的世界,讓軟件能夠更好地服務(wù)于人類社會(huì)。
參考文獻(xiàn)
[1]楊芙清,梅宏,呂建,金芝.淺論軟件技術(shù)發(fā)展[J].電子學(xué)報(bào),2002,30(12A):1901-1906.
[2]High Confidence Syst ems Working Group,NSTC. Setting an interagency high confidence syst ems(HCS)research agenda[A].Proceedings of the Interagency High Confidence Systems Workshop[C].Arlington,Virginia,25 March 1998.
[3]陳火旺,王戟,董威.高可信軟件工程技術(shù)[J].電子學(xué)報(bào),2003,31(12A):1933-1938.
作者單位
天津港信息技術(shù)發(fā)展有限公司 天津市 300456