国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于構(gòu)件的軟件復(fù)用技術(shù)的研究與應(yīng)用

2017-11-14 11:01:00盧鐳
電腦知識(shí)與技術(shù) 2017年29期
關(guān)鍵詞:研究與應(yīng)用構(gòu)件

盧鐳

摘要:軟件復(fù)用引起了人們極大的關(guān)注,因?yàn)槠淠軌蛴行Ы鉀Q軟件危機(jī)。對(duì)于構(gòu)件的軟件復(fù)用技術(shù)的研究和應(yīng)用也是十分有必要的,也是當(dāng)今軟件工程應(yīng)用中的熱點(diǎn)話題。軟件復(fù)用具有一系列的優(yōu)點(diǎn),減少了傳統(tǒng)軟件開(kāi)發(fā)工作中的許多復(fù)雜工作,也避免了很多資源的浪費(fèi)和錯(cuò)誤的產(chǎn)生,提高了效率。該文將探討軟件復(fù)用技術(shù)的概念和意義,找出技術(shù)的優(yōu)勢(shì)和不足,對(duì)構(gòu)件復(fù)用技術(shù)進(jìn)行深入的研究和應(yīng)用。

關(guān)鍵詞:構(gòu)件;軟件復(fù)用技術(shù);研究與應(yīng)用

中圖分類(lèi)號(hào):TP3 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2017)29-0220-02

1 基于構(gòu)件的軟件復(fù)用技術(shù)的研究背景

社會(huì)高速發(fā)展,科學(xué)技術(shù)也在不斷發(fā)展,人們對(duì)軟件也有著越來(lái)越高的要求,隨著人們大大增長(zhǎng)的需求,軟件也出現(xiàn)了各種問(wèn)題無(wú)法滿足人們?nèi)找嬖龃蟮男枰?,這個(gè)現(xiàn)象的出現(xiàn)對(duì)技術(shù)人員提出了一個(gè)大難題,技術(shù)人員需要找到一個(gè)能夠適應(yīng)人們需要的軟件開(kāi)發(fā)模式。在這種背景下,軟件復(fù)用技術(shù)應(yīng)運(yùn)而生。而事實(shí)也已證明,運(yùn)用好軟件復(fù)用技術(shù),將會(huì)降低成本,提高生產(chǎn)量和質(zhì)量,降低軟件的問(wèn)題和出錯(cuò)。軟件復(fù)用技術(shù)的出現(xiàn)是意義重大的。

隨著技術(shù)不斷地改善和開(kāi)發(fā),人們對(duì)軟件的復(fù)用技術(shù)進(jìn)行了更多的研究,于是提出了構(gòu)件技術(shù)的概念,最終有了基于構(gòu)件的軟件復(fù)用技術(shù),將構(gòu)件技術(shù)運(yùn)用到在軟件復(fù)用中,使二者有機(jī)結(jié)合,更好地發(fā)揮作用。這無(wú)疑也對(duì)構(gòu)件技術(shù)提出了很高的要求,作為軟件復(fù)用技術(shù)不可缺少的一部分,其對(duì)軟件技術(shù)的發(fā)展具有深深的影響。由于認(rèn)識(shí)的不同,構(gòu)建技術(shù)并沒(méi)有得到靈活得運(yùn)用,對(duì)構(gòu)建技術(shù)仍然需要進(jìn)行深入的研究。

軟件復(fù)用是提高軟件質(zhì)量的一種重要技術(shù)。軟件開(kāi)發(fā)的經(jīng)費(fèi)涉及很廣泛。比如在開(kāi)發(fā)軟件以前,相關(guān)人員要廣泛的采集信息,深入軟件使用現(xiàn)場(chǎng),了解人們的需求;在提出設(shè)計(jì)概念的階段,需要花費(fèi)設(shè)計(jì)人員的大量時(shí)間,這些時(shí)間需要被計(jì)算的開(kāi)發(fā)成本中;軟件在編寫(xiě)的過(guò)程中,需要人員花費(fèi)大量編程的時(shí)間,這些人力資源成本同樣也需要計(jì)入到成本中;軟件后續(xù)的修改、測(cè)試等花費(fèi)的成本亦是較大的。軟件和軟件之間是存在共通性質(zhì)的,特別是應(yīng)用的領(lǐng)域較為相近時(shí),軟件的共通性更大。比如一款辦公軟件和一款制圖軟件,它們的構(gòu)件結(jié)構(gòu)是存在共通性的。此時(shí),人們提出了軟件復(fù)用的概念。軟件復(fù)用,就是指導(dǎo)一款軟件的構(gòu)件結(jié)構(gòu)復(fù)制下來(lái),應(yīng)用到另一款軟件的開(kāi)發(fā)中,這種技術(shù)能夠減少軟件開(kāi)發(fā)的周期、降低軟件開(kāi)發(fā)的難度、降低軟件開(kāi)發(fā)的成本。

