前言:想要寫出一篇引人入勝的文章?我們特意為您整理了實時軟件開發(fā)方法思考范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:當今是個信息自動化的時代,軟件已應用于人們生活的環(huán)境的各個方面。把面向?qū)ο蟮膶崿F(xiàn)方法引入到實時軟件系統(tǒng)的開發(fā)過程中具有重大的作用,可以達到反復使用,開發(fā)周期時間短、軟件質(zhì)量增強、開發(fā)有保障以及開發(fā)成本低等效能目的。這樣就確保了實時軟件的良性開發(fā)并使這種開發(fā)系統(tǒng)化和工程化,更使人們無論在生產(chǎn)方面還是學習方面都會有很大的便利并提升了生產(chǎn)生活的質(zhì)量
關(guān)鍵詞:面向?qū)ο?;實時軟件;開發(fā)方法;軟件工程
實時系統(tǒng)是計算機系統(tǒng)中特殊的系統(tǒng),輸出值和系統(tǒng)的消耗的時間決定了這個系統(tǒng)的結(jié)果是否精確,即用戶希望以極短的時間獲取最佳最有效的運算結(jié)果。在以前實時系統(tǒng)主要服務于國家軍事安全方面,今天隨著這一系統(tǒng)的研發(fā),它廣泛應用我們社會生活的各個方面和各個環(huán)節(jié),其應用范圍從洗衣機、烤箱到自動化的生產(chǎn)線、醫(yī)學輔助機械、交通運輸控制、天氣預報預測、航天動力工程等等。在軟件開發(fā)中實時系統(tǒng)中的軟件部分逐漸成為一個不可缺少的獨立部分,貫穿于軟件開發(fā)的始終。
1.闡釋實時軟件的內(nèi)涵
實時軟件是實時系統(tǒng)中的軟件。當外部世界發(fā)生變化時,相應地實時系統(tǒng)就會對這種變化做出動作進行回應,并在規(guī)定的時間內(nèi)、依靠嚴格的控制、最大化地獲取數(shù)據(jù)來實現(xiàn)這一功能。特別要指出的是,這些控制是有嚴格規(guī)范的,這便對實時系統(tǒng)的應用進行了限制,只應用于它相對應的方面。另外,實時系統(tǒng)具有高標準的要求,主要可以體現(xiàn)在以下方面:其一、時間方面,必須在規(guī)定的時間內(nèi)處理完突發(fā)事物,如果超過時間就會造成不可彌補的損失;其二、正確性方面,在規(guī)定的時間內(nèi)對突發(fā)事物做出合理的邏輯判斷和處理,這就確保了結(jié)果的正確性。同時,存在著對實時系統(tǒng)的實時性有一個普遍的誤區(qū),他們狹隘地臆斷實時就是速度要快。以第一時間對外部情況做出反應是實時系統(tǒng)的一個優(yōu)點,快速反應是實時性的一個要求,但是兩者有著本質(zhì)的區(qū)別,不可混淆概念。有時快速反應并不意味著實現(xiàn)了實時性。所謂的實時性是指要求圓滿處理完外部相應的事物和要求必須在規(guī)定的時間內(nèi)。除了具有一般軟件系統(tǒng)的特點外,實時系統(tǒng)軟件還具有:首先,時間限制,即實時性。要求在規(guī)定的時間內(nèi)對于外部的發(fā)生的事物系統(tǒng)要做出反應并處理好;其次,穩(wěn)定性。如果系統(tǒng)重啟和故障恢復系統(tǒng)會很快復原且數(shù)據(jù)不受損;再次,多任務、并行性、分布性。實時系統(tǒng)可以同時同步對于外部世界或者分布較廣的多個問題和任務,進行有效的處理并有效地保證處理的結(jié)果具有可靠性。而這種處理的有效性和可靠性是由系統(tǒng)的實時性決定的;最后,對于操作系統(tǒng)的底層具有開發(fā)性,實時操作系統(tǒng)就是實時軟件應用中所使用的操作系統(tǒng),要求在優(yōu)先調(diào)配機制和內(nèi)存鎖定機制控制下,實現(xiàn)多任務同時同步處理。特別要注意的是,對于系統(tǒng)中的語言開發(fā)原則也要堅持實時性原則,選擇實時性語言,以求對多個任務進行并行處理。
2.探討實時軟件開發(fā)方法
與普通的實時軟件相比,復雜性是兩者的共性,實時系統(tǒng)的軟件還具有自己的特殊性要求,那就是時間控制的因素,這就是實時軟件的結(jié)構(gòu)和開發(fā)方法的優(yōu)勢。
2.1實時分析技術(shù)
以面臨解決的事實問題或既定的目標為依托,全面解析實時系統(tǒng)的軟件和硬件部分,而后對硬件和軟件進行拆解,以求對設計實時軟件奠定根基,這就是實時系統(tǒng)在分析階段中所要完成的任務。建模和仿真技術(shù)是實時系統(tǒng)進行分析才應用的技術(shù)。對實時系統(tǒng)元素進行建模時要求分析人員必須利用好數(shù)學輔助工具,另外,把握時間長短和對資源大小進行估量是分析人員在這一過程中特別要注意的問題。根據(jù)在對數(shù)據(jù)流進行分析的基礎上,分析人員要建模實時系統(tǒng)的硬件和軟件元素,控制以概率的形式進行,這就是數(shù)學分析方法應該注意的。同時,對系統(tǒng)時間和資源大小如何進行評估,就要求分析人員以網(wǎng)絡分析、序列論、圖形論和數(shù)據(jù)模型等方式來推導出來。RMS理論為基礎,能夠分析并行的多任務的分析技術(shù),是為了輔助RMAM的分析方法而設立的理論。判斷在實時系統(tǒng)中在調(diào)度方面利用RMS處理并行任務是否能夠滿足他們的實時性的依據(jù),那就是看有沒有采用采用RMA分析技術(shù)。分析系統(tǒng)的性能需要使用仿真和建模工具,利用這兩種工具軟件工程師還能夠構(gòu)建一個模型,通過這樣的形式,可以有效地理解系統(tǒng)的運作。為建立一個實時系統(tǒng)的概念模型需要通過系統(tǒng)的狀態(tài)圖、活動圖和模塊圖,這就是系統(tǒng)的建模方法。然后在在建立的模型的基礎上,分析和仿真系統(tǒng)的行為和執(zhí)行情況,并測試系統(tǒng)是否具有一致性和完整性,最后,匯總在真實系統(tǒng)中的各種數(shù)據(jù)和特性。
2.2實時設計和實現(xiàn)技術(shù)
在給定的時間控制情況下如何完成系統(tǒng)的目標是實時設計階段中主要面對的任務。處理實時軟件中的優(yōu)先權(quán)的選擇、多任務和并行、同步和異步、時間約束等問題是設計實時軟件所必須考慮的因素。通常都是通過擴展一些非實時設計方法是實時軟件的設計方法所采用的手段,而基于過程的模塊化的設計方法是傳統(tǒng)的實時軟件的設計方法才采用的手段。不僅可以采用自頂向下和結(jié)構(gòu)化的程序設計,而且可以采用圖形化的語言描述設計,還有一些運用有限狀態(tài)機、Petir網(wǎng)、消息傳遞系統(tǒng)或一某種專門語言等是使用面向數(shù)據(jù)的設計方面向?qū)ο蟮膶崟r軟件開發(fā)方法所研究的基礎性方法。
2.3傳統(tǒng)實時軟件開發(fā)方法應該注意的問題
由于實時軟件的應用于各個領域,這樣就使實時軟件面臨的問題越來越多,最終使實時軟件很復雜了。在過程的設計方法上而建立的傳統(tǒng)實時軟件已不能夠適應變化的新情況了。它主要存在以下問題:首先,分別對過程和數(shù)據(jù)進行處理,這樣就使真實世界的實際情況失去了本來面目,更加劇了分析和設計實際世界的難度;其次,沒有統(tǒng)一性的劃分原則對采用層次化的功能模塊劃分系統(tǒng),最為嚴重的是,某個別的開發(fā)人員的主觀看法完全左右了對組織軟件單元,系統(tǒng)的劃分,這樣就失去了客觀性加劇了實時軟件開發(fā)的困難;最后,由于人為的局限性使得對調(diào)度的分析和描述過程也相當?shù)膹碗s。
3.結(jié)語
隨著電子信息技術(shù)的發(fā)展,我們研究實時軟件開發(fā)時,要具有勇于突破和敢于創(chuàng)新的斗志,在對現(xiàn)實情況進行分析和研究的基礎上,要不斷對實時軟件進行改進,以達到它更好地服務于社會的目的。
參考文獻:
[1]肖亞利.面向?qū)ο蟮膶崟r軟件開發(fā)方法研究[D].四川大學,2003.
[2]沈芳平.鍋爐熱效率計算方法研究與軟件開發(fā)[D].東南大學,2004.
作者:鄭德寶 單位:泉州師范學院軟件學院