- 相關推薦
淺談軟件復用技術的研究論文
摘要:為了能夠更好的解決軟件危機,加快了軟件復用技術研究和使用的步伐。并且經過實踐證明,軟件復用技術不僅提高了軟件工程開發的效率以及軟件系統的質量,而且也降低了軟件開發成本,總而言之,促進了軟件開發的進程。本文主要對軟件復用內容、軟件復用的優勢、軟件復用的關鍵技術進行了分析。
關鍵詞:軟件復用;內容;優勢;技術
軟件復用就是利用現有的軟件成分構造出高質量、高效率的新的軟件系統。軟件復用不僅僅只是包括程序的復用,而且還包括每個活動所產生的制成品的復用。隨著軟件復用技術的快速發展,人們發現了軟件資產的一些問題。為了能夠有效地解決此類問題,必須將軟件復用技術能夠準確地、合理地運用到軟件開發中,將軟件復用技術的優勢充分發揮出來,其實這也正是軟件復用技術的難點所在。
1.軟件復用內容
應用軟件系統的開發過程包含以下幾個階段:領域和需求分析、設計、編碼、測試以及維護等,各個階段的工作中均存在重復,而這些重復都可以作為軟件復用的內容。一般可以分四個層次:第一,領域和需求分析階段的復用。這個層主要包括對領域知識、軟件總體框架結構、項目計劃、成本估計等的復用;第二,設計階段的復用。這個層主要包括對分析建模方法、領域模型、軟件功能模型等的復用;第三,編碼階段的復用。這個層主要包括對功能模塊、用戶和技術文檔、用戶界面風格等的復用;第四,測試階段的復用。這個層主要包括對測試方法、測試用例等的復用。
2.軟件復用的優勢
軟件復用的優勢主要表現在以下幾個方面:第一,軟件復用使軟件生產率得以提高,并且也使開發代價因此而少。由于可復用構建經過了高度優化和考驗,其構造的系統更加可靠、性能更加強大;第二,軟件復用也使系統的維護代價得以減少。用可復用的構件構建系統減少了錯誤的發生,也就是減少了維護頻率;第三,軟件復用使系統間的互操作性得以提高。系統由于使用了統一的接口,使其與其他系統之間的互操作性得以實現;第四,軟件復用對快速原型設計有一定的支持效果,那么快速有效地構造出應用程序的原型可以充分利用可復用構件和構架,從而獲得用戶對系統功能的反饋;第五,培訓成本的減少也可以通過軟件復用來實現。總而言之,采用軟件復用技術提高了軟件質量。
3.軟件復用的關鍵技術
3.1軟件構件技術
軟件構件技術是軟件復用的核心。構件是系統中可以明確辨識的構成成分;而軟件構件則是軟件系統中具有一定意義的相對獨立的構成成分;可復用構件是指在具有獨立功能的基礎上,實現復用功能的構件。隨著人們對軟件復用技術研究越來越深入,構件的概念也得到了延伸。它們應用于各個不同的開發過程,目前,主要關注的構件是代碼級構件,它可以直接由工具進行支持。代碼級構件主要分為源代碼和二進制代碼構件兩種,其源代碼所采用的復用方式也有兩種,即黑盒復用和白盒復用兩種方式;而二進制代碼構件的復用方式主要就是一種,即黑盒復用方式,通常也只能對構件的接口和屬性等信息進行了解。軟件構件技術的研究內容主要包括:
(1)構件獲取。構件生產是有目的的,其構件是從已有的系統中挖掘出來的;
(2)構件模型。在對構件本質特征研究的基礎上,充分認識構件間的關系;
(3)構件描述語言。此目的就是為了使構件的精確描述、理解和組裝問題進行解決;
(4)構件分類和檢索。對構件分類和檢索策略進行研究,為構件庫系統的構建創造良好的條件;
(5)構件復合組裝。對構件組裝機制進行研究且在構件模型的基礎上進行;
(6)標準化。這里的標準化主要是構件模型和構件庫系統的標準化。
3.2構件構架
對于軟件架構,目前還沒有一個統一的定義。一個典型的定義是:一個程序或計算系統的軟件構架是系統的一個或多個結構,包含軟件構件、這些構件的對外可見的性質以及它們之間的關系。體系結構描繪的是系統的藍圖,是溝通軟件需求與軟件設計的一座橋梁。體系結構的研究,使軟件復用從代碼復用發展到設計復用和過程復用。在基于構件和體系結構的軟件開發方法下,程序開發模式也相應地發生了根本變化。軟件開發不再是"算法+數據結構",而是"構件開發+基于體系結構的構件組裝"。軟件構架包括全局組織與控制結構,構件間通訊、同步和數據訪問的協議,設計元素間的功能分配,物理分布,設計元素集成,伸縮性和性能,設計選擇等。軟件構架研究如何快速、可靠地從可復用構件構造系統的方式,著重于軟件系統自身的整體結構和構件間的互聯。其中主要包括:軟件構架原理和風格、軟件構架的描述和規約、特定領域軟件構架、構件向軟件構架的集成機制等。
3.3領域工程
領域工程是針對一組相似或相近應用的共同領域及用戶需求進行分析,識別這些應用的共同特征和可變特征,進行面向復用的開發,產生出特定領域的構件和構架。它覆蓋了建立可重用構件的所有活動;主要過程分為領域分析(定義"問題空間")、領域設計(提出"解決問題的框架")和領域實現(實現所提出的"解決空間")三個階段。它以領域分析為出發點,對領域中的系統進行分析,包括識別、搜集、組織、分析和表示領域中相關的共性和個性信息,形成領域定義和領域模型。其中領域模型確定了該領域系統的公共功能和數據;依據領域模型,設計面向特定領域的軟件構架DSSA,包括系統中各種構件間交互關系的共性和差異,并以此領域構架為中心,識別、開發和組織可重用構件,供應用工程師使用。這樣,當開發同一領域中新的應用時,可以根據領域分析模型,確定新應用的需求規約;根據特定領域的軟件構架形成新應用的設計,并以此為基礎選擇可復用構件進行組裝,從而形成新系統。
3.4軟件再工程
隨著軟件技術的不斷開發,一些遺產軟件系統已經不能在滿足現今的要求,慢慢地退出軟件舞臺,如果能夠從這些系統中獲取有用的軟件構件,再對它們進行維護,使其系統軟件生命周期得以延長,而這個過程就是軟件再工程所要解決的問題,從而構造出新的系統來。如果沒有對其進行維護,即使獲取了有用的軟件構件,那么這些軟件構件隨著技術的發展最終還是被淘汰。
3.5開放系統技術
使用接口標準是開放系統技術的基本原則。開放系統技術能夠為系統開發的決策設計提供良好的依據,尤其是為系統的演化提供了穩定的基礎,同時也進一步保證了各子系統間的互操作。開放系統技術不僅能夠確保系統效率的穩定進行,而且在此基礎上,能夠使開發成本得以降低以及開發周期得以縮短。系統依賴穩定的接口標準促進了開發系統更容易適應技術。
3.6軟件過程
軟件過程就是從軟件需求定義開始,直至軟件使用后廢棄為止,針對系統開發、運作和維護所實施的全部過程、活動和任務的結構。隨著軟件工程的快速發展,軟件過程也發生了一些變化。軟件過程又稱軟件生存周期過程,軟件生存周期主要可劃分為三個時期,第一時期就是計劃、分析時期,第二時期就是設計、實現時期,第三時期就是運行、維護時期。當前,軟件工程研究的熱點就是軟件過程及其完善。
3.7CASE技術
軟件工程思想已經在人們心中有了更深入的滲透,其已經越來越受到廣大軟件開發者的歡迎,CASE工具和CASE環境得到越來越廣泛的應用。對于軟件工程而言,CASE技術是非常重要的,它能夠支持軟件工程,并且使軟件開發的復雜性有所降低,也就是說,能夠促使軟件開發人員有效控制軟件開發的復雜性,進而使軟件開發的效率和質量得以提高。同理,CASE技術也能夠有效地支持軟件復用。其主要內容包括:在面向復用的軟件開發中,可復用構件的抽取、描述、分類和存儲;在基于復用的軟件開發中,可復用構件的檢索、提取和組裝;可復用構件的度量等。
4.結語
面對軟件危機的發生,軟件復用技術起到了非常重要的作用。軟件復用技術是緩解軟件危機的重要手段,它不僅能夠提高軟件開發效率,而且還能夠提高軟件的可靠性,以及能夠降低軟件開發成本,在軟件測試和維護方面也有一定的優勢。因此,軟件復用技術已經成為現在軟件工程方面的研究熱點。
參考文獻:
[1]朱俊波,史素娟.淺議軟件開發中的復用技術[J].福建電腦,2008,(02).
[2]楊敬君.基于構件的軟件復用技術研究與應用實踐[D].大連海事大學,2009.
[3]仉新剛.淺談軟件復用的理論與技術[J].科技信息(學術研究),2008,(13).
[4]吳樹德,曾慶弘,左壯.軟件復用技術在管理信息系統設計中的應用[J].通化師范學院學報,2006,(06).
[5]武偉,張明新.基于構件的軟件復用技術應用研究[J].山西大同大學學報(自然科學版),2009,(01).
[6]陳東升.軟件復用技術研究[J].硅谷,2008,(18).
【淺談軟件復用技術的研究論文】相關文章:
軟件復用技術在嵌入式系統的可行性論文10-27
基于軟件復用技術的雷達星體標校軟件設計04-29
淺談地下水取水技術的內容研究論文05-02
淺談課堂微觀研究與教育技術新革命論文05-03
波分復用與全同光纖光柵混合復用技術在城市隧道中的應用研究04-30
軟件安全開發技術研究和實施論文05-02
構件軟件工程技術研究的論文04-27
軟件工程技術和CMM的融合研究的論文04-27
淺談團柏煤礦開采水害防治技術研究論文04-30
淺談建筑工程土建樁基礎技術研究論文04-07