軟件復(fù)用的層次不同,它包括程序、設(shè)計(jì)、體系分析、測(cè)試信息的復(fù)用等。目前最常使用的軟件復(fù)用層次為體系分析復(fù)用,構(gòu)件復(fù)用是體系分析復(fù)用的方法之一。軟件工程中的構(gòu)件模塊、軟件框架、軟件構(gòu)架、文檔、分析件、設(shè)計(jì)模式等。1995年,給出的構(gòu)件定義如下:構(gòu)件是指一個(gè)對(duì)象(接口規(guī)范、或二進(jìn)制代碼),它被用于復(fù)用,接口被明確定義。從構(gòu)件的定義而言,構(gòu)件的復(fù)用包括操作方法、操作邏輯、操作函數(shù)。人們復(fù)用軟件時(shí),可以直接將現(xiàn)有的構(gòu)件拿來(lái)應(yīng)用,軟件針對(duì)軟件設(shè)計(jì)的需求,對(duì)數(shù)據(jù)、部分操作流程、算法進(jìn)行修改,就能達(dá)到再度完成一個(gè)軟件構(gòu)件設(shè)計(jì)的目的。近年來(lái),以構(gòu)件為基本單元的軟件體系結(jié)構(gòu)得到了很多關(guān)注和研究。各種因素的共同作用有助于更好地發(fā)揮軟件復(fù)用技術(shù)的優(yōu)勢(shì)。

2 實(shí)現(xiàn)軟件復(fù)用的因素

當(dāng)前軟件具有集成化、模塊化、標(biāo)準(zhǔn)化的特點(diǎn)。應(yīng)用這樣的方法設(shè)計(jì)的目的如下:集用集成化的方式可強(qiáng)化軟件的功能、應(yīng)用模塊化的方式可提高軟件的拓展性、應(yīng)用標(biāo)準(zhǔn)化的方式可強(qiáng)化軟件的兼容性。應(yīng)用這軟的方式設(shè)計(jì)軟件,實(shí)際上為復(fù)用軟件的體系打下了良好的基礎(chǔ),正因?yàn)楝F(xiàn)在的軟件具有這樣的特點(diǎn),所以軟件是可以跨使用區(qū)域、跨使用功能,直接復(fù)用某種軟件的體系的,它可以直接延用一種軟件的建構(gòu)來(lái)復(fù)用軟件。

就拿軟件再工程和領(lǐng)域工程的三個(gè)階段即領(lǐng)域分析、領(lǐng)域設(shè)計(jì)和領(lǐng)域?qū)崿F(xiàn)來(lái)說(shuō)。

軟件再工程。軟件再工程是調(diào)查已存在的對(duì)象系統(tǒng),將其進(jìn)行重構(gòu)為一種新形式代碼的開(kāi)發(fā)過(guò)程。軟件再工程最重要的特點(diǎn)就是最大程度地利用已存系統(tǒng)的各種資源。把逆向工程、正向工程和重構(gòu)組合起來(lái),將現(xiàn)在的軟件系統(tǒng)重新打造成為一個(gè)適應(yīng)新要求的系統(tǒng)。隨著時(shí)間對(duì)大量遺產(chǎn)軟件系統(tǒng)運(yùn)行的檢驗(yàn),雖然運(yùn)行多年,但是經(jīng)歷了用戶考驗(yàn)和需求,其相關(guān)功能確實(shí)符合相關(guān)需求,也能保障可靠性。但是,由于技術(shù)的發(fā)展,很多遺產(chǎn)軟件也慢慢退出了使用。為了得到質(zhì)量好的軟件,需要挖掘整理優(yōu)秀的軟件,獲得有用的構(gòu)件。軟件再工程是解決軟件落伍的維護(hù)問(wèn)題,延長(zhǎng)其使用時(shí)間等等問(wèn)題的主要技術(shù)手段。

