公務(wù)員期刊網(wǎng) 論文中心 正文

實時軟件開發(fā)方法思考

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了實時軟件開發(fā)方法思考范文,希望能給你帶來靈感和參考,敬請閱讀。

實時軟件開發(fā)方法思考

摘要:當(dāng)今是個信息自動化的時代,軟件已應(yīng)用于人們生活的環(huán)境的各個方面。把面向?qū)ο蟮膶崿F(xiàn)方法引入到實時軟件系統(tǒng)的開發(fā)過程中具有重大的作用,可以達(dá)到反復(fù)使用,開發(fā)周期時間短、軟件質(zhì)量增強(qiáng)、開發(fā)有保障以及開發(fā)成本低等效能目的。這樣就確保了實時軟件的良性開發(fā)并使這種開發(fā)系統(tǒng)化和工程化,更使人們無論在生產(chǎn)方面還是學(xué)習(xí)方面都會有很大的便利并提升了生產(chǎn)生活的質(zhì)量

關(guān)鍵詞:面向?qū)ο螅粚崟r軟件;開發(fā)方法;軟件工程

實時系統(tǒng)是計算機(jī)系統(tǒng)中特殊的系統(tǒng),輸出值和系統(tǒng)的消耗的時間決定了這個系統(tǒng)的結(jié)果是否精確,即用戶希望以極短的時間獲取最佳最有效的運算結(jié)果。在以前實時系統(tǒng)主要服務(wù)于國家軍事安全方面,今天隨著這一系統(tǒng)的研發(fā),它廣泛應(yīng)用我們社會生活的各個方面和各個環(huán)節(jié),其應(yīng)用范圍從洗衣機(jī)、烤箱到自動化的生產(chǎn)線、醫(yī)學(xué)輔助機(jī)械、交通運輸控制、天氣預(yù)報預(yù)測、航天動力工程等等。在軟件開發(fā)中實時系統(tǒng)中的軟件部分逐漸成為一個不可缺少的獨立部分,貫穿于軟件開發(fā)的始終。

1.闡釋實時軟件的內(nèi)涵

實時軟件是實時系統(tǒng)中的軟件。當(dāng)外部世界發(fā)生變化時,相應(yīng)地實時系統(tǒng)就會對這種變化做出動作進(jìn)行回應(yīng),并在規(guī)定的時間內(nèi)、依靠嚴(yán)格的控制、最大化地獲取數(shù)據(jù)來實現(xiàn)這一功能。特別要指出的是,這些控制是有嚴(yán)格規(guī)范的,這便對實時系統(tǒng)的應(yīng)用進(jìn)行了限制,只應(yīng)用于它相對應(yīng)的方面。另外,實時系統(tǒng)具有高標(biāo)準(zhǔn)的要求,主要可以體現(xiàn)在以下方面:其一、時間方面,必須在規(guī)定的時間內(nèi)處理完突發(fā)事物,如果超過時間就會造成不可彌補(bǔ)的損失;其二、正確性方面,在規(guī)定的時間內(nèi)對突發(fā)事物做出合理的邏輯判斷和處理,這就確保了結(jié)果的正確性。同時,存在著對實時系統(tǒng)的實時性有一個普遍的誤區(qū),他們狹隘地臆斷實時就是速度要快。以第一時間對外部情況做出反應(yīng)是實時系統(tǒng)的一個優(yōu)點,快速反應(yīng)是實時性的一個要求,但是兩者有著本質(zhì)的區(qū)別,不可混淆概念。有時快速反應(yīng)并不意味著實現(xiàn)了實時性。所謂的實時性是指要求圓滿處理完外部相應(yīng)的事物和要求必須在規(guī)定的時間內(nèi)。除了具有一般軟件系統(tǒng)的特點外,實時系統(tǒng)軟件還具有:首先,時間限制,即實時性。要求在規(guī)定的時間內(nèi)對于外部的發(fā)生的事物系統(tǒng)要做出反應(yīng)并處理好;其次,穩(wěn)定性。如果系統(tǒng)重啟和故障恢復(fù)系統(tǒng)會很快復(fù)原且數(shù)據(jù)不受損;再次,多任務(wù)、并行性、分布性。實時系統(tǒng)可以同時同步對于外部世界或者分布較廣的多個問題和任務(wù),進(jìn)行有效的處理并有效地保證處理的結(jié)果具有可靠性。而這種處理的有效性和可靠性是由系統(tǒng)的實時性決定的;最后,對于操作系統(tǒng)的底層具有開發(fā)性,實時操作系統(tǒng)就是實時軟件應(yīng)用中所使用的操作系統(tǒng),要求在優(yōu)先調(diào)配機(jī)制和內(nèi)存鎖定機(jī)制控制下,實現(xiàn)多任務(wù)同時同步處理。特別要注意的是,對于系統(tǒng)中的語言開發(fā)原則也要堅持實時性原則,選擇實時性語言,以求對多個任務(wù)進(jìn)行并行處理。

2.探討實時軟件開發(fā)方法

與普通的實時軟件相比,復(fù)雜性是兩者的共性,實時系統(tǒng)的軟件還具有自己的特殊性要求,那就是時間控制的因素,這就是實時軟件的結(jié)構(gòu)和開發(fā)方法的優(yōu)勢。

