《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于構件的軟件復用技術研究及在MIS中的應用
基于構件的軟件復用技術研究及在MIS中的應用
來源:微型機與應用2011年第17期
江龍強1,汪海濤2
(1.昆明理工大學 信息工程與自動化學院,云南 昆明 650500; 2.昆明理工大學 云南省計算機
摘要: 闡述了基于構件的軟件復用技術,并就基于構件軟件開發(fā)技術在管理信息系統(tǒng)(MIS)中的應用作了探討,對提高軟件開發(fā)效率有著重要意義。
Abstract:
Key words :

摘  要: 闡述了基于構件軟件復用技術,并就基于構件軟件開發(fā)技術在管理信息系統(tǒng)(MIS)中的應用作了探討,對提高軟件開發(fā)效率有著重要意義。
關鍵詞: 構件;軟件復用;管理信息系統(tǒng)

 “有效的開發(fā)軟件”和“有效的復用軟件”一直是軟件工程領域兩個永恒的主題。軟件復用是提高軟件開發(fā)效率和質(zhì)量的有效途徑,軟件復用的主要思想是,將軟件看成是由不同功能部分的“組件”所組成的有機體,每一個組件在設計編寫時可以被設計成完成同類工作的通用工具。這樣,如果完成各種工作的組件被建立起來以后,編寫一特定軟件的工作就變成了只是將各種不同組件組織連接起來的簡單問題,這對于軟件產(chǎn)品的最終質(zhì)量和維護工作都有本質(zhì)性的改變。
 構件技術是支持軟件復用的核心技術,是近幾年來迅速發(fā)展并受到高度重視的一個學科分支。它的出現(xiàn)是對傳統(tǒng)MIS開發(fā)過程的一次變革,是基于面向?qū)ο蟮摹⒁郧度牒篑R上可以“即插即用”概念為中心、通過構件的組合來支持應用的技術體系。標準零部件生產(chǎn)業(yè)的獨立存在和發(fā)展是產(chǎn)業(yè)形成規(guī)模經(jīng)濟的前提。軟件產(chǎn)業(yè)要發(fā)展并形成規(guī)模經(jīng)濟,標準構件的生產(chǎn)和構件的復用是關鍵因素。而軟件復用模式是產(chǎn)業(yè)工程化、工業(yè)化的必由之路。這正是軟件復用受到高度重視的根本原因。
1 軟件復用與軟件構件
1.1 軟件復用的基本概念

 軟件復用是指重復使用“為了復用目的而設計的軟件”的過程[1]。軟件復用是在軟件開發(fā)中避免重復勞動的解決方案,它包括對軟件生產(chǎn)過程中其他勞動成果的復用,如需求分析、概要設計、詳細設計、編碼、測試用例和使用手冊等。
 依據(jù)對可復用信息進行復用的方式,可以將軟件復用區(qū)分為黑盒(Black-box)復用和白盒(White-box)復用。黑盒復用是指對可復用構件不作任何修改,原封不動地復用。這類可復用構件比較通用,往往具有很好的封裝性,并具有標準的接口;而且這類構件的復用率較高,因此要求有很高的質(zhì)量和可靠性。白盒復用是指在復用一個構件時須對其進行部分修改,以適應具體應用的需要。
1.2 實現(xiàn)軟件復用的關鍵因素
 實現(xiàn)軟件復用的關鍵因素如圖1所示,主要包括:軟件構件技術、領域工程、軟件構架技術、軟件再工程、開放系統(tǒng)技術、軟件過程、CASE技術,以及各種非技術因素[2]。

1.3 軟件復用過程
 軟件復用過程如圖2所示,可分為以下步驟:(1)認識到有可能復用的機會;(2)分解、抽象;(3)分類并建立復用構件庫;(4)檢索與選擇復用構件;(5)對復用構件具體化;(6)重新組裝成新軟件。