領(lǐng)域工程的三個(gè)階段是一個(gè)連續(xù)的動(dòng)態(tài)階段,不斷反復(fù)求精的過(guò)程。當(dāng)人們開(kāi)始復(fù)用一款軟件后,可針對(duì)現(xiàn)代化軟件的特點(diǎn)直接使用軟件的某體構(gòu)件,而軟件和軟件之間是具有差異性的,一款軟件的構(gòu)件并不符合另一款軟件構(gòu)件的設(shè)計(jì)需求。構(gòu)件復(fù)用的過(guò)程,實(shí)際上就是從這三個(gè)方面工程分析軟件和軟件之間的差異性,結(jié)合再工程的特點(diǎn)修改復(fù)用對(duì)象。

軟件復(fù)用技術(shù)描述了軟件系統(tǒng)整體的結(jié)構(gòu)和特性,提供了一個(gè)很好的途徑給構(gòu)件的軟件開(kāi)發(fā)。為了實(shí)現(xiàn)軟件復(fù)用,就不能忽視那些技術(shù)性和非技術(shù)性的因素對(duì)它的影響,注意發(fā)揮每個(gè)組件之間的動(dòng)態(tài)聯(lián)系。在構(gòu)件化軟件實(shí)現(xiàn)方面,要重點(diǎn)突出構(gòu)件框架的主要支撐作用,按照軟件體系結(jié)構(gòu)、利用構(gòu)件框架,將可復(fù)用構(gòu)件組裝、部署、運(yùn)營(yíng)起來(lái)。

3 基于構(gòu)件的軟件復(fù)用技術(shù)的優(yōu)勢(shì)

軟件復(fù)用作為解決軟件危機(jī)的重要手段和途徑,自然有著其無(wú)法比擬的優(yōu)勢(shì)。

1) 提高工作效率

比如在項(xiàng)目A中你寫(xiě)一個(gè)Ajax模塊,A完工后啟動(dòng)了項(xiàng)目B,在B中就可以直接復(fù)用項(xiàng)目A的模塊了。一個(gè)可復(fù)用的軟件可以為將來(lái)節(jié)省費(fèi)用,一款軟件被復(fù)用的次數(shù)越多,被復(fù)用的內(nèi)容越多,實(shí)際上就意味著軟件開(kāi)發(fā)的成本越低。

2) 提高軟件質(zhì)量

一款軟件從研發(fā),到被人們認(rèn)可的階段,是花費(fèi)了大量的成本來(lái)確保質(zhì)量的。研發(fā)人員需從各個(gè)方面確保軟件的質(zhì)量,避免軟件在使用時(shí)出現(xiàn)功能性問(wèn)題、操作性問(wèn)題、安全性問(wèn)題等。如果能夠直接復(fù)用一款已經(jīng)較為成熟的軟件,就意味著人們可以借鑒成熟軟件的開(kāi)發(fā)經(jīng)驗(yàn),減少再工程時(shí)出現(xiàn)的質(zhì)量問(wèn)題。研發(fā)人員可從以下幾個(gè)方面提高軟件的質(zhì)量:第一,代碼的使用,一款成熟的軟件,寫(xiě)出來(lái)的代碼是經(jīng)過(guò)反復(fù)測(cè)試的,一款軟件能被認(rèn)可,不僅經(jīng)過(guò)了專(zhuān)門(mén)的檢測(cè)小組檢測(cè),而且還經(jīng)過(guò)了大量使用者的檢測(cè)。當(dāng)軟件出現(xiàn)代碼問(wèn)題時(shí),設(shè)計(jì)人員通常會(huì)修改代碼,直接解決了問(wèn)題,成熟軟件的代碼是經(jīng)過(guò)各種檢驗(yàn)的。復(fù)用軟件在復(fù)制代碼時(shí),便等于應(yīng)用了接受過(guò)多次檢測(cè)的成熟代碼。第二,算法的使用,軟件的算法在出現(xiàn)問(wèn)題時(shí),會(huì)導(dǎo)致軟件出現(xiàn)邏輯故障等。一款成熟軟件的算法,同樣是經(jīng)過(guò)多次檢測(cè),并被多次修正的。當(dāng)然復(fù)用軟件與原始軟件的算法可能存在差異性,然而修改現(xiàn)有的算法和直接提出新的算法相比,程序設(shè)計(jì)人員的工作量會(huì)變小,需要檢測(cè)的算法內(nèi)容也較少。第三,結(jié)構(gòu)的使用,一款成熟的軟件,它的結(jié)構(gòu)邏輯性極強(qiáng),功能設(shè)計(jì)極為合理,復(fù)用軟件可以直接延用原軟件的模塊結(jié)構(gòu),減少結(jié)構(gòu)分析及設(shè)計(jì)的時(shí)間。endprint