2.1實時分析技術(shù)

以面臨解決的事實問題或既定的目標(biāo)為依托,全面解析實時系統(tǒng)的軟件和硬件部分,而后對硬件和軟件進(jìn)行拆解,以求對設(shè)計實時軟件奠定根基,這就是實時系統(tǒng)在分析階段中所要完成的任務(wù)。建模和仿真技術(shù)是實時系統(tǒng)進(jìn)行分析才應(yīng)用的技術(shù)。對實時系統(tǒng)元素進(jìn)行建模時要求分析人員必須利用好數(shù)學(xué)輔助工具,另外,把握時間長短和對資源大小進(jìn)行估量是分析人員在這一過程中特別要注意的問題。根據(jù)在對數(shù)據(jù)流進(jìn)行分析的基礎(chǔ)上,分析人員要建模實時系統(tǒng)的硬件和軟件元素,控制以概率的形式進(jìn)行,這就是數(shù)學(xué)分析方法應(yīng)該注意的。同時,對系統(tǒng)時間和資源大小如何進(jìn)行評估,就要求分析人員以網(wǎng)絡(luò)分析、序列論、圖形論和數(shù)據(jù)模型等方式來推導(dǎo)出來。RMS理論為基礎(chǔ),能夠分析并行的多任務(wù)的分析技術(shù),是為了輔助RMAM的分析方法而設(shè)立的理論。判斷在實時系統(tǒng)中在調(diào)度方面利用RMS處理并行任務(wù)是否能夠滿足他們的實時性的依據(jù),那就是看有沒有采用采用RMA分析技術(shù)。分析系統(tǒng)的性能需要使用仿真和建模工具,利用這兩種工具軟件工程師還能夠構(gòu)建一個模型,通過這樣的形式,可以有效地理解系統(tǒng)的運作。為建立一個實時系統(tǒng)的概念模型需要通過系統(tǒng)的狀態(tài)圖、活動圖和模塊圖,這就是系統(tǒng)的建模方法。然后在在建立的模型的基礎(chǔ)上,分析和仿真系統(tǒng)的行為和執(zhí)行情況,并測試系統(tǒng)是否具有一致性和完整性,最后,匯總在真實系統(tǒng)中的各種數(shù)據(jù)和特性。

2.2實時設(shè)計和實現(xiàn)技術(shù)

在給定的時間控制情況下如何完成系統(tǒng)的目標(biāo)是實時設(shè)計階段中主要面對的任務(wù)。處理實時軟件中的優(yōu)先權(quán)的選擇、多任務(wù)和并行、同步和異步、時間約束等問題是設(shè)計實時軟件所必須考慮的因素。通常都是通過擴(kuò)展一些非實時設(shè)計方法是實時軟件的設(shè)計方法所采用的手段,而基于過程的模塊化的設(shè)計方法是傳統(tǒng)的實時軟件的設(shè)計方法才采用的手段。不僅可以采用自頂向下和結(jié)構(gòu)化的程序設(shè)計,而且可以采用圖形化的語言描述設(shè)計,還有一些運用有限狀態(tài)機(jī)、Petir網(wǎng)、消息傳遞系統(tǒng)或一某種專門語言等是使用面向數(shù)據(jù)的設(shè)計方面向?qū)ο蟮膶崟r軟件開發(fā)方法所研究的基礎(chǔ)性方法。

2.3傳統(tǒng)實時軟件開發(fā)方法應(yīng)該注意的問題

由于實時軟件的應(yīng)用于各個領(lǐng)域,這樣就使實時軟件面臨的問題越來越多,最終使實時軟件很復(fù)雜了。在過程的設(shè)計方法上而建立的傳統(tǒng)實時軟件已不能夠適應(yīng)變化的新情況了。它主要存在以下問題:首先,分別對過程和數(shù)據(jù)進(jìn)行處理,這樣就使真實世界的實際情況失去了本來面目,更加劇了分析和設(shè)計實際世界的難度;其次,沒有統(tǒng)一性的劃分原則對采用層次化的功能模塊劃分系統(tǒng),最為嚴(yán)重的是,某個別的開發(fā)人員的主觀看法完全左右了對組織軟件單元,系統(tǒng)的劃分,這樣就失去了客觀性加劇了實時軟件開發(fā)的困難;最后,由于人為的局限性使得對調(diào)度的分析和描述過程也相當(dāng)?shù)膹?fù)雜。

3.結(jié)語

隨著電子信息技術(shù)的發(fā)展,我們研究實時軟件開發(fā)時,要具有勇于突破和敢于創(chuàng)新的斗志,在對現(xiàn)實情況進(jìn)行分析和研究的基礎(chǔ)上,要不斷對實時軟件進(jìn)行改進(jìn),以達(dá)到它更好地服務(wù)于社會的目的。

參考文獻(xiàn):

[1]肖亞利.面向?qū)ο蟮膶崟r軟件開發(fā)方法研究[D].四川大學(xué),2003.

[2]沈芳平.鍋爐熱效率計算方法研究與軟件開發(fā)[D].東南大學(xué),2004.

作者:鄭德寶 單位:泉州師范學(xué)院軟件學(xué)院