1.4 構件的基本概念
 在眾多的軟件復用開發(fā)方法中,基于構件的軟件開發(fā)方法是一條有效、實際的軟件復用途徑。所謂構件是指系統(tǒng)中可以明確辨識的構成成份,軟件構件是系統(tǒng)中具有一定意義的獨立構成成份[3]。
 構件應具備的基本特征:(1)復用:復用是構件最基本的性質(zhì),構件的設計必須滿足能在新的應用項目中使用;(2)封裝:是對外界隱藏構件的設計和實現(xiàn)細節(jié),僅通過接口與外界交互,可以保證構件功能復用的完整性和構件開發(fā)及交互的獨立性;(3)組裝:構件可以通過組裝形成新的構件或系統(tǒng),組裝是構件復用的手段;(4)粒度:構件是有大小的,與領域相關的構件粒度大;(5)層次:構件可以按層次進行劃分,企業(yè)級應用系統(tǒng)的復雜邏輯可以通過分層來解決。
2 基于構件的軟件復用技術實現(xiàn)
 對于構件,應當按可復用的要求進行設計、實現(xiàn)、打包、編寫文檔。構件應當是內(nèi)聚的,并具有相當穩(wěn)定的公開的接口。有的構件具有廣泛的可復用性,可復用到眾多種類的應用系統(tǒng)中。而有的構件則只能在有限的特定范圍內(nèi)被復用。
 復用者從軟件體系結構和可復用構件的模型入手,將現(xiàn)成的可復用資產(chǎn)匯集在一起,以滿足客戶的需求。復用者應當利用可復用資產(chǎn)提供的可變性機制對所需的構件進行轉(zhuǎn)化。如果僅利用現(xiàn)有的可復用構件還不足以完全滿足客戶所有的需求,則就需要另外編程。最后,把所需要的構件集成在一起,并進行測試,形成應用系統(tǒng)。
 單獨的一個構件往往用處不大,但若干個構件聯(lián)合起來,用處就大了。所以要將相關的構件組織在一起,形成構件系統(tǒng)。實際應用中的開發(fā)者往往需要使用多個構件系統(tǒng),因此,應當把構件系統(tǒng)當作系統(tǒng)產(chǎn)品進行管理,必要時可自行開發(fā)構件系統(tǒng)。一個構件系統(tǒng)的規(guī)模可大可小,小到只有幾個構件及支持文檔。
 應用系統(tǒng)要復用公共的構件,要從構件系統(tǒng)中挑選所需的可復用構件。構件系統(tǒng)中的構件之間存在若干種關系,例如,一個構件可從其他構件那里繼承其功能(即繼承關系),也可以發(fā)送消息給其他構件,或者可以與其他構件聯(lián)合、支持協(xié)同工作。  
 總之,一個構件系統(tǒng)是能提供一系列具有可復用特性的系統(tǒng)產(chǎn)品。這些特性被實現(xiàn)為相互依賴相互連接的眾多構件,包括眾多的類型、軟件包和文檔。一個好的構件系統(tǒng)使得復用者能夠又快、又好、又省地開發(fā)應用系統(tǒng)。對構件系統(tǒng)中的每個構件,都要精心地進行設計和實現(xiàn),使得它具有適當?shù)撵`活性,能夠與其他構件(甚至與其他構件系統(tǒng))協(xié)同工作,向復用者提供適當層次的功能。構件系統(tǒng)應當是易于理解和易于使用的,每個構件類型、類以及與其他構件的相互作用,均應當有良好的文檔,并且所使用的術語應當具有一致性,對構件應當是仔細地進行建模、實現(xiàn)、制作文檔、測試,以便于以后的有效維護和改進。
3 軟件復用技術在MIS中的應用
 基于可復用構件MIS的開發(fā)過程如圖3所示,有如下5個步驟:

 

 

 (1)需求分析
 基于可復用構件的MIS需求分析可以采用改進后的信息模型法,在數(shù)據(jù)分析、建立穩(wěn)定的數(shù)據(jù)集合和邏輯數(shù)據(jù)模型的基礎上,從信息模型、狀態(tài)模型和功能模型中組織構件,建立系統(tǒng)模型。更多的是采用OOA,由此提煉的類構件對構件復用更有利。要利用在開發(fā)MIS系統(tǒng)之初準備的構件庫,并收集一些已經(jīng)開發(fā)出的MIS的總體設計、規(guī)范、局部流程以及某些人機界面、通用功能模塊、簡單開發(fā)工具等。使用戶需求的系統(tǒng)模型盡可能與已經(jīng)收集的可復用構件等成分相聯(lián)系。  
 (2)系統(tǒng)設計
 在構件復用情況下,由于代碼被封裝于構件之中,所以系統(tǒng)設計的目標應是可以實現(xiàn)的構件表達式,以支持后續(xù)的實現(xiàn)環(huán)節(jié)。MIS系統(tǒng)設計在內(nèi)容上包括了數(shù)據(jù)設計、體系結構設計和過程設計等,在階段劃分上,又可以分為概要設計和詳細設計。在概要設計階段,MIS設計的任務是確定系統(tǒng)的概況,即把需求轉(zhuǎn)化為概念數(shù)據(jù)模型和軟件體系結構,該階段的工作需要MIS構件庫的支持。在詳細設計階段,邏輯數(shù)據(jù)模型通過進一步細化轉(zhuǎn)換成物理數(shù)據(jù)模型,如數(shù)據(jù)庫結構。為了使體系結構的實現(xiàn)變?yōu)榭赡埽枰獙Ⅲw系結構中的過程構件(模塊)定義映射成實際程序構件的結構化表達式。對相對于構件庫無解的模塊需要進行原先的過程設計。至此,需求信息已轉(zhuǎn)換為程序員可以接受的設計方案。  
 (3)系統(tǒng)實現(xiàn)
 在MIS實現(xiàn)中,首先是數(shù)據(jù)庫的實現(xiàn),可以通過MIS建模工具自動在DBMS上完成,也可以由用戶利用相應工具手工完成。其次是把構件表達式變成程序?qū)崿F(xiàn),將進行過程分析得到的描述信息稱為過程構件。對于過程構件,可以用某一具體語言加以實現(xiàn),最好使用對象對其進行封裝。對于無需改動的可復用構件,僅需要根據(jù)構件索引將其從構件庫中提取出來,作為MIS的一個模塊。多數(shù)情況下,需要對提取出的構件進行改造以適應新的應用系統(tǒng)。常見的改造形式是修改源程序,還可以通過面向?qū)ο蟮睦^承、重載及動態(tài)編聯(lián)等特性進行改造。在一些情況下,還需要組合幾個構件形成更大粒度的構件以滿足某一特定功能需要。通過以上方法形成各個功能模塊,再將這些模塊通過控制模塊聯(lián)系起來形成應用系統(tǒng)雛形。
 (4)系統(tǒng)測試
 根據(jù)需求分析中提出的功能要求、性能要求等設計測試用例,對系統(tǒng)進行全面測試、驗證、優(yōu)化,形成MIS系統(tǒng)原型,提交給用戶評價。根據(jù)評價意見,返回前面的相關步驟,進行修改。通過復用上次開發(fā)過程的成果,可以很快形成新的原型,直到需求得到滿足,MIS系統(tǒng)發(fā)布為止。
 (5)系統(tǒng)維護
 基于可復用構件的MIS由于其自身的特點,因此必須重新考慮MIS的維護問題。一個基于可復用構件的MIS采用的構件可以是COTS構件、公開構件、自由構件、共享構件等。對構件集成者來說,當把這些構件集成到系統(tǒng)中時,由于缺乏部分或全部源代碼,使得維護變得十分困難。如果構件全部是“黑盒”,其可見部分僅局限于描述構件的使用和功能的文檔上,那么這對全部由黑盒構成的系統(tǒng)的維護,又增添了新的難度。對構件賣主來說,不能只考慮特定MIS應用領域的某一源代碼塊,而應維護被不同用戶所使用的所有代碼。因為每個MIS應用可能在需求上有一點差別,修改后的構件必須對所有的MIS都適用。
 通過對基于構件的軟件復用的研究及其在MIS中的應用,可以提高軟件生產(chǎn)和開發(fā)的工業(yè)化水平,大大提高了軟件開發(fā)的效率、質(zhì)量和可維護性,特別是領域內(nèi)構件技術的應用更有價值和應用前景。目前正在致力于MIS領域的軟件重用技術和軟件構件技術的研究,希望通過對這一領域技術的研究,能夠探索出一條管理信息系統(tǒng)領域內(nèi)軟件開發(fā)的低投入、高效率、高質(zhì)量的有效途徑。
參考文獻
[1] WALLNAUB. The current state of CBSE[J]. IEEE Software, 1998,15(5):37-46.
[2] PRESSMAN R S. Software engineering: a practitioner′s approach[M].北京:機械工業(yè)出版社,2005.
[3] 楊芙清,梅宏.面向復用的需求建模[M].北京:清華大學出版社,2008.
[4] 汪海濤,曾曉金,丁志強.一種基于四層結構的構件庫模型研究[J].計算機工程與應用,2002,38(22).
[5] 楊芙清,梅宏,李克勤.軟件復用與軟件構件技術[J].電子學報,1999,27(2):68-75.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲——在线| 男女视频一区二区| 亚洲国产成人精品女人久久久 | 午夜电影亚洲| 一区二区三区久久网| 亚洲区一区二区三区| 一色屋精品视频免费看| 国产一区二区三区直播精品电影 | 欧美中文在线免费| 欧美一级在线视频| 午夜在线成人av| 亚洲字幕在线观看| 亚洲欧美日韩天堂一区二区| 在线亚洲一区观看| 正在播放亚洲一区| 国产午夜精品福利| 国产一区二区三区观看| 国产在线拍偷自揄拍精品| 国内在线观看一区二区三区| 韩国一区二区三区美女美女秀| 国产一区二区久久久| 国产一级一区二区| 狠狠入ady亚洲精品| 国内精品久久久久影院 日本资源| 国产日韩亚洲欧美精品| 国产亚洲一区二区三区| 国产日韩欧美三级| 国产专区综合网| 伊人久久综合| 亚洲欧洲一区二区三区在线观看| 亚洲人成毛片在线播放女女| 日韩一区二区精品视频| 宅男噜噜噜66一区二区| 亚洲欧美激情一区| 欧美有码在线视频| 亚洲国产日韩欧美在线图片| 国产精品99久久久久久宅男| 亚洲深夜影院| 翔田千里一区二区| 亚洲国产一区二区三区a毛片| 亚洲欧洲另类| 亚洲视频一区二区| 欧美一区二区黄| 久久理论片午夜琪琪电影网| 免费看亚洲片| 欧美色图一区二区三区| 国产欧美精品日韩区二区麻豆天美| 国产精品综合| 在线成人性视频| 亚洲免费av电影| 亚洲一区在线直播| 久久国产一区二区| 夜夜嗨av一区二区三区免费区| 亚洲欧美电影在线观看| 欧美亚洲免费在线| 免费成人黄色片| 国产精品久久国产愉拍| 激情综合网址| 亚洲色图综合久久| 亚洲经典自拍| 小嫩嫩精品导航| 欧美不卡一卡二卡免费版| 国产精品扒开腿爽爽爽视频| 激情久久久久久久久久久久久久久久| 亚洲精品老司机| 欧美在线不卡| 亚洲午夜在线视频| 久久亚洲免费| 国产精品hd| 亚洲黄色成人网| 羞羞答答国产精品www一本| 亚洲精品自在久久| 久久av资源网| 欧美日韩国产页| 狠狠色伊人亚洲综合成人| 一区二区三区高清在线| 亚洲黄一区二区三区| 性色av一区二区三区| 欧美成熟视频| 国产欧美综合一区二区三区| 亚洲欧洲美洲综合色网| 欧美怡红院视频| 中国亚洲黄色| 欧美激情一二三区| 国产欧美日韩亚洲一区二区三区| 亚洲大片av| 亚洲香蕉网站| 最新国产の精品合集bt伙计| 欧美在线免费一级片| 欧美激情欧美激情在线五月| 国产精品视频免费观看| 在线观看91精品国产入口| 中文高清一区| 亚洲欧洲精品一区二区三区不卡| 一区二区av| 欧美第一黄网免费网站| 国产欧美日韩一区二区三区在线观看| 亚洲第一区中文99精品| 亚洲一区视频| 99热精品在线观看| 久久久久高清| 国产精品久久久久av| 伊人蜜桃色噜噜激情综合| 欧美一区激情| 亚洲在线免费视频| 欧美超级免费视 在线| 国产毛片一区二区| 亚洲免费精彩视频| 亚洲高清免费| 午夜免费在线观看精品视频| 欧美日韩亚洲在线| 亚洲国产精品精华液网站| 亚洲欧美另类在线| 亚洲婷婷综合久久一本伊一区| 老牛影视一区二区三区| 国产乱码精品一区二区三区不卡| 亚洲人妖在线| 一本一本久久a久久精品综合麻豆| 久久精品二区| 国产精品免费网站| 亚洲乱码久久| 99riav久久精品riav| 久久亚洲春色中文字幕久久久| 欧美视频免费看| 中国成人在线视频| 中文有码久久| 欧美日产一区二区三区在线观看| 精品av久久久久电影| 亚洲欧美区自拍先锋| 亚洲一级二级在线| 欧美精品在线一区二区三区| 欧美激情国产精品| 亚洲美洲欧洲综合国产一区| 亚洲精品久久视频| 久久伊人免费视频| 国产真实乱子伦精品视频| 午夜久久99| 欧美一区二区免费观在线| 国产情人综合久久777777| 亚洲一二三区视频在线观看| 亚洲深夜福利在线| 欧美日韩免费观看一区二区三区 | 亚洲一区二区三区中文字幕在线 | 亚洲天堂免费在线观看视频| 欧美日韩一区二区精品| 亚洲精品免费网站| 亚洲一区免费视频| 欧美三级网页| 一个色综合av| 亚洲欧美激情诱惑| 国产精品久久一卡二卡| 亚洲一区二区视频在线| 欧美一区二区三区日韩| 国产欧美精品国产国产专区| 亚洲嫩草精品久久| 久久久久国产精品午夜一区| 国产婷婷成人久久av免费高清 | 亚洲欧美在线高清| 久久精品青青大伊人av| 国产精品自拍三区| 亚洲国产精品久久久| 欧美99在线视频观看| 91久久精品国产91性色tv| 一本大道久久a久久综合婷婷 | 制服丝袜激情欧洲亚洲| 午夜精品久久久久久久白皮肤| 国产精品天天看| 欧美一级在线亚洲天堂| 久久综合九色综合久99| 亚洲第一在线视频| 亚洲欧美国内爽妇网| 国产日产欧美精品| 久久精品日韩| 欧美日韩成人在线播放| 亚洲区国产区| 久久精品夜色噜噜亚洲a∨| 在线观看不卡av| 亚洲伦理在线观看| 国产精品二区二区三区| 久久精品盗摄| 欧美承认网站| 亚洲视频图片小说| 久久久久久久激情视频| 亚洲电影免费| 亚洲一区二区三区中文字幕在线| 国产精品一区毛片| 99精品国产99久久久久久福利| 国产精品久久久久久久久久尿| 欧美一级在线播放| 欧美精品v国产精品v日韩精品| 亚洲永久视频| 免费在线视频一区| 在线亚洲一区二区| 久久亚洲电影| 亚洲视频国产视频| 久久亚洲一区二区三区四区| 亚洲视频第一页| 蜜臀a∨国产成人精品| 制服丝袜激情欧洲亚洲| 久久亚洲一区|