- 相關(guān)推薦
復(fù)雜軟件系統(tǒng)的軟件網(wǎng)絡(luò)結(jié)點(diǎn)缺陷與維護(hù)的問題和策略論文
摘要:軟件的質(zhì)量直接受軟件體系結(jié)構(gòu)的好壞影響,很長(zhǎng)時(shí)間以來,人們一直非常重視研究軟件的體系結(jié)構(gòu),隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,軟件可以實(shí)現(xiàn)越來越強(qiáng)大的功能,同時(shí)復(fù)雜度也是變得越來越高,軟件的體系結(jié)構(gòu)有了不同粒度、多層次的方式;谟邢蜍浖W(wǎng)絡(luò)的圖論的概念發(fā)展出來了復(fù)雜軟件中的軟件網(wǎng)絡(luò)結(jié)構(gòu)的思想,軟件網(wǎng)絡(luò)的各個(gè)特性應(yīng)被應(yīng)用統(tǒng)計(jì)學(xué)的方法來研究,如:結(jié)構(gòu)穩(wěn)定、幾何特質(zhì)、幾何性質(zhì)學(xué)等,可以發(fā)現(xiàn)復(fù)雜的軟件體系在一定的程度上被網(wǎng)絡(luò)節(jié)點(diǎn)影響著,為了促進(jìn)軟件的體系完善與結(jié)構(gòu)的優(yōu)化,我們應(yīng)當(dāng)認(rèn)真地分析結(jié)點(diǎn)的影響。
關(guān)鍵詞: 軟件系統(tǒng);節(jié)點(diǎn);網(wǎng)絡(luò);缺陷
Abstract: the quality of the software directly by the software system structure is good or bad influence, it is a long time, people have attached great importance to the study of software architecture, with the development of Internet technology, the software can realize more and more powerful, but the complexity is also becoming more and more high, the system structure of the software with different granularity, multi-level the way. A graph theory to software network concept developed software structure of complex networks in the software based on the idea of software, each characteristic of network method should be the application of statistics to study, such as: stable structure, geometric characteristics, geometric properties of science, can be found in software system complex was network node affects in a certain extent, in order to promote the optimization and improvement of the system and structure of the software, we should seriously analyze node effect.
Key words: software maintenance system; node; network; defects
在軟件開發(fā)的實(shí)際過程當(dāng)中潛在的軟降缺陷在一個(gè)復(fù)雜的軟件系統(tǒng)中占有很大的比例,而且它只會(huì)導(dǎo)致比較少的軟件制作時(shí)的失敗,通過觀察發(fā)現(xiàn)的占有絕大多數(shù)的軟件的失敗一般是由非常少部分或者可以說是極少的部分的而且是潛在性的缺陷導(dǎo)致的。當(dāng)把軟件中的大部分的缺陷清除掉之后,只會(huì)微不足道的影響軟件的可靠性。但是當(dāng)清除了那些“大規(guī)!倍抑徽紭O少比例的缺陷的時(shí)候,才會(huì)顯著地增強(qiáng)軟件的可靠性。
1大多數(shù)的缺陷往往包含在少數(shù)的模塊中
在一些測(cè)試軟件中,我們發(fā)現(xiàn)大多數(shù)的缺陷,往往存在于少數(shù)的模塊當(dāng)中。在運(yùn)行的軟件中,往往只有極少數(shù)模塊會(huì)包含絕大多數(shù)的缺陷。當(dāng)然,在這個(gè)現(xiàn)象當(dāng)中我們以前所說的模塊的復(fù)雜性并不能準(zhǔn)確地解釋,其次我們也不能用模塊的規(guī)模加以分析。通常來講模塊存在的缺陷密度會(huì)和我們聲稱的模塊的規(guī)模有關(guān),而且通常意義上模塊的缺陷傾向性和模塊的錯(cuò)誤傾向性可以很好地被軟件的復(fù)雜性度量鎖預(yù)測(cè)的說法存在一定的證據(jù)上的支持。最后,我們還可以斷定一個(gè)結(jié)論:我們發(fā)現(xiàn)的存在于測(cè)試軟件中缺陷,要比已經(jīng)使用一年的軟件中所發(fā)現(xiàn)的要多得多。
為了極大地減少查找軟件缺陷和軟件測(cè)試的成本,一些對(duì)軟件的實(shí)際運(yùn)行影響有著概率很小或者可以說是幾乎沒有的缺陷,我們可以在找到軟件的缺陷傾向性模塊的情況下忽略掉,當(dāng)然,這要根據(jù)軟件產(chǎn)品的那一套質(zhì)量成本理論來判斷。這樣,我們不僅會(huì)明顯的降低軟件的質(zhì)量同時(shí)又可以在一定的程度上節(jié)約軟件的開發(fā)成本。這項(xiàng)研究在開發(fā)軟件的商業(yè)角度上具有比較好的成本和質(zhì)量平衡的指導(dǎo)意義。
2軟件的容錯(cuò)基礎(chǔ)是軟件的結(jié)構(gòu)
軟件的質(zhì)量在很深的程度上是受軟件的結(jié)構(gòu)影響的。正所謂軟件的容錯(cuò)基礎(chǔ)是軟件的結(jié)構(gòu)。其實(shí)事實(shí)上,軟件的開發(fā)和研究人員一直在追求的“低耦合,高內(nèi)聚”的特性只是在軟件的開發(fā)實(shí)踐中的一個(gè)美麗的愿望而已,因?yàn)槲覀兪菬o法在根本上避免軟件開發(fā)工程中出現(xiàn)的高耦合的情況的。因此,軟件格斗設(shè)計(jì)的合理性,對(duì)軟件的穩(wěn)定性和可靠性以及軟件的后期維護(hù)等質(zhì)量上所存在的特性都有著非常重要的影響。
3抽取八軟件系統(tǒng)構(gòu)成成分中某種粒度上的單位部分為結(jié)點(diǎn),是研究軟件網(wǎng)絡(luò)的常用方法
研究軟件網(wǎng)絡(luò)的常用方法,是抽取軟件系統(tǒng)構(gòu)成成分中某種粒度上的單位成分(類、包、模塊或組件等)為結(jié)點(diǎn),將這些單位成分互相之間的依賴關(guān)系(繼承、調(diào)用、消息等)構(gòu)成軟件的網(wǎng)絡(luò)。就目前而言,通過長(zhǎng)時(shí)間的研究,我們可以認(rèn)為,軟件中存在的變更、缺陷等的傳播問題是由于軟件是一種復(fù)雜網(wǎng)絡(luò)的結(jié)構(gòu),所以其有著比較小的傳播代價(jià)。因?yàn)槿毕荨i漪效應(yīng)、變更等在一定的程度上都是很容易就可以擴(kuò)散到別的網(wǎng)絡(luò)結(jié)點(diǎn)上的。從仿真的手段得到的證明和理論上邏輯分析來看,上面我們所說的有關(guān)軟件變更或缺陷問題傳播的代價(jià)的結(jié)論是有著一定的說服力的。在大量的有關(guān)軟件系統(tǒng)中包含的網(wǎng)絡(luò)結(jié)構(gòu)的研究下針對(duì)這樣的矛盾,我們引發(fā)上述情況的一些問題的所在:就目前而言,我們所研究的軟件缺陷、變更是以復(fù)雜復(fù)雜的網(wǎng)絡(luò)理論作為比較強(qiáng)的指導(dǎo)的。一般大多都是軟件的類、模塊、包等構(gòu)成軟件的網(wǎng)絡(luò)結(jié)點(diǎn)。一般情況下結(jié)點(diǎn)間的連通性可以通過這些單元之間的依賴關(guān)系所構(gòu)成的網(wǎng)絡(luò)結(jié)點(diǎn)的邊反映的。
4軟件網(wǎng)絡(luò)
在網(wǎng)絡(luò)形式表述軟件結(jié)構(gòu)時(shí),通常會(huì)在不同粒度上抽選網(wǎng)絡(luò),例如包、類、方法等。軟件網(wǎng)絡(luò)就是由不同的粒度簡(jiǎn)化成的結(jié)點(diǎn)和他們的相互依賴關(guān)系簡(jiǎn)化成的邊所構(gòu)成的軟件結(jié)構(gòu)。Valverde等人在2002年,以軟件工程中的類圖為研究對(duì)象對(duì)軟件網(wǎng)絡(luò)進(jìn)行了最早的研究,研究中軟件系統(tǒng)用無向網(wǎng)絡(luò)表示,類用網(wǎng)絡(luò)中的結(jié)點(diǎn)表示,邊是類之間的繼承和關(guān)聯(lián)關(guān)系。對(duì)JDK的統(tǒng)計(jì)特性進(jìn)行了系統(tǒng)的分析。分析結(jié)果顯示:“小世界”和“無尺度”兩個(gè)特性在兩個(gè)軟件系統(tǒng)的結(jié)構(gòu)中得到了非常明顯的展現(xiàn)。
“小世界”特性:網(wǎng)絡(luò)中連接任何一兩個(gè)節(jié)點(diǎn)的到最短路徑的邊的數(shù)目為兩節(jié)點(diǎn)間的距離,則所有節(jié)點(diǎn)對(duì)之間距離的平均值為網(wǎng)絡(luò)的平均最短路徑長(zhǎng)度,其用于表述網(wǎng)絡(luò)節(jié)點(diǎn)間的分離程度。在研究中發(fā)現(xiàn),“小世界”特性為, 大部分規(guī)模大的真實(shí)系統(tǒng)被抽象成為網(wǎng)絡(luò)后,它的平均最短路徑長(zhǎng)度比想象的要小的很多現(xiàn)象。
“無尺度”特性:與該節(jié)點(diǎn)連接的相鄰節(jié)點(diǎn)的數(shù)目通常被定義為節(jié)點(diǎn)的度,而網(wǎng)絡(luò)的平均度即節(jié)點(diǎn)的度的平均值。理論上其他全局特征參數(shù)的量化數(shù)值都可以通過度分布計(jì)算得出,一個(gè)重要的發(fā)現(xiàn)在復(fù)雜網(wǎng)絡(luò)研究中被指出,大部分的規(guī)模較大的真實(shí)系統(tǒng)向?qū)?yīng)的網(wǎng)絡(luò)的度分布都服從冪律分布。這就是“無尺度”特性,然而Myers的研究表明,單純的使用無向網(wǎng)絡(luò)模型可能會(huì)推算出錯(cuò)誤的軟件工程原則,所以邊的方向軟件網(wǎng)絡(luò)中也是有意義的。
5軟件網(wǎng)絡(luò)的結(jié)點(diǎn)缺陷不能通過較小的代價(jià)傳遞給其他結(jié)點(diǎn)
軟件網(wǎng)絡(luò)是一個(gè)比較復(fù)雜的網(wǎng)絡(luò),那么為什么它的結(jié)點(diǎn)缺陷并不能通過比較小的代價(jià)來傳遞到其所連通的其他結(jié)點(diǎn)中呢?文就這個(gè)現(xiàn)象做了研究,對(duì)其部分原因做出了解答,并且分析和證實(shí)出了不同之間的結(jié)點(diǎn)對(duì)軟件變更和缺陷等傳播問題的影響。本文為了研究這些問題構(gòu)建了一個(gè)軟件網(wǎng)絡(luò),構(gòu)建這個(gè)軟件網(wǎng)絡(luò)時(shí),同時(shí)考慮了結(jié)點(diǎn)散播信息的能力、結(jié)點(diǎn)收集信息的能力和不同方法層之間相互依賴的關(guān)系等問題。通過之前構(gòu)建的這個(gè)軟件網(wǎng)絡(luò),我們可以勾畫出一個(gè)軟件網(wǎng)絡(luò)各個(gè)結(jié)點(diǎn)的測(cè)量影響值的矩陣。在這個(gè)矩陣?yán)锩鎯?chǔ)存了該軟件網(wǎng)絡(luò)的加權(quán)依賴關(guān)系,所以我們可以通過研究這個(gè)矩陣來得出軟件網(wǎng)絡(luò)的加權(quán)網(wǎng)絡(luò)特性。得出來的這些關(guān)系數(shù)據(jù)能夠很精確的表現(xiàn)出真正的軟件網(wǎng)絡(luò)的很多特性。
6WSNNI的統(tǒng)計(jì)特性及相應(yīng)的結(jié)點(diǎn)影響分析
加權(quán)網(wǎng)絡(luò)在很多方面是和復(fù)雜網(wǎng)絡(luò)是相同的。我們下面要講一下WSNNI模型下某些加權(quán)網(wǎng)絡(luò)的特性,并由這些特性來分析結(jié)點(diǎn)在加權(quán)網(wǎng)路中的影響。對(duì)于這些影響,我們給出了四個(gè)假設(shè)。在結(jié)點(diǎn)強(qiáng)度的問題上,通過一些數(shù)據(jù)和統(tǒng)計(jì),我們可以很明顯的看出,結(jié)點(diǎn)強(qiáng)度分布就是結(jié)點(diǎn)在結(jié)點(diǎn)加權(quán)網(wǎng)絡(luò)中的相互之間影響的分布。通常,小的結(jié)點(diǎn)要和大的結(jié)點(diǎn)相互連接。大多數(shù)結(jié)點(diǎn)強(qiáng)度較小,少部分結(jié)點(diǎn)強(qiáng)度較大。最早存在的結(jié)點(diǎn)能夠連接很多的結(jié)點(diǎn),而后面的結(jié)點(diǎn)連接的就顯得少了很多。關(guān)于這方面,很多文獻(xiàn)給予了詳細(xì)表述,這里就不贅述了。在有關(guān)加權(quán)路徑和平均最短加權(quán)路徑的問題上,在WSNNI的測(cè)試中,平均路徑值對(duì)結(jié)點(diǎn)影響也比較大。經(jīng)過測(cè)試發(fā)現(xiàn),當(dāng)平均路徑值小時(shí),結(jié)點(diǎn)之間的影響就大。而且平均最短路徑反映的是軟件的耦合強(qiáng)度,同時(shí)軟件的耦合強(qiáng)度又會(huì)直接影響變更的難度和軟件維護(hù)的問題。平均最短路徑越大,耦合強(qiáng)度就會(huì)越弱,結(jié)點(diǎn)間的傳播代價(jià)就會(huì)越大,反之亦然。在這里存在的無權(quán)網(wǎng)絡(luò),就是權(quán)值為一的加權(quán)網(wǎng)絡(luò)。無權(quán)網(wǎng)絡(luò)權(quán)值要大于加權(quán)網(wǎng)絡(luò)。無權(quán)網(wǎng)絡(luò)最短路徑比加權(quán)網(wǎng)絡(luò)小,所以其反映的網(wǎng)絡(luò)結(jié)點(diǎn)影響要遠(yuǎn)遠(yuǎn)大于加權(quán)網(wǎng)絡(luò)。
在研究網(wǎng)絡(luò)結(jié)點(diǎn)時(shí),我們發(fā)現(xiàn)結(jié)點(diǎn)中存在少數(shù)結(jié)點(diǎn),它的入點(diǎn)和出點(diǎn)強(qiáng)度都大于其他結(jié)點(diǎn)。而與它們相鄰的結(jié)點(diǎn)的影響測(cè)度值都很大。我們經(jīng)過很多測(cè)試之后發(fā)現(xiàn)一個(gè)問題,即許多測(cè)試前發(fā)現(xiàn)的錯(cuò)誤在測(cè)試中并不能體現(xiàn)出來,同時(shí)在測(cè)試中發(fā)現(xiàn)的很多錯(cuò)誤在實(shí)際運(yùn)行中也無法發(fā)祥。據(jù)此,我們通過研究結(jié)點(diǎn)傳播的關(guān)系發(fā)現(xiàn),只有關(guān)鍵結(jié)點(diǎn)的錯(cuò)誤才能很好地傳播下去,而非關(guān)鍵結(jié)點(diǎn)的錯(cuò)誤很可能在傳播過程中消失。
7網(wǎng)絡(luò)軟件正向著高復(fù)雜度、大規(guī);姆较虬l(fā)展
隨著科學(xué)技術(shù)的不斷進(jìn)步,摩爾定律推導(dǎo)的計(jì)算機(jī)技術(shù)的發(fā)展,以及其所帶動(dòng)的計(jì)算機(jī)軟件網(wǎng)絡(luò)的進(jìn)步,生活中各個(gè)領(lǐng)域都離不開軟件的應(yīng)用。網(wǎng)絡(luò)軟件已經(jīng)向著高復(fù)雜度、大規(guī);姆较虬l(fā)展著,所以應(yīng)用軟件的質(zhì)量在很大的程度上越來越受到軟件的體系結(jié)構(gòu)所帶來的影響。網(wǎng)絡(luò)結(jié)點(diǎn)是我們對(duì)軟件系統(tǒng)類的抽象,我們對(duì)結(jié)點(diǎn)分布以及結(jié)點(diǎn)強(qiáng)度和結(jié)點(diǎn)影響進(jìn)行了全面完整的分析,通過對(duì)存在于網(wǎng)絡(luò)圖中的特定屬性的一些分析,重點(diǎn)研究網(wǎng)絡(luò)上結(jié)點(diǎn)與結(jié)點(diǎn)之間影響和密切程度深入的分析,并在最后介紹了一些關(guān)于關(guān)鍵結(jié)點(diǎn)的內(nèi)容。在未來軟件網(wǎng)絡(luò)的工作中,對(duì)于軟件結(jié)構(gòu)優(yōu)化和可靠性的分析的問題我們必須還要進(jìn)行進(jìn)一步的探討與研究。
8結(jié)語
軟件工程從最初的誕生開始,就一直在致力于開發(fā)具有可用性、正確性以及開銷合宜的具有較高質(zhì)量的網(wǎng)絡(luò)軟件產(chǎn)品,經(jīng)過40多年的奮斗,我們已經(jīng)取得了讓人矚目的成績(jī),但是,現(xiàn)在的網(wǎng)絡(luò)計(jì)算機(jī)環(huán)境,在互聯(lián)網(wǎng)的基礎(chǔ)之上,規(guī)模不斷的擴(kuò)大,組成的元素越來越復(fù)雜多樣,部署配置和持續(xù)演化的網(wǎng)絡(luò)下的軟件系統(tǒng),隨著用戶的不斷地?cái)U(kuò)展和應(yīng)用領(lǐng)域的不斷地?cái)U(kuò)大,其復(fù)雜度和規(guī)模正在以超越人類大腦處理速度的幾何倍數(shù)的速度成長(zhǎng),使得軟件網(wǎng)絡(luò)工程不得不去面對(duì)一個(gè)又一個(gè)的挑戰(zhàn),如果我們沒有對(duì)復(fù)雜系統(tǒng)進(jìn)行的科學(xué)的理解和認(rèn)識(shí),一些很小的故障和缺陷就能讓它產(chǎn)生幾乎全局的負(fù)面影響,有時(shí)候甚至?xí)菫?zāi)難性的。多年以來,復(fù)雜網(wǎng)絡(luò)理論和網(wǎng)絡(luò)思維為我們分析和刻畫提供了非常有力的工具,同時(shí)也讓軟件工程和復(fù)雜性的科學(xué)的交叉學(xué)科奠定了基礎(chǔ)。
規(guī)?梢愿淖円磺校覀円眯碌囊暯切碌乃枷雭響(yīng)對(duì)以后遇到的種種具有挑戰(zhàn)性的問題,尤其是將復(fù)雜的網(wǎng)絡(luò)理論應(yīng)用到軟件網(wǎng)絡(luò)的領(lǐng)域,為我們尋找軟件的本質(zhì)探索出了新的方法和新的思路。
參考文獻(xiàn):
[1] 張婷.淺析復(fù)雜軟件的網(wǎng)絡(luò)結(jié)點(diǎn)影響[J].計(jì)算機(jī)光盤軟件與應(yīng)用,2014(10).
[2] 汪北陽,呂金虎.復(fù)雜軟件系統(tǒng)的軟件網(wǎng)絡(luò)結(jié)點(diǎn)影響分析[J].軟件學(xué)報(bào),2013(12).
[3] 宋化境.基于OSS的自動(dòng)化測(cè)試系統(tǒng)的研究與開發(fā)計(jì)算機(jī)科學(xué)與技術(shù)[D].東南大學(xué),2011.
【復(fù)雜軟件系統(tǒng)的軟件網(wǎng)絡(luò)結(jié)點(diǎn)缺陷與維護(hù)的問題和策略論文】相關(guān)文章:
關(guān)于軟件企業(yè)非獨(dú)立核算分公司績(jī)效管理的問題和策略06-13
軟件工程問題的可行性研究探析論文05-04
軟件工程論文題目06-05
談?dòng)?jì)算機(jī)應(yīng)用軟件的開發(fā)和維護(hù)方案08-04
茶在裝飾繪畫中的問題和策略的探討論文05-03
CDMA系統(tǒng)硬切換失敗故障處理的問題和方式論文04-27
復(fù)雜網(wǎng)絡(luò)上的傳播和耦合動(dòng)力學(xué)過程研究論文提綱06-11
淺談文化意識(shí)培養(yǎng)在外語教學(xué)中的問題和策略論文05-03