這種復(fù)用有三種途徑,第一種途徑是從現(xiàn)有系統(tǒng)的設(shè)計(jì)結(jié)果中提取一些可復(fù)用的設(shè)計(jì)構(gòu)件,并把這些構(gòu)件應(yīng)用于新系統(tǒng)的設(shè)計(jì);第二種途徑是把一個(gè)現(xiàn)有系統(tǒng)的全部設(shè)計(jì)文檔在新的軟硬件平臺(tái)上重新實(shí)現(xiàn),也就是把一個(gè)設(shè)計(jì)運(yùn)用于多個(gè)具體的實(shí)現(xiàn);第三種途徑是獨(dú)立于任何具體的應(yīng)用,有計(jì)劃地開(kāi)發(fā)一些可復(fù)用的設(shè)計(jì)構(gòu)件。分析的復(fù)用這是比設(shè)計(jì)結(jié)果更高級(jí)別的復(fù)用,可復(fù)用的分析構(gòu)件是針對(duì)問(wèn)題域的某些事物或某些問(wèn)題的抽象程度更高的解法,受設(shè)計(jì)技術(shù)及實(shí)現(xiàn)條件的影響很少,所以可復(fù)用的機(jī)會(huì)更大。復(fù)用的途徑也有三種,即從現(xiàn)有系統(tǒng)的分析結(jié)果中提取可復(fù)用構(gòu)件用于新系統(tǒng)的分析;用一份完整的分析文檔作輸入產(chǎn)生針對(duì)不同軟硬件平臺(tái)和其他實(shí)現(xiàn)條件的多項(xiàng)設(shè)計(jì);獨(dú)立于具體應(yīng)用,專(zhuān)門(mén)開(kāi)發(fā)一些可復(fù)用的分析構(gòu)件。

3) 減少維護(hù)成本

使用經(jīng)過(guò)檢驗(yàn)了的構(gòu)件,就降低了可能出現(xiàn)的錯(cuò)誤,同時(shí)隨著軟件中需要維護(hù)部分的減少,維護(hù)成本自然也就降了下來(lái),不再高昂難以負(fù)擔(dān)。

4) 提高系統(tǒng)之間的互操作性

采用使用同一個(gè)接口的方式,系統(tǒng)也能更加有效地實(shí)現(xiàn)與其他系統(tǒng)之間的相互操作。

5) 減少培訓(xùn)開(kāi)銷(xiāo)

使用可復(fù)用的構(gòu)件庫(kù),而其中的構(gòu)件都是雇員們熟悉和擅長(zhǎng)的,也就減少了對(duì)人員的培訓(xùn),節(jié)省了在熟悉任務(wù)時(shí)所需的非正式的開(kāi)銷(xiāo)。

4 基于構(gòu)件的軟件復(fù)用技術(shù)的應(yīng)用

軟件公司現(xiàn)在把越來(lái)越多的資金用在開(kāi)發(fā)新的軟件產(chǎn)品上,軟件復(fù)用技術(shù)就占據(jù)著重要的地位,。在軟件公司把可復(fù)用的構(gòu)件稱(chēng)為軟件資產(chǎn),包括需求規(guī)格、設(shè)計(jì)和架構(gòu)等等。軟件復(fù)用能夠?qū)⒋a測(cè)試和代碼實(shí)現(xiàn)有機(jī)結(jié)合起來(lái),因?yàn)榫帉?xiě)和測(cè)試過(guò)的代碼的相關(guān)功能,所以能夠幫助軟件公司快速地解決軟件中存在的問(wèn)題。

