資源描述:
《軟件復用技術.doc》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫。
1、軟件復用技術摘要:為了能夠更好的解決軟件危機,加快了軟件復用技術研究和使用的步伐。并且經(jīng)過實踐證明,軟件復用技術不僅提高了軟件工程開發(fā)的效率以及軟件系統(tǒng)的質量,而且也降低了軟件開發(fā)成本,總而言之,促進了軟件開發(fā)的進程。本文主要對軟件復用內容、軟件復用的優(yōu)勢、軟件復用的關鍵技術進行了分析。關鍵詞:軟件復用;內容;優(yōu)勢;技術軟件復用就是利用現(xiàn)有的軟件成分構造出高質量、高效率的新的軟件系統(tǒng)。軟件復用不僅僅只是包括程序的復用,而且還包括每個活動所產(chǎn)生的制成品的復用。隨著軟件復用技術的快速發(fā)展,人們發(fā)現(xiàn)了軟件資產(chǎn)的一些問題。為了能夠有效地解決此類問題,必須
2、將軟件復用技術能夠準確地、合理地運用到軟件開發(fā)中,將軟件復用技術的優(yōu)勢充分發(fā)揮出來,其實這也正是軟件復用技術的難點所在。1.軟件復用內容應用軟件系統(tǒng)的開發(fā)過程包含以下幾個階段:領域和需求分析、設計、編碼、測試以及維護等,各個階段的工作中均存在重復,而這些重復都可以作為軟件復用的內容。一般可以分四個層次:第一,領域和需求分析階段的復用。這個層主要包括對領域知識、軟件總體框架結構、項目計劃、成本估計等的復用;第二,設計階段的復用。這個層主要包括對分析建模方法、領域模型、軟件功能模型等的復用;第三,編碼階段的復用。這個層主要包括對功能模塊、用戶和技術文
3、檔、用戶界面風格等的復用;第四,測試階段的復用。這個層主要包括對測試方法、測試用例等的復用。1.軟件復用的優(yōu)勢軟件復用的優(yōu)勢主要表現(xiàn)在以下幾個方面:第一,軟件復用使軟件生產(chǎn)率得以提高,并且也使開發(fā)代價因此而少。由于可復用構建經(jīng)過了高度優(yōu)化和考驗,其構造的系統(tǒng)更加可靠、性能更加強大;第二,軟件復用也使系統(tǒng)的維護代價得以減少。用可復用的構件構建系統(tǒng)減少了錯誤的發(fā)生,也就是減少了維護頻率;第三,軟件復用使系統(tǒng)間的互操作性得以提高。系統(tǒng)由于使用了統(tǒng)一的接口,使其與其他系統(tǒng)之間的互操作性得以實現(xiàn);第四,軟件復用對快速原型設計有一定的支持效果,那么快速有效地
4、構造出應用程序的原型可以充分利用可復用構件和構架,從而獲得用戶對系統(tǒng)功能的反饋;第五,培訓成本的減少也可以通過軟件復用來實現(xiàn)。總而言之,采用軟件復用技術提高了軟件質量。2.軟件復用的關鍵技術軟件構件技術軟件構件技術是軟件復用的核心。構件是系統(tǒng)中可以明確辨識的構成成分;而軟件構件則是軟件系統(tǒng)中具有一定意義的相對獨立的構成成分;可復用構件是指在具有獨立功能的基礎上,實現(xiàn)復用功能的構件。隨著人們對軟件復用技術研究越來越深入,構件的概念也得到了延伸。它們應用于各個不同的開發(fā)過程,目前,主要關注的構件是代碼級構件,它可以直接由工具進行支持。代碼級構件主要分
5、為源代碼和□□二進制代碼構件兩種,其源代碼所采用的復用方式也有兩種,即黑盒復用和白盒復用兩種方式;而二進制代碼構件的復用方式主要就是一種,即黑盒復用方式,通常也只能對構件的接口和屬性等信息進行了解。軟件構件技術的研究內容主要包括:構件獲取。構件生產(chǎn)是有目的的,其構件是從已有的系統(tǒng)中挖掘出來的;構件模型。在對構件本質特征研究的基礎上,充分認識構件間的關系;構件描述語言。此目的就是為了使構件的精確描述、理解和組裝問題進行解決;構件分類和檢索。對構件分類和檢索策略進行研究,為構件庫系統(tǒng)的構建創(chuàng)造良好的條件;構件復合組裝。對構件組裝機制進行研究且在構件模
6、型的基礎上進行;標準化。這里的標準化主要是構件模型和構件庫系統(tǒng)的標準化。構件構架對于軟件架構,目前還沒有一個統(tǒng)一的定義。一個典型的定義是:一個程序或計算系統(tǒng)的軟件構架是系統(tǒng)的一個或多個結構,包含軟件構件、這些構件的對外可見的性質以及它們之間的關系。體系結構描繪的是系統(tǒng)的藍圖,是溝通軟件需求與軟件設計的一座橋梁。體系結構的研究,使軟件復用從代碼復用發(fā)展到設計復用和過程復用。在基于構件和體系結構的軟件開發(fā)方法下,程序開發(fā)模式也相應地發(fā)生了根本變化。軟件開發(fā)不再是〃算法+數(shù)據(jù)結構〃,而是〃構件開發(fā)+基于體系結構的構件組裝〃。軟件構架包括全局組織與控制結
7、構,構件間通訊、同步和數(shù)據(jù)訪問的協(xié)議,設計元素間的功能分配,物理分布,設計元素集成,伸縮性和性能,設計選擇等。軟件構架研究如何快速、可靠地從可復用構件構造系統(tǒng)的方式,著重于軟件系統(tǒng)自身的整體結構和構件間的互聯(lián)。其中主要包括:軟件構架原理和風格、軟件構架的描述和規(guī)約、特定領域軟件構架、構件向軟件構架的集成機制等。領域工程領域工程是針對一組相似或相近應用的共同領域及用戶需求進行分析,識別這些應用的共同特征和可變特征,進行面向復用的開發(fā),產(chǎn)生出特定領域的構件和構架。它覆蓋了建立可重用構件的所有活動;主要過程分為領域分析(定義〃問題空間“)、領域設計(提
8、出〃解決問題的框架〃)和領域實現(xiàn)(實現(xiàn)所提出的〃解決空間〃)三個階段。它以領域分析為出發(fā)點,對領域中的系統(tǒng)進行分析,包括識別、搜集、組織