但是引入新的軟件復(fù)用系統(tǒng)也可能造成一些問(wèn)題。軟件復(fù)用在新項(xiàng)目中利用的是老項(xiàng)目中的代碼,如果使用不當(dāng),可能會(huì)浪費(fèi)軟件公司開(kāi)發(fā)新產(chǎn)品的時(shí)間,它的優(yōu)勢(shì)節(jié)約時(shí)間也就得到了相反的效果,所以代碼使用的復(fù)用工具及其重要。復(fù)用代碼的開(kāi)發(fā)員也要十分清楚解代碼的功能和使用,要清楚怎么做和為什么使用復(fù)用。在現(xiàn)實(shí)生活中基于構(gòu)件的軟件復(fù)用技術(shù)仍然存在進(jìn)步的空間。這也需要廣大軟件開(kāi)發(fā)人員的不斷嘗試和創(chuàng)新,相信在不久的將來(lái),基于構(gòu)件的軟件復(fù)用技術(shù)將會(huì)得到更加廣泛的應(yīng)用。

5 結(jié)束語(yǔ)

基于構(gòu)件的軟件復(fù)用和開(kāi)發(fā)在生活中得到了廣泛的應(yīng)用,近年來(lái),基于構(gòu)件的軟件復(fù)用的研究和應(yīng)用得到了較大的發(fā)展,很好地解決了傳統(tǒng)技術(shù)的眾多缺點(diǎn),通過(guò)軟件復(fù)用,可以提高提高工作效率,提高軟件質(zhì)量,減少軟件的維護(hù)成本,提高系統(tǒng)之間的互操作性,減少培訓(xùn)開(kāi)銷(xiāo),軟件開(kāi)發(fā)的效率等。近十幾年來(lái),面向?qū)ο蠹夹g(shù)的出現(xiàn)為軟件復(fù)用提供了有力的技術(shù)支持。軟件復(fù)用研究又一次成為熱點(diǎn)?;跇?gòu)件的軟件復(fù)用技術(shù)的應(yīng)用使系統(tǒng)動(dòng)態(tài)結(jié)合起來(lái),能夠有效促進(jìn)軟件產(chǎn)業(yè)的變革,是我國(guó)軟件產(chǎn)業(yè)的發(fā)展的一個(gè)機(jī)遇。這個(gè)技術(shù)必將因?yàn)槠錈o(wú)法比擬的優(yōu)勢(shì)成為獨(dú)立存在。

參考文獻(xiàn):

[1] 鄭明春, 張家重, 王巖冰. 關(guān)于軟件復(fù)用[J]. 計(jì)算機(jī)科學(xué), 1994, 21(4).

[2] 杜銀霞. 軟件復(fù)用技術(shù)的探討[J]. 電腦知識(shí)與技術(shù), 2011(12).endprint

猜你喜歡
研究與應(yīng)用構(gòu)件
馬鈴薯中耕施肥機(jī)的研究與應(yīng)用
建筑構(gòu)件
建筑構(gòu)件
建筑構(gòu)件
建筑構(gòu)件
建筑構(gòu)件
綜采工作面瓦斯綜合治理的研究與應(yīng)用
復(fù)雜落物打撈工具的研究與應(yīng)用
特厚表土層巖移沉降規(guī)律研究及應(yīng)用
建筑構(gòu)件
新安县| 兴海县| 锦州市| 稷山县| 东光县| 莱芜市| 婺源县| 临猗县| 宜宾县| 克什克腾旗| 双江| 黑河市| 绿春县| 景宁| 新河县| 突泉县| 房产| 芦山县| 桓台县| 买车| 金堂县| 凤凰县| 平陆县| 略阳县| 瑞昌市| 日土县| 凌海市| 襄樊市| 历史| 三门峡市| 包头市| 连城县| 德阳市| 陕西省| 大宁县| 克东县| 福鼎市| 兰西县| 盐源县| 资兴市| 合山市|