




已閱讀5頁,還剩58頁未讀, 繼續(xù)免費(fèi)閱讀
(計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)論文)流媒體構(gòu)件庫的設(shè)計(jì)與實(shí)現(xiàn).pdf.pdf 免費(fèi)下載
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
北京郵電大學(xué)碩士研究生論文 流媒體構(gòu)件庫的設(shè)計(jì)與實(shí)現(xiàn) 摘要 本文所討論的內(nèi)容基于當(dāng)前兩個(gè)熱點(diǎn)技術(shù),一是伴隨著i n t e m e t 和多媒體技術(shù)蓬勃發(fā)展應(yīng)運(yùn)而生的流媒體技術(shù);二是軟件復(fù)用技術(shù)在 軟件工程領(lǐng)域不斷演進(jìn),繼結(jié)構(gòu)化程序設(shè)計(jì)、面向?qū)ο蟮能浖O(shè)計(jì)后 新興的構(gòu)件及構(gòu)件庫技術(shù)。本文著力將構(gòu)件庫技術(shù)引入流媒體軟件開 發(fā),旨在提高流媒體軟件開發(fā)的效率和質(zhì)量。 本文首先研究了構(gòu)件及構(gòu)件庫技術(shù),總結(jié)了流媒體軟件的基本功 能單元和體系結(jié)構(gòu),在此基礎(chǔ)上將構(gòu)件技術(shù)引入流媒體軟件開發(fā)中, 利用構(gòu)件庫的思想和方法設(shè)計(jì)實(shí)現(xiàn)了流媒體構(gòu)件庫系統(tǒng),首批入庫 2 4 個(gè)自主研發(fā)和第三方開發(fā)的流媒體構(gòu)件,最后通過流媒體構(gòu)件庫 系統(tǒng)搭建了視頻會(huì)議系統(tǒng),進(jìn)一步驗(yàn)證了本文的設(shè)計(jì)思想。 關(guān)鍵詞:流媒體,構(gòu)件,構(gòu)件庫,軟件復(fù)用 j & 寨都魄大學(xué)礤士輯究生論文 d e s i g na n di m p l e m e n t a t i o no f ac o 麓p o n 翌n 墨毛l b 慕a r ¥f o rs 譬r 囂a 囅烈g 燃e d l a a b s t r a c t t h ew o r ko ft h i sp 拄p e ri sb a s e do nt w oc u 狂n th o tt e c 圭l n o l o g i e s 墨瓠e 是f s i ss 缸譬巍黻i 藏g 氆。d i a ,搬。s e e 0 1 1 di sc o n p o n e 娃l i b r l 彤c o 】驄p o 熱e l 建a n d 嫩p o n e n tl i b 靴r y 據(jù)c h n o l o g i e sa r eu s e d 董酗i m p v i n gt h ee 燃e i e 玎e yo f d e v e l o p h gs t r e a m i n gm e d i as o r w a r e f nt h i s p a p e r ,髓f s to fa i l ,w es t u d i e de o m p o n e n 童8 n dc o r n p o n e 嫩 l i b r a r yt e c h n o l o g i e s s e c o n d ,w es u m m e du pb a s i cf u n c t i o nu n i t sa n d a f 馥l t e c 挺| r eo fs t 王_ e 鑫l 鞋i 藏gl 鞋e 娃i 尊s 。建w 鑫f e 。l 輟鼴ae o 掛】p o n 。n tl i b f a 幻7 羲) l - s f 蛩a 搬i 扎gm 囂d i 鑫j sd e s i g 建e da 磚d 矗強(qiáng)p l e l 玨e n l e 鑫。2 4c o 撒p o 建e n l sd g v e l o p e d b yo u r ) a b o r a o 黟a n dt h et h i r dp a n ya 他s 協(xié)r e di ni 亡a e rt h a t ,av i d e o c o n 疊r e n c ew a sb u i nu pw i t ht h eh e l po f t h el i b r a 姆a n dv a l i d a e d 蝕ei d e 氌 o f t h i sp a p e r 圣醺¥w r 轉(zhuǎn)s :s 瓣鋤堍m e 魄e o 嘲。魏程。e 鰳p o 魏e 秘tl i b 搿y , s o 斑w a r er o u s e 北京郵電大學(xué)碩士研究生論文 剖新性聲明 本人聲明所里變的論文照本人在導(dǎo)師指導(dǎo)下進(jìn)行的研究工作及取得的研究成 聚。盡我搿知,除了文中特裂齠鞋標(biāo)淀襄致澎串掰羅列麴凌容| 冀辨,論文中不黿含 其他人已經(jīng)發(fā)表或撰寫過的研究成果,也不包含為獲得北京郵電大學(xué)或其他教育機(jī) 將艙學(xué)位娥涯書麗使用過鮑艚辯。與我一麗工佑的同志對(duì)本研究磁馓的 壬俺貢獻(xiàn)均 已在論文中作了明確的說碉井表示了謝意。 申請(qǐng)學(xué)位論文與資料著育不實(shí)之處 本人簽名;晷漁透 本人承擔(dān)一切相關(guān)責(zé)任。 翻期:! :王:繇 關(guān)于論文使耀授教雛滋驟 學(xué)位論文作者究全了解北京郵電大學(xué)有關(guān)保留和使用學(xué)位論文的規(guī)定,即:研 究生在校攻讀學(xué)位期間論文工作的知識(shí)產(chǎn)權(quán)單位屬北京郵電大學(xué)。學(xué)校有權(quán)保留并 嗣匿家有芙部門或機(jī)構(gòu)送交論文靜復(fù)印釋稻磁盤,允許學(xué)位論文被套蕊和僚瀾:學(xué) ??梢怨紝W(xué)位論文的全部或部分內(nèi)密,可以允許采用影印、縮印或其它復(fù)制手段 輟存、咒縭學(xué)短論文。( 保密的學(xué)位捷文在簿密螽遵守瑟規(guī)定) 保密論文注釋:舉學(xué)位論文屬于保密在年解密席適用本授權(quán)書。非保密論文注釋:本學(xué) 像論文幣霹子保 本人簽端: 導(dǎo)師簽名: 圈期:羔簍:= 登一一 日期:孕蚪| 0 生列l(wèi) 一 j t 裘郫電式學(xué)硪士磷究生毽文 1 1 研究背繁 第一章號(hào)l 言 隧蓉計(jì)算稅涮遣照發(fā)震靜突飛猛送,硬件技術(shù)援磺件憔能豹提高速瘦總是懨 予款 牛,著名的瘁爾定律( 處理器的性能每1 8 個(gè)冀提高一繼) 澄明了磺 牛的發(fā) 展速度,但是考黎一下較傳開發(fā)的速度,可以發(fā)現(xiàn)較轉(zhuǎn)開發(fā)灼速度一懣避遠(yuǎn)她落 后于硬件的速度。實(shí)際上業(yè)內(nèi)人士直沒有停止過對(duì)軟件開發(fā)思想的探索,只不 過捷遮姥對(duì)軟件技術(shù)變革的需求遠(yuǎn)遠(yuǎn)高予較律開發(fā)技術(shù)的進(jìn)步。 軟件工程的目標(biāo)就是致力于提高軟件生產(chǎn)效率和軟件質(zhì)鬃,如采每個(gè)應(yīng)用軟 辭系統(tǒng)戇開笈都雙頭開始,必然存在大量瓣燮復(fù)勞動(dòng)。軟辭復(fù)瘸是減少重復(fù)勞璐、 提離較件開發(fā)效率和麓燕、實(shí)現(xiàn)較 牛產(chǎn)業(yè)工業(yè)純生產(chǎn)方式的鬟要途經(jīng)。它良已鴦 的工作為基礎(chǔ),充分利用在開發(fā)中所積累的知識(shí)和經(jīng)驗(yàn)進(jìn)行新的開發(fā)。而面向?qū)?象技術(shù)、軟捧體系結(jié)構(gòu)、戟 畢爵工程、領(lǐng)域工程、軟件構(gòu)件技術(shù)等相關(guān)技術(shù)則為 軟件復(fù)用提供了基本的技術(shù)支持,并推動(dòng)其在研究和實(shí)踐中的避速發(fā)展。 近年來。在申閏件按零韻蒸磴主,臻臺(tái)被俘蔓耀愿怒和蘸海對(duì)象方法,纂予 梅辭的軟停開發(fā)( c o m p o n tb a 8 s o 建w a f ed “e l o p m # n t ,籬稱e b s 玲) 技術(shù)受到 了蕊艘駐視。c b s d 的起主黎是源于下蕊4 個(gè)辯最:在研究方面,現(xiàn)代軟件工 程恩想,特別是慰復(fù)用技術(shù)的強(qiáng)調(diào);在產(chǎn)業(yè)方面,支持用拘伴米建造0 u i 、數(shù)掩 庫和應(yīng)用部件的一些理論上質(zhì)樸但實(shí)際可閣的技術(shù)的成功;在策略方麗,某些主 流互操作技術(shù),如c 0 r b a 、c o m 和e 澎的開發(fā)者翡推動(dòng):柱軟件薺磚蒙搜 術(shù)的廣泛使用,提供了建造和使桶構(gòu)件靜概念基確和實(shí)用工巽。 較 牛鞫傳是較 孛復(fù)胡一條切實(shí)可行熟途徑,它致變了軟臀生產(chǎn)方式,將軟件 生產(chǎn)糍分為構(gòu)件生產(chǎn)秘構(gòu)件集成甄個(gè)方獺,開發(fā)囊專,0 于攙 畢瓣生產(chǎn),裝或者充 分利用構(gòu)件,專心于應(yīng)用。但軟件構(gòu)件只有在數(shù)量上達(dá)到定的規(guī)模才能真藏滿 足軟件愛用翱藻于掏 牛躺較件開發(fā)的需忒,閹j 匕必頒有一個(gè)強(qiáng)宥力酌工輿來對(duì)這 些數(shù)量龐大的軟件構(gòu)件進(jìn)行管理。軟件構(gòu)件庫作為種支持軟件復(fù)埔的基礎(chǔ)沒 憨,窀提供了對(duì)較件鞠 串進(jìn)行攘述、努類、存儲(chǔ)、撿索幫餐建等功麓,并提供鞘 應(yīng)的工具支持殲發(fā)人愛在較件開發(fā)過程中方蠖遺梭豢、理麓幫選瑕軟件構(gòu)件,以 此求提麓軟件復(fù)朋程度以及軟件開發(fā)的質(zhì)爨和效率。 與詫同對(duì),柱互聯(lián)網(wǎng)大發(fā)展的對(duì)代,流媒體按術(shù)的產(chǎn)生和沒展將給我們拘鱈 常生活和工作帶來深遠(yuǎn)的影響,專家預(yù)宙,流媒體將成為未來因特網(wǎng)上應(yīng)用的主 流,實(shí)現(xiàn)淘遴幫傳播的多商淫健健播不蔣受瓣聞秘空藺韻隈制。流媒體控術(shù)并不 北京郵電大學(xué)碩士研究生論文 是單一的技術(shù),它融合了多種網(wǎng)絡(luò)以及音視頻技術(shù)。在網(wǎng)絡(luò)中真正要實(shí)現(xiàn)流媒體 技術(shù),必須完成滾媒體的采集、制幸售、發(fā)毒、轉(zhuǎn)竣、攘赦等多個(gè)巧節(jié)。這些巧節(jié) 需要解決多項(xiàng)投術(shù)問題。例如采鬟制作過程的主要工作包括:采用高效的壓縮算 法減小文件的尺寸;向文件中加入流信息。發(fā)布傳輸過程還需要解決:適合流式 傳輸靜髂輸秘談,一般采胡建立在u d p 協(xié)議之上靜p 豫稼t s p 來佟輸實(shí)對(duì)鮑影 音數(shù)據(jù)。而在播放時(shí)需要撩放器對(duì)流媒體的支持,播放器通過流中內(nèi)建的m i m e ( m v h i # u 審o s el 嫩e m 。tm a i l 塞x t e n s i 。n s ) 寒豁記繁多鮑多媒髂文律搖式,包錘薔 種流媒體文件格式。作為傳輸和播放的中間過程,還需要流媒體的緩存艘術(shù)進(jìn)行 強(qiáng)有力的支持。以上所說的幾點(diǎn)均為實(shí)現(xiàn)流媒體技術(shù)的必要條 牛,它們最終的目 的都燕為了解決傳輸帶寬、壓縮算法以及安全性等聞?lì)}。 我們看到,流媒體技術(shù)就其他一些計(jì)算機(jī)技術(shù)領(lǐng)域而言有一定的獨(dú)立性,它 骶涵轟黲知談餐廣度又覆燕藿多媒髂技術(shù)、瓣終轉(zhuǎn)贛技術(shù)、鎊議勢(shì)輯技術(shù)、蕊密 與安全技術(shù)等眾多方面,有著相當(dāng)?shù)膹?fù)雜性,已經(jīng)成為計(jì)算機(jī)技術(shù)中一個(gè)特定的 領(lǐng)域,并且該領(lǐng)域也已經(jīng)煉舍軟件復(fù)用的思想開始了掏傳化發(fā)艘。 1 2 i 開究目的 北京郵電大學(xué)計(jì)算機(jī)科學(xué)與搜術(shù)學(xué)院智能通信軟件與多媒體實(shí)驗(yàn)室長期從 事多攥體與通信軟件方瑟的研究,襁累了豐碩的辯研殘果。本文作者在醭士礤究 生就讀期間有幸參加了視頻會(huì)議項(xiàng)目和其他些多媒體或通信軟件方面的項(xiàng)目, 參與了項(xiàng)目的需求分析、總體設(shè)計(jì)、編碼和測(cè)試工作。 在這些項(xiàng)西完箴班禹,本文 擘者繼續(xù)對(duì)漉瀠藩應(yīng)鯔系統(tǒng)送行分析靜研究,結(jié) 合實(shí)驗(yàn)麓在該領(lǐng)域的理論研究成果和技術(shù)開發(fā)成果,進(jìn)一步完善流媒體應(yīng)用程序 7 發(fā)的攥架模型,致力于探討這些王 乍中積豢蛉知識(shí)鞠經(jīng)驗(yàn)的復(fù)饜方法。 1 3 論文成果糊意義 基于構(gòu)件的軟件復(fù)用作為一種提高軟件生產(chǎn)率和軟件質(zhì)量的有效途徑,是近 幾年簸傳工程霧錯(cuò)變約重點(diǎn)之一,鞭諼為是繼露囊對(duì)象方法之簧瓣個(gè)赫赫整末 熱潮。微軟提出的基于c 0 m 構(gòu)件技術(shù)的d i r e c t s h o w 技術(shù)便是可復(fù)用的流媒體軟 件框架模型,本文總結(jié)抽象了流媒體應(yīng)粥程序設(shè)計(jì)與開發(fā)模型,在微軟 d i m c t s h o w 流媒體軟 _ 牛框架模鍪 基礎(chǔ)之上又提出并實(shí)現(xiàn)了流媒體業(yè)務(wù)巢成構(gòu)件 或稱流媒體子系統(tǒng)構(gòu)件的概念,它掌管流媒體功能的內(nèi)部實(shí)現(xiàn)邏輯,向下調(diào)用流 媒體基躐磚憝梅件,離上囂蔽流媒體動(dòng)能部搏的復(fù)雜憋,為軟 串系縫遂瓣提攥篙 單的調(diào)用接口,使得應(yīng)用程序?qū)娱_發(fā)人員專、璉于業(yè)務(wù)邏輯而流娣體層開發(fā)人員專 j 京辯電丈學(xué)礤:i = 磷競(jìng)生論文 注于流媒體功能的內(nèi)幫實(shí)蕊邏瓣。 同時(shí),絡(luò)臺(tái)軟件構(gòu)件癢的理論,設(shè)計(jì)并安境了一個(gè)薔向流媒體騷域的梅鋅霹, 穗滾媒體基糍功斃構(gòu)傳幫業(yè)務(wù)集裁搗 牛鰓編入庫,倭于蘑縷的復(fù)用。 最螽,本文鍘塌掰設(shè)謗實(shí)現(xiàn)的梅件簿,縷會(huì)安驗(yàn)?zāi)翼?xiàng)羈“基于s 猙的視頻會(huì) 議系統(tǒng)”,為諺項(xiàng)目搭建了流媒體子系統(tǒng),進(jìn)一步驗(yàn)誕了本文的設(shè)計(jì)思想。 癢論文酌總體結(jié)構(gòu) 論文余下瓣辯分共努為五牽,第二囊饕藿分?jǐn)_構(gòu)轉(zhuǎn)及梅搏癢的羲礎(chǔ)知識(shí),主 要釩攤構(gòu)件技術(shù)和構(gòu)件麾理論兩方面;第三囊將流媒體軟件開發(fā)同構(gòu)件技術(shù)結(jié)合 起來,進(jìn)行流媒俸領(lǐng)域構(gòu)件化開發(fā)的研究;第四章是率文的塞點(diǎn),講述了流攥體 構(gòu)件庫的設(shè)計(jì)與實(shí)現(xiàn);籀五章講述了首批入庫的構(gòu)件,并且給如了通過構(gòu)件庫搭 建一個(gè)流媒鑄虛羯系統(tǒng)流媒體予系統(tǒng)酶壘過程:第六章霹本文避符了嫠結(jié)。 北京郵電丈學(xué)碩士研究生論文 2 。 糖佟 第二牽槐饞及梅髂癢基鑭知識(shí) 2 橡髂戇產(chǎn)生豫素 軟件質(zhì)量和軟件的開發(fā)效率一崽是開發(fā)糟關(guān)心的問題,用最少的時(shí)間開發(fā)出 騫質(zhì)量辯較籜,一直是軟俘開發(fā)者逸求的目櫟。蘧善信惠技術(shù)在生產(chǎn)、潮陸等行 業(yè)應(yīng)用的深入,相關(guān)軟件系統(tǒng)復(fù)雜餓相應(yīng)提瀚。在傳統(tǒng)的軟件開發(fā)技術(shù)和開發(fā)模 式下開發(fā)這些復(fù)雜能軟傳襲統(tǒng),通常開發(fā)周期長,軟 串凄量綴滾鎩證。 為了解決“軟件危機(jī)”問題,暈在2 0 世紀(jì)6 0 年代朱,人們就提出了軟件 的工程化,把軟件開發(fā)過程當(dāng)成產(chǎn)晶生產(chǎn)過穰來對(duì)待。過去的幾十年,軟件工程 方法和耩關(guān)技術(shù)褥到了根好的發(fā)展,一系列靜優(yōu)秀的軟件技求嗣軟件并發(fā)方法不 斷涌現(xiàn),影響最深的是面向?qū)ο蟮募夹g(shù)及相關(guān)方法。面向?qū)ο蠓椒▽W(xué)盡可能模擬 人類試識(shí)篷霧簿抉瓣題熬習(xí)饌方式,攘舞的支持款締復(fù)焉,提窩了軟臀的哥靠性 和可維護(hù)性,推動(dòng)著軟件技術(shù)的發(fā)展。但遺憾的是,麗向?qū)ο笠灿凶约旱娜毕荩?軟件復(fù)用僅在代弱緞復(fù)用上,真正的代碼級(jí)軟件復(fù)用二i = 程實(shí)踐效果薺不好,更嚴(yán) 重的問題是軟悻系統(tǒng)的互操作性差,產(chǎn)生“對(duì)象孤島”現(xiàn)象。 解決面向?qū)μK軟件設(shè)計(jì)開發(fā)的不足,消除“對(duì)象孤島”,提高軟件的互操作 性,在露彝露象技術(shù)靜基虢上,產(chǎn)生了梅釋技術(shù)。褥俘技術(shù)可以在二避裁綴上支 持軟件復(fù)用,提藺軟件質(zhì)量,同時(shí)基于構(gòu)件技術(shù)的軟件互操作性好,可蛆實(shí)現(xiàn)軟 傳?!凹床寮从谩?,為軟 牛最終的工程他遞黲玎精了勰的捷徑。梭饞技術(shù)墨【或?yàn)?一個(gè)受煎視的軟件學(xué)科分支,正推動(dòng)軟件技術(shù)的發(fā)展。 2 2 稗僻豹定義 2 0 世紀(jì)6 0 年代來到2 0 睦紀(jì)s o 年代拐,纏構(gòu)化蛉模塊式軟饞開發(fā)思想占主 導(dǎo)地位,當(dāng)時(shí)軟件組件的含義是指一些定義藏好的方法包或功能模塊。 2 0 僦紀(jì)8 0 年代起,顥向?qū)ο蟮能浖_發(fā)思想迅速發(fā)展起來,這時(shí)軟件組件 的含義藏跫類癢。類盈然磁謠了封袈經(jīng)、多憊襤幫繼承經(jīng),毽菊要寢賴予疑搏魏 編程語曹,耦合魔高,且需愛用戶對(duì)類庫的結(jié)構(gòu)和宿主語言有技深入的了解,因 此,不就寵全達(dá)到較饞重髑鞋鮑。 2 0 馥乏紀(jì)9 0 年代后,軟件組件的內(nèi)涵進(jìn)一步加強(qiáng),聚合性、獨(dú)立性和霞用性 北京郵電大學(xué)碩士礎(chǔ)究生論文 進(jìn)一步提高。目前,基于對(duì)象的組件軟件體蒹結(jié)構(gòu)中的組件是指可方便地插入到 語言、工具、操作系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)中的二迸話i 代碼和數(shù)握。 隨著分布式計(jì)算、l n 姆m e t 等技術(shù)以及基于構(gòu)件的軟件開發(fā)技術(shù)的發(fā)展,人 們對(duì)構(gòu)件的認(rèn)識(shí)又產(chǎn)生了新的變化。對(duì)于軟件構(gòu)件,至今也沒有一個(gè)嚴(yán)格的定義。 放廣義上流,搗轉(zhuǎn)是可美羯酶較律綴或成傍,蠆被靂寐糖造箕穗軟舞,怒一種定 義照好的獨(dú)立、可重用的三進(jìn)制代碼,包括功能模塊、被封裝的對(duì)象類、軟件框 架和軟件系統(tǒng)模型等。這攫我們采翔一個(gè)大家普遍接受蛉定義。 定義2 1 構(gòu)件是一個(gè)帶有規(guī)范化接口和鼴示語境依賴的組裝單元,它能被獨(dú) 立發(fā)布并且可以被第三方緞裝f 3 1 。 為了更簿遺管理幫使爝軟薛梅靜,對(duì)萁構(gòu)成成分獲特性逑行治如其分韻界定 是必需的。構(gòu)件應(yīng)具有以下屬性:( a ) 有用性:構(gòu)件必須提供有用的功能;f b ) 可 臻性:梭傳必須翳予理解鞠使懲;( c ) 展量:褥傳縫夠絳證騷務(wù)蔽量;稿 逶應(yīng)性: 構(gòu)件應(yīng)該易于通過參數(shù)化簿方式在不同語境中進(jìn)行配鬣;( e ) 可移植性:構(gòu)件應(yīng)能 在不同硬件運(yùn)行平臺(tái)和軟件環(huán)境中進(jìn)行工作。 2 13 構(gòu)件的分類 構(gòu)件按功能鼷次可分為3 類:鏊礎(chǔ)層為基本數(shù)提婁構(gòu)件和系統(tǒng)支撐構(gòu)件,中 間層為各種通用的中問件,頂層為針對(duì)領(lǐng)域的專用構(gòu)件或子系統(tǒng)構(gòu)件。構(gòu)件還可 敬搖有鑫己戇內(nèi)部體系結(jié)構(gòu),這樣靜構(gòu)件被稱為復(fù)合季句件。利翊簸臺(tái)掏 牛的概念, 發(fā)人員可以逐步精化系統(tǒng)的體系結(jié)構(gòu)模型,更好地進(jìn)行設(shè)計(jì)與開發(fā)。 2 ,j4 梅粹復(fù)再技術(shù) 莜舞復(fù)矮懿對(duì)象,可蹉將秘徉囊臻分為產(chǎn)品復(fù)蠲莘藉過程濺翔。產(chǎn)品復(fù)瘸是指 復(fù)用已有的構(gòu)件,通過構(gòu)件集成( 緞裝) 得到新系統(tǒng)。過程復(fù)用指復(fù)用已有的軟 肄玎發(fā)過簇,使嗣可復(fù)髑的應(yīng)用生成器來自魏藏半盎動(dòng)建生皮所瓣系統(tǒng)。 依據(jù)對(duì)構(gòu)件進(jìn)行復(fù)沼的方式,可以分為黑盒復(fù)用和囪盒復(fù)用。黑盒復(fù)用是指 對(duì)已有構(gòu)件不做任何修改,囊接進(jìn)行復(fù)用。臼盎復(fù)用是指已有構(gòu)件并不能完全符 合焉,壽蔫求,需簧寢螽蠲戶需求進(jìn)行適應(yīng)襤修改磊才可使用。 構(gòu)件復(fù)用包描兩個(gè)基本過程:可復(fù)用構(gòu)件的開發(fā)和旗子可復(fù)用構(gòu)件的應(yīng)用系 統(tǒng)的槐造。 按照軟件工程的原則,對(duì)于構(gòu)件爵勺開發(fā)可以分為四個(gè)階段來究成:論域分析、 構(gòu)件設(shè)計(jì)、構(gòu)件庫的組織與檢索和系統(tǒng)集成。其中:如何提取可復(fù)用構(gòu)件以及如 何組裝或系統(tǒng)并畿實(shí)現(xiàn)互操作,是構(gòu)件開發(fā)靜兩個(gè)核心問題。 北京郵電丈學(xué)碩士研究生論文 第一、構(gòu)件開發(fā)首先藤面對(duì)的問題是如何定義一個(gè)新的構(gòu)件,即如何在應(yīng)用 領(lǐng)域的應(yīng)用模型中找出有凝性、可遴用的部分做成軟傳構(gòu)件。擻然它與軟件工程 率常規(guī)的需求分析有相似之處,但淇要求視角更為廣泛,對(duì)于w 復(fù)用構(gòu)件需要考 慮:( a ) 它不僅要艘務(wù)于當(dāng)前的應(yīng)用,而且要從歷史項(xiàng)目中發(fā)現(xiàn)這些項(xiàng)目之間的共 同點(diǎn)秘整異煮,并考慮羈攫或耜釹應(yīng)用領(lǐng)域豹未來款鋅矮莓靜囂求;( b ) 擒梓是 否依賴予具體的硬件結(jié)構(gòu);( c ) 一個(gè)不可復(fù)用構(gòu)件是否通過分解產(chǎn)生一組w 復(fù)用的 輯終;( d ) 锪傳是焉透過參數(shù)我或少囊筠摻浚麓能在綴多場(chǎng)合下復(fù)臻。爨姥,要 解決這姥問題,光有軟件技術(shù)是不夠的,還要求有應(yīng)用領(lǐng)域的相關(guān)知識(shí),兩者結(jié) 臺(tái)起來才能夠解決應(yīng)用問題。因此在做構(gòu)件之前首先要明確它將適用于哪個(gè)應(yīng)用 領(lǐng)域,然后再掇攢這個(gè)領(lǐng)域的知識(shí)和虛蔫模型抽取出裔代表酌頒目進(jìn)行分類,把 與論域有關(guān)的不變部分和可變部分分開,設(shè)計(jì)出論域軟件的框架,抽象出最合理 豹搗餑逡義及野技壤強(qiáng)懿分?jǐn)z摟鼙。 第二、為了使所開發(fā)的構(gòu)件能夠裝配互換形成應(yīng)用系統(tǒng),并在新的環(huán)境下能 表現(xiàn)出煲好的健壯性,在設(shè)計(jì)構(gòu)件時(shí),必須將橡件應(yīng)髑的上下文與其嚴(yán)鼴分囊, 并充分利用抽象化、參數(shù)化等手段撼取公共特征,增強(qiáng)構(gòu)件對(duì)來來不同應(yīng)席項(xiàng)目 的適應(yīng)能力。為此常采用的抽象方法有: 圓動(dòng)能撞象:籀 牛爨葫能盤接口謚甓確定,兩其髂的實(shí)現(xiàn)纓節(jié)對(duì)鞠捧豹使嗣 者隱藏越來。 ( 數(shù)攝撼象:在功能撼象的基皴上進(jìn)一步隱藏狳接口參數(shù)勢(shì)鮑辱有數(shù)據(jù)。 構(gòu)件的功能、行為由輸入?yún)?shù)和構(gòu)件自身記憶的內(nèi)部狀態(tài)決定,構(gòu)件的內(nèi)部狀態(tài) 可由構(gòu)件的內(nèi)部操作來更新。面向?qū)ο蟪绦蛟O(shè)計(jì)語言中的“類”就是一種攙型的 蘩予鼗瓣事盎象豹較俘構(gòu)件。 ( o ) 過程抽象:在數(shù)據(jù)抽象的基礎(chǔ)上,進(jìn)步實(shí)現(xiàn)同一軟件構(gòu)件上并發(fā)執(zhí)行的 多個(gè)線程黲無關(guān)鍵。軟件槐侮提供瓣霜,爨餒多個(gè)霹戶麗露訪懲較俘聿棼臀中麓贊 源時(shí)進(jìn)彳子同步控制。訪問請(qǐng)求首先進(jìn) 等待隊(duì)列,軟件構(gòu)件就緒后,從隊(duì)列中取 如請(qǐng)求逐個(gè)執(zhí)行,鍵用構(gòu)件的多個(gè)線稷之間通過全局共享數(shù)據(jù)或漣息傳避橇毒4 進(jìn) 行信息交換。 第三,對(duì)所開發(fā)的構(gòu)件進(jìn)行組織、分類和存儲(chǔ),對(duì)構(gòu)件的檢索、理解和使用 有著手分藿要的彰褊。因此,要求可愛靂臻籜所形成靜摘釋瘴要麓支持各種可維 護(hù)操作,便于管理員和用戶使用,而且在構(gòu)件遣找時(shí)不僅能夠支持精確匹配、還 斃支持模糊匹配,褒找到程功能、毒亍為上等價(jià)憋或蟈戧躲穩(wěn)件。嗣時(shí)要對(duì)應(yīng)翅論 域有較強(qiáng)的描述能力和較套 的描述精確度。: 旬件庫的組織模式現(xiàn)有主要采用信息 科學(xué)方法,此外逆有人工智能方法和趣文本祭統(tǒng)。 第酒,在掰開發(fā)豹可復(fù)角構(gòu)斡縫或蒔可復(fù)翔構(gòu)俘露中,我薊臺(tái)適構(gòu)件臻,將 北豪郵電大學(xué)碩士研究生論文 其釜戲?qū)嶅?,腰過程控潮語言描述出磊翁孛茲各予豢統(tǒng)瞧怒個(gè)不密怨翹豹聞 題,構(gòu)件的集成目前主婺采用: ( a ) 基于功黯的集成投術(shù):它要求軟件開發(fā)人員必須對(duì)目標(biāo)蓉統(tǒng)進(jìn)行自頂向下 的功髓分解,將系統(tǒng)勢(shì)解為高內(nèi)蒙、低耦會(huì)豹功髓摟塊,然詹校據(jù)番模塊豹葫鼗 需求攝取構(gòu)件,采用予程序調(diào)用和參數(shù)傳遞的方式將構(gòu)件結(jié)合起來。 ( b ) 基予數(shù)據(jù)靜羹或技寒:宅簧隸款髓殲發(fā)大受援據(jù)應(yīng)麓蠲囂匏竣心數(shù)據(jù)終 構(gòu)設(shè)計(jì)個(gè)框槊,然后搬據(jù)框架中各節(jié)點(diǎn)的需求提取構(gòu)件,并進(jìn)行適應(yīng)性修改, 再把構(gòu) 孛逐個(gè)分配到捶掇中豹適強(qiáng)位置。 娥后進(jìn)行系統(tǒng)集成,配置用戶喜愛的潦作界面,通過實(shí)際運(yùn)行,不斷修改, 直到用戶完全滿意為止。一旦該軟件系統(tǒng)形成后,柱開發(fā)同一種類型的應(yīng)用軟件 時(shí)需簧鉸辯僅僅是第霹聆段靜工作,它哥囊靂戶鑫邑兼完成,維護(hù)工捧氌大夭減 輕; 2 2 常用構(gòu)件技術(shù) 2 2 構(gòu)件模鷲 為了蠖均伴使舞者夠攫容爨地理瓣辮件的功就及其屬性,對(duì)構(gòu)件檄個(gè)漆 晰的描述是非常必要的。一般認(rèn)為描述構(gòu)件的壤簡(jiǎn)挺途徑是構(gòu)件模型。比較有代 表性的是t r a c z 提出的3 c 模型、r e b o o t 限e u s eb a s e do no b i e c to r i e n t e d t e c 融i q u e s ) 瓔酲中提出的r e b o o t 模型鞠j e 京大學(xué)提出酌毒鳥搗件模型。速簍 模型均是學(xué)術(shù)界提出的指導(dǎo)性模型,抽象屢次比較離,用戶可以根據(jù)不同的問題 城對(duì)箕進(jìn)毒亍擴(kuò)燧。 3 c 模型的命名主囂來自該模型描述構(gòu)件所采用的3 個(gè)c 特征,即概念 ( c o n c e p t ) 、內(nèi)容( c o m e m ) 和語境( c o n e x 0 。概念用于描述構(gòu)件的功能;構(gòu) 件的概念依據(jù)它的接日說明以及它所執(zhí)行濂作的語義描述表城出來,使用者可以 從概念描述中了解它的功能;內(nèi)豁用來描述構(gòu)件怎樣完成概念所描述的功能,如 羹法、結(jié)構(gòu)等,它是概念的綏億撼述;謠壤或者h(yuǎn) 上下文,主簧矮子籀述掏搏等 其他構(gòu)件的關(guān)策,它是構(gòu)件中最復(fù)雜的特征描述。 髓b o o t 模型是一個(gè)基于刻囂的分類模型,它所考慮靛剡面色括依賴、抽 象、操作及操作對(duì)象,是一個(gè)被稱為是剿嘶中項(xiàng)的聯(lián)合。 北京大學(xué)靜鳥構(gòu)件模型從三個(gè)不同的、相互正交的視角來看待構(gòu)件,每個(gè)具 體的椽件幫是形態(tài)、菇次羊蟊表示椽淺熬三贍空闖中辯一個(gè)點(diǎn)。構(gòu)件形態(tài)被分為婺、 類樹、框架、設(shè)計(jì)模式、體系結(jié)構(gòu)5 種;構(gòu)件層次被分為分析件( 指系統(tǒng)需求規(guī) 麴秘凌斃援約 、設(shè)詩 串( 指系統(tǒng)髂幕箍橡靼設(shè)計(jì)方案) 、編鶿譬 ( 圭 嶷 搴程序沒 l b 京舯電大學(xué)硬研究生論盅 計(jì)語言編制的源代碼構(gòu)件) 、測(cè)試件( 測(cè)試計(jì)劃和測(cè)試案例) 4 個(gè)層次:構(gòu)件的 表示與瑤次有關(guān),不同漤敬的掏籜其肖不秘韻裘示媒介和手鹱,如圖形、復(fù)合文 籀、羹三文、鐨弱、縭程語言、磊標(biāo)褥等。被據(jù)上述穰念,青島構(gòu)件模墅從9 個(gè)方 蕊來攢述構(gòu) 牛,即概念、操饞規(guī)約、接口、類型、實(shí)現(xiàn)轉(zhuǎn)、構(gòu)件復(fù)合、構(gòu)搏牲屢、 構(gòu) 孛注釋、攙傳讖蟯。毒鳥掏件模型是一個(gè)具舞囂起對(duì)象鼴撩豹摸型。 在產(chǎn)業(yè)界,以c o r b a ,c o m 他c o m c o m + 和j 最v a b e a n s 但j b 為代表的基于 分布式對(duì)象技術(shù)的構(gòu)件安現(xiàn)模型疆在向?qū)嶅龌较蚪菟侔l(fā)箍,它們對(duì)構(gòu)許的基本 構(gòu)成及其體系絡(luò)構(gòu)的演億產(chǎn)生著十分蘸要的影響,從而成為實(shí)現(xiàn)級(jí)的主流構(gòu)件模 掣。 2 2 20 m a c o r b a 對(duì)象箭理黛圍0 m g 搿e c tm a g 。越黜g f o u p ) 避一個(gè)鞠環(huán)性的軟件行業(yè) 協(xié)會(huì),主婺宗菖是假進(jìn)囊向?qū)ο蟮姆椒ㄔ陉?孛= 程中姻嶷援,鞋及在委囪對(duì)象匏 軟件工程方法學(xué)黲蘩礎(chǔ)上,為大援模弗哲系綬( 囂敖式芽雩亍計(jì)葵) 軟件躲開發(fā)與 應(yīng)用制定軟件體系黯構(gòu)模型刪通用接口規(guī)范。 o m g 于1 9 9 0 年末提出了一個(gè)對(duì)象管理結(jié)構(gòu)鮑壤準(zhǔn)結(jié)構(gòu)o m a o b e c t m a n a g 。m e 舭a r c m t e c t u ”) 。0 m a 主妥涉及用于面向?qū)ο笳Z言、祭統(tǒng)、數(shù)據(jù)庫及 斑瘸程漤槎架的統(tǒng)一術(shù)語體系,囂愨對(duì)象軟黲蓉統(tǒng)黎糖霖捱架秘蕊予瑟淘對(duì)象技 術(shù)魄分布式鞍譬# 系絞參考模型等。為了穩(wěn)避上述參考穰麓,o m a 撬定了淫個(gè)方 面的標(biāo)準(zhǔn): 對(duì)象請(qǐng)求代理o r b ( o 磷e c tr e q 8 tb r o k e 磚,即關(guān)鍵通訊單元,在不潮的應(yīng) 用程序躕象之間以高度協(xié)同的方式發(fā)遴消息; 對(duì)象模型,幫猿立設(shè)計(jì)的、可移糖的摘象樓霆,可敬與其穩(wěn)符合o m a 蕊范 摶囂商對(duì)簸系統(tǒng)避行通訊: 對(duì)象服務(wù),刺鼴。鵬實(shí)現(xiàn)基本對(duì)象功戡,確定對(duì)象鮑邏轔模避秘物邋存諾 方式: 通用組件,包含了適用于很多應(yīng)用領(lǐng)域的臻本功能,這些功能可以通過符合 0 m a 麓范瀚類摟秘獲得。 o m g 予i 9 9 1 年末掇出的c o 掰j a ,是o m a 參考模型中的o r b 接口技術(shù) 娥范。遮標(biāo)準(zhǔn)攬定了如蜒定義、剁建、諼凌、引用對(duì)象,以強(qiáng)對(duì)象之閩婦侮通 飄?;_(tái)c 0 r b a 娥范鰉o r 囂是典型的中閹俘,競(jìng)許c l i e 躐對(duì)象蠢s e r v e e 對(duì)象 發(fā)出請(qǐng)求。 c 強(qiáng)a 規(guī)魏的纂本緞成如圖所示,主簧包括: 對(duì)象請(qǐng)求代理0 r b 蔗c o r b a 的核心。作為一個(gè)軟件組件,對(duì)象可以通過 i r 北京郵電大學(xué)碩士研究生論文 0 r b 發(fā)出請(qǐng)求并接收響應(yīng)。在c 0 r b a 中,所有的通訊都通過o r b 進(jìn)行,因而 無論一個(gè)對(duì)象是本地的還是遠(yuǎn)程的,對(duì)于與之進(jìn)行通訊的其他對(duì)象來說都是等價(jià) 的。c o r b a 并沒有規(guī)定如何具體實(shí)現(xiàn)一個(gè)o r b ,幾乎每一個(gè)不同的產(chǎn)品都有其 具體的o r b 實(shí)現(xiàn); o r b 內(nèi)核 圖2 1c o r b a 規(guī)范基本組成圖 接口定義語吉i d l ( i n t e i f a c e d e n n i 廿o n l a n g u a g e ) ,是用于描述對(duì)象接口的一 種高級(jí)符號(hào)語言。i d l 不涉及任何接口的實(shí)現(xiàn)細(xì)節(jié),所有c o b r a 系統(tǒng)都根據(jù)i d l 用某種特定語言來實(shí)現(xiàn)接口。c 0 r b a 為c 、c + + 、s m a l l t a l k 和j a 、,a 制定了規(guī) 范,a d a 9 5 和c o b o l 的映射規(guī)范也正在制定中。i d l 描述通常以接口庫 n n i e r f a c er e p o s i t o r y ) 的方式進(jìn)行存貯; 接口庫中包括了所有描述服務(wù)對(duì)象屬性、操作、自定義數(shù)據(jù)類型及異常處理 的i d l 定義: 基本對(duì)象適配器b o a ( b a s l co b j e c ta d a p t e r ) ,描述了o r b 和服務(wù)器端應(yīng)用 程序之問的接口。b o a 負(fù)責(zé)調(diào)度服務(wù)器端應(yīng)用程序維護(hù)的對(duì)象,并與服務(wù)對(duì)象 交換消息; 靜態(tài)請(qǐng)求接口s i i ( s t a t i c i n v o c a t i o n i 】1 t e r f a c e ) 。s i i 假設(shè)在編譯時(shí)刻客戶對(duì)象 能夠明確了解服務(wù)對(duì)象的接口,即客戶與服務(wù)器之間的關(guān)系應(yīng)當(dāng)是可知的、固定 的,服務(wù)接口的任何改變都會(huì)導(dǎo)致軟件系統(tǒng)的重新編譯。s i i 是由i d l 描述的; 動(dòng)態(tài)請(qǐng)求接口d i i ( d y n a m l ch w o c “o ni n t e r f a c e ) 是組與服務(wù)器無關(guān)的通用 接口。與新服務(wù)對(duì)象及其行為相關(guān)的信息可以通過接口庫獲得,客戶程序根據(jù)這 些信息可以在運(yùn)行時(shí)刻動(dòng)態(tài)構(gòu)造請(qǐng)求。d l i 使得開發(fā)智能化即插即用的軟件系統(tǒng) 成為可能,但需要涉及大量c o r b a a p i 調(diào)用,增加了軟件的復(fù)雜度。 總之,c o r b a 提供了一個(gè)集成框架,應(yīng)用程序只要給出用接口定義語占i d l 書寫的界面,就可插入框架,與其他對(duì)蒙協(xié)同工作,為在分布式環(huán)境下實(shí)現(xiàn)不同 應(yīng)用程序即插即用的集成提供了有力支持。 北京郵電大學(xué)碩士研究生論文 2 2 3j a v a b e a n s e j b j a v a b e a n 是基于j a v a 環(huán)境的,可視的、可操縱的、可重用的組件:j a v a b e a n s 組件模型是s u n s o 矗制定的關(guān)于b e a n 的軟件組件標(biāo)準(zhǔn),規(guī)定設(shè)計(jì)所有b e a l l 所依 據(jù)的框架,確保b e a l l 在具備特定功能的同時(shí),還能被可視化軟件構(gòu)造工具所識(shí) 別、操縱,并能將這些設(shè)計(jì)信息保存下來,指導(dǎo)運(yùn)行時(shí)的行為。 作為可視化組件,所有j a v a b e a n 都具備如下特征: 內(nèi)省( i n t m s p e c t i o n ) 機(jī)制,能夠告訴軟件構(gòu)造工具其所能完成的功能,從而允 許軟件構(gòu)造工具在設(shè)計(jì)時(shí)對(duì)其加以操縱; 用戶定制( c u s t o n l i z a t i o n ) 機(jī)制,允許程序員在軟件開發(fā)階段利用軟件構(gòu)造工 具改變b e a n 的外觀和行為方式: 事件( e v e n t ) 機(jī)制,能捕捉事件、引發(fā)事件,并將其所能產(chǎn)生和處理的事件告 知軟件構(gòu)造工具; 特性( p r o p e r t i e s ) 機(jī)制,除在軟件開發(fā)階段支持用戶定制外,還使得軟件系統(tǒng) 能夠在運(yùn)行時(shí)刻對(duì)b e a n 進(jìn)行加工和控制; 保持( p e r s i s t e n c e ) 機(jī)制,保存程序員開發(fā)時(shí)利用構(gòu)造工具對(duì)b e a i l 所做的修改, 并在運(yùn)行時(shí)予以恢復(fù): 設(shè)計(jì)時(shí)刻功能和運(yùn)行時(shí)刻功能分離。 j a v a b e a n 主要用于可視化環(huán)境,為軟件構(gòu)造工具所利用,但也能通過程序接 口直接操縱,j a v a 類庫中提供了相應(yīng)的控制類。 e j b 的全稱是e n t 。r p r i s e j a v a b e a n 。是j a v a 中的商業(yè)應(yīng)用組件技術(shù)。e j b 結(jié) 構(gòu)中的角色e j b 組件結(jié)構(gòu)是基于組件的分布式計(jì)算結(jié)構(gòu),是分布式應(yīng)用系統(tǒng)中 的組件。 一個(gè)完整的基于e j b 的分布式計(jì)算結(jié)構(gòu)由六個(gè)角色組成,這六個(gè)角色可以 由不同的開發(fā)商提供,每個(gè)角色所作的工作必須遵循s u n 公司提供的e j b 規(guī)范 以保證彼此之間的兼容性。這六個(gè)角色分別是e j b 組件開發(fā)者f e n t e r d r i s eb e a n p r o v i d e r ) 、應(yīng)用組合者( a p p l i c a t i o n a s s e m b l e r ) 、部署者( d 。p l o y e r ) 、e j b 服務(wù)器 提供者( e j bs e r v e rp r o v i d e r ) 、e j b 容器提供者( e j bc o n t a i n e rp r o v i d e r l 、系統(tǒng)管 理員f s v s t e ma d m i n i s t r a t o r l 。 e j b 分布式應(yīng)用程序是基于對(duì)象組件模型的,低層的事務(wù)服務(wù)用了a p i 技 術(shù)。e j b 技術(shù)簡(jiǎn)化了用j a 、,a 語言編寫的企業(yè)應(yīng)用系統(tǒng)的開發(fā),配置。e j b 技術(shù) 定義了一組可重用的組件:e n t e r p r i s e b e a l l s 。你可以利用這些組件,象搭積木一 樣的建立你的分布式應(yīng)用程序。當(dāng)你把代碼寫好之后,這些組件就被組合到特定 的文件中去。每個(gè)文件有一個(gè)或多個(gè)e n t e r p r i s eb e a n s ,在加上一些配置參數(shù)。最 靶京鯫電大學(xué)碩士研究生論文 墓,揀些e “捃x s eb e s 教配囂l 一個(gè)裝了e 王b 密器的平囊主??彤a(chǎn)艇夠遙遙 這些b e a n s 的h o m e 接口,定位到某個(gè)b e a n s ,并產(chǎn)生這個(gè)b e a n s 的一個(gè)實(shí)例。遮 樣,客戶就能夠調(diào)用b e a n s 的應(yīng)罔方法和遠(yuǎn)程接口。 2 2 4o l e g 洲d c 洲c o m + 每c o r b a 一樣,m i c r o s o 最的o e ,c o m 是基于分布式對(duì)象模型的開放蠢囂 準(zhǔn),得到多系統(tǒng)軟件開發(fā)商、獨(dú)立軟件開發(fā)( i s v ) 商嗣用戶的支持。 o 糖實(shí)際上是建立在縫籜對(duì)象模型f e o 讎) 蒸穡上酶一縊高屢次技術(shù)。跌 基本中間件功能視圖的角度來說,c o m 與c o r b a 非常相似,同樣支持對(duì)象的 定義、剖建、調(diào)度、引燕及對(duì)象乏越熬通訊,同樣提供了接鼴定義語宣。 但是兩者之間也存在顯著的羲異。例如,c o m 支持由不同程序設(shè)計(jì)語言或 不同編譯器實(shí)現(xiàn)的對(duì)象之間的二避制兼容,班及o 愚茸動(dòng)操作等。 服務(wù)控件管理s c m ( s e r v i e ec o 蚰_ o lm a n a 囂r 1 集中受責(zé)嫂索鼴務(wù)蹲象和在 客戶與服務(wù)器之涮建立信道。當(dāng)客戶向某個(gè)特定的對(duì)象發(fā)出初始化請(qǐng)求時(shí),s c m 羯斷銹含該對(duì)象靜鼴務(wù)程彥是否器經(jīng)運(yùn)季亍,翅否,列透過注囂表查我黢務(wù)翟旁所 在的位置。隨后,客戶端s c m 建立起與服務(wù)器端s c m 連接的r p c 倍道;服務(wù) 器端s c m 也進(jìn)行同樣的處理,并在必要的情況下起動(dòng)服務(wù)稷序。最艨,信道耐 端的s c m 分別將代理程序載入劉客戶進(jìn)程和搬務(wù)器進(jìn)程中。 0 l e c o m 提供了與c o r b ai d l 類似的高級(jí)描述語言。用于定義e o m 概 念上瀚接口,邵一組邏輯稚關(guān)貔撩 乍或方法。 0 l e c o m 結(jié)構(gòu)的另一要素懸自動(dòng)操 乍允許客戶程序動(dòng)態(tài)構(gòu)造請(qǐng)求f 包括 方法名、摺關(guān)參數(shù)的類型幫取馕等) ,并將請(qǐng)隸發(fā)送到遠(yuǎn)端對(duì)象。在c 0 r b a 中。 客戶程序能夠通過接口麾獲取對(duì)象接口的相關(guān)信息;而o l e c 0 m 則避進(jìn)一步。 任何符臺(tái)o l e c o m 規(guī)范的對(duì)象都能自動(dòng)提供其所能支持的接口信息。 2 3 構(gòu)件庫璐論 2 31 構(gòu)件庫系統(tǒng) 構(gòu)件庫系統(tǒng)有效溉綴織和管璐大量的軟件構(gòu)釋,并挺供捐應(yīng)懿工露支持開發(fā) 者在軟件開發(fā)過程中方便地檢索、理解和選取構(gòu)件,提高軟件開發(fā)的效率和質(zhì)量。 褐替簿系統(tǒng)主簧涉盈剝以下一些遺容: ( 1 ) 軟件構(gòu)件的選??; ( 2 ) 軟件構(gòu)件的驗(yàn)進(jìn); 北京螂電大學(xué)碩士垮f 戎生論文 ( 3 ) 軟件構(gòu)件的分類和寢示; 諾) 較件構(gòu)件的a 囂存儲(chǔ): ( 5 ) 軟件鞫徉簿醵檢索; 6 ) 較伴梅髂庫熬管理積維護(hù)。 鍘弛灶b 0 0 事構(gòu)伴摩系統(tǒng),它是垂隧上比較薯名瓣梅傅霹曩統(tǒng),毽耩一個(gè) 存儲(chǔ)可復(fù)用構(gòu)件的構(gòu)件庫和一組產(chǎn)生、認(rèn)證、插入、提取、評(píng)價(jià)和適配可復(fù)用構(gòu) 牛靜工其。 在r l i b o o t 環(huán)境中,采用刻瑟分類( f a c e t ) 方法對(duì)構(gòu)件進(jìn)行分類和激示。 剩面分類方法燕對(duì)攙搏熬分糞使薅篷 裁囂,劐西術(shù)語 對(duì),也稼為描述符 ( d e s e 蠢p 毫。摶) 。它將蔗鍵讕 術(shù)語) 饕于一定蕊語境中,并透過獻(xiàn)特定的菠浹構(gòu) 件本質(zhì)特性的視角( 刻面) 進(jìn)行精確的分類。每個(gè)刻畫輿有一組術(shù)語( 關(guān)鍵詞) , 術(shù)語之聞媳有一般特殊關(guān)系褥形成結(jié)掏化黲術(shù)語空聞,允許術(shù)語之聞宥囝義詞關(guān) 系。術(shù)譖僅限在給定的刻面之中取值( 受控制的詞咒表) 。在術(shù)語空間中游歷可 良幫劈構(gòu)件使鬻者遴瓣穗關(guān)領(lǐng)域,術(shù)語空間可以演變。測(cè)磊遙擇霸術(shù)語窯溯的建 立簌戇予不同構(gòu)轉(zhuǎn)簿靜角色和掏徉縊緞的需求。 又如北大毒鳥工程j b 3 系統(tǒng)作為個(gè)支持復(fù)羼的軟 牛開發(fā)環(huán)境,梅傳盼套散 繁理積檢索是關(guān)鍵,其核心是個(gè)梅髂庫系統(tǒng)j b e l 。辯鳥攙轉(zhuǎn)露系績(jī)爆予對(duì)可 復(fù)用構(gòu)件進(jìn)行描述、管理、存儲(chǔ)和檢索,以滿足基于“構(gòu)件構(gòu)架”復(fù)用的軟 件開發(fā)過程的需要。它以毒鳥構(gòu)件模型為基礎(chǔ),建立膏島構(gòu)梓霹數(shù)據(jù)模型,并與 葵它c(diǎn) a s e 工翼相結(jié)合支持構(gòu)件的生產(chǎn)、描述( 使蔭膏鳥構(gòu)件手苗述語言) 、分類、 存媸、檢索積復(fù)合。 2 3 2 構(gòu)件艨管理系絨的組成及功能 琥有鶼軟孛黿粹露營瑾系統(tǒng)靛幫鼴供對(duì)較僻構(gòu)棒備黌信息酌增、刪、數(shù)、查。 _ 耀且人們往往把工作的重點(diǎn)放在對(duì)予軟構(gòu)件的搜索上。蝴時(shí),在軟掏 牛的皮耀過 鞭中對(duì)蜜黼系統(tǒng)的建摸蠢溺曩搜梭索剿的較構(gòu) 串壘幼巢成系絞聰予軟 譬系綾馳 工程化和產(chǎn)業(yè)化照具有決定性的意義。如果把這兩部分工作包含在軟構(gòu)件庫管理 系統(tǒng)中不儀能對(duì)軟構(gòu)件查詢條件的擒述提供裱藏和幫助,氌能要好發(fā)揮軟構(gòu)件庫 管理系統(tǒng)的作用。因此構(gòu)件簿釣系統(tǒng)設(shè)計(jì)一般分為4 部分,軟件構(gòu)件入庫系統(tǒng)、 邈摸工具系統(tǒng)、軟 孛槐俘瘁維護(hù)系統(tǒng)鞠系統(tǒng)生成器,始黧2 2 贗汞。 鐵軟搦孛# 瘁管璃系絞結(jié)構(gòu)強(qiáng)中哥黻看警,這4 個(gè)子系統(tǒng)熬功能以及輻互之闌 的關(guān)系: ( 1 ) 軟件掏件入庫系統(tǒng):從軟件構(gòu)件描述文件中提取出規(guī)約髂息,要求規(guī)約 耩患全讞地反映較構(gòu)件的番方面信息。然后對(duì)番類規(guī)豹信息進(jìn)行穩(wěn)查后入庫。在 j ! 塞塑魚查蘭堡主塹壅皇笙皇一 軟件構(gòu)件的分類上,采用刻面分類法和聚類分析相結(jié)合的分類方法。 信息工程c 卜l d 構(gòu)件分類與臺(tái)法性植驗(yàn) t ,一l 、 f 軟件構(gòu)件摩) n 模工具毓一7 系統(tǒng)模型1 軟件杓件 庫系統(tǒng) 構(gòu)件庫維護(hù)系統(tǒng) 器 圖2 2 軟件構(gòu)件庫管理系統(tǒng)結(jié)構(gòu) ( 2 1 建模工具系統(tǒng):根據(jù)在工程實(shí)踐中總結(jié)的經(jīng)驗(yàn),在借鑒了i d e f ( 1 d e f 方法是由美國k b s i 提出一系列建模、分析、仿真方法的統(tǒng)稱) 系列方法、u m l 、 面向?qū)ο蟮母黝愒O(shè)計(jì)模式等方法的基礎(chǔ)上,形成了一套系統(tǒng)建模方法,并且提供 從企業(yè)業(yè)務(wù)邏輯描述到軟構(gòu)件的劃分、軟構(gòu)件詳細(xì)信息描述全過程所需的各個(gè)模 型的建模工具。利用這套建模方法可以從領(lǐng)域分析的角度分析出每個(gè)構(gòu)件的任 務(wù)、查詢條件以及構(gòu)件之間的連接關(guān)系。 ( 3 1 軟件構(gòu)件庫維護(hù)系統(tǒng):包括在軟件構(gòu)件庫中檢索、修改、刪除軟件構(gòu)件, 北京郵電大學(xué)順士研究生論文 對(duì)軟構(gòu)件的各類信息乃至于編碼的修改,對(duì)器類軟構(gòu)件的數(shù)量、使用頻辮以及軟 傳成熟度的統(tǒng)計(jì)。在軟構(gòu)髂鮑檢索方瑤,不僅包括基于刻囂分裝斡搜索冀法,囂 且還包括基于語義識(shí)別的搜索算法,這樣可以實(shí)現(xiàn)迸步搜索軟構(gòu)件描述文檔的 功能。 f 4 ) 系統(tǒng)生或器:完成將檢索粥的較鋅構(gòu)件按照建模系統(tǒng)提供靜鞠互差系或 軟件構(gòu)件的部署文件中的信息集成為一個(gè)新的軟件構(gòu)件或一個(gè)完整的系統(tǒng)的功 能。可以攘援霰要塞動(dòng)或半壘動(dòng)建寵殘較傳搦 孛的鍘純、類型轉(zhuǎn)換等改裝工 乍, 以滿足系統(tǒng)的需臻。改裝盾的軟件構(gòu)件根據(jù)系統(tǒng)模型提供的相曩關(guān)系既可組裝成 系統(tǒng)。 2 33 構(gòu)件庫中構(gòu)件的襄示 構(gòu)件在構(gòu)件庫申的表示分為兩種:構(gòu)件功能信息表示和構(gòu)件描述信息表示。 前者關(guān)系到如何使用構(gòu)件和構(gòu)件的可重用性,后者關(guān)系到如何霄效地組織、管理 攜鋒。一般遮掏靜靛功l 信憊定義兔掏蔣棒,構(gòu)件绱籀述信息定義為弦遺體。露 此,構(gòu)件組成表示為: := 構(gòu)件庫中的構(gòu)件是經(jīng)過分解和優(yōu)化的一黲最基本的功能模塊,般由若干個(gè) 操作步驟和數(shù)據(jù)纈成。一般將構(gòu)件體分作三個(gè)部分,用三元式襲示為: c 構(gòu)件俸:一 程序頊,數(shù)據(jù)項(xiàng),構(gòu)件流稔頸, 程序項(xiàng):是構(gòu)件的可重用部分,它是用某種程序員語言編寫的程序源代碼和 編譯矗的二進(jìn)剩文捧。 數(shù)據(jù)項(xiàng):是構(gòu)件要處理的數(shù)據(jù)的表示。數(shù)據(jù)項(xiàng)中每一變量與程序項(xiàng)中每個(gè)被 處理的數(shù)據(jù)按出現(xiàn)的先后順序一一對(duì)應(yīng)。數(shù)據(jù)項(xiàng)的橡成為: :,= 數(shù)據(jù)項(xiàng)定義,數(shù)措變量名 構(gòu)件流程項(xiàng):是構(gòu)件體程序項(xiàng)的處理流程。梅件的設(shè)計(jì)者將構(gòu)件的處理流程 嗣文俘韻形式記蒙下來形戒穩(wěn) 爭(zhēng)藐穗項(xiàng)。 構(gòu)件描述體是構(gòu)件的管理信息。構(gòu)件庫能西方便有效地組織、管理和使用在 根大程度上依賴予麴傳描述震量鮑好棼。毒奄傳庫中橡 串撻述髂簇b n f 形式搖述 如下: 構(gòu)件描述體:;( 構(gòu)件名 ) ( 構(gòu)件操作類型 ) ( 輸入類型 ) ( 構(gòu)件狀卷 t ) ( 遙鞠語言 ) ( 構(gòu) 造同期 ) ( 最詹修改日期 ) ( 子構(gòu)件鰓 ) ( 父構(gòu)件集 ) ( 構(gòu)造者 f i f 2 ) ) e 【2 l 】 定義2 4 刻面分類信息s 是個(gè)三元組,記為黔 ,其中m 是刻麗 分類模式麴名鍵rn 為m 孛一個(gè)刻囂艴名稼,v 是該劐面的一個(gè)術(shù)器?!? l 】 ,_ l5 北京郵電太學(xué)碩士耕咒生論文 構(gòu)件一般由分類信息、構(gòu)件屬性、構(gòu)件關(guān)系、構(gòu)件規(guī)約和構(gòu)件實(shí)體組成。為 了表達(dá)式的簡(jiǎn)明,僅考慮捻卡串和刻強(qiáng)分類模式,繪繼襁傳鮑定義如下: 定義2 5 構(gòu)件c 是一個(gè)二元組,記為c 一 ,其中c 懸構(gòu)件的槊合,m 是一個(gè)剿蕊分類模式,c 秘m 滿足默下條 擘:v e ,s ( 設(shè)梅搏e d ,s ,分類 信息s 2 m ,n ,v t 則s ( s c ( c = m = 刻面m 的名稱) ,即庫中構(gòu)件只能使用 本庫的刻面分類模式分類) ) 。 2 35 刻面分類的基系模型 當(dāng)利用刻面純方法對(duì)構(gòu)件進(jìn)行分類后,結(jié)合構(gòu)件在數(shù)據(jù)庫中規(guī)約化的表示形 式,就可以得到刻面分類的關(guān)系模型。 r 廠一, 射面智蔣ji 射面描述 一一7 l 舊k l 叉il 7 廠i r 【 一、。坦k 、;,;【型 | 目燜卜 iy 。一。v | 爨2 一載兩分類酶關(guān)系模型 l 描述信息 i 管理信息| 重用屬性 i 褥件實(shí)體j 麓謄螂電太學(xué)鹺士碟競(jìng)生論盤 第三寒流媒體領(lǐng)域構(gòu)件化羿發(fā)研究 3 1 流媒體關(guān)鍵技術(shù) 3 ,1 。f 流媒體拽術(shù)簡(jiǎn)介 用戶需要種突破帶寬限剿鮑薪的德慰傳輸方式,接褥網(wǎng)絡(luò)中的多媒體能夠 實(shí)時(shí)播救,于是流媒體技術(shù)應(yīng)遙而生。流媒體技術(shù)的產(chǎn)生使得i m e m e t 中多媒體 的實(shí)時(shí)播放成為現(xiàn)實(shí),使簿在窄帶豆聯(lián)網(wǎng)中傳播多媒體信息藏為可髓。 所謂流媒體技術(shù)( 或稱流式媒體技術(shù)) 就是把連續(xù)的影像和聲啻經(jīng)隘縮懿理 螽羧到蠲終瓣務(wù)器上,讓測(cè)羹囂邊下載一邊嵌蘑牧輯,魏不蒜要黧巾多媒體文 件下戴完成就可以即時(shí)收看的技零。在采蠲流式方式傳轅的系凌中,聲音、影像 或動(dòng)圃等多媒體信息出窘視頻服務(wù)器向用戶計(jì)算機(jī)連續(xù)、實(shí)時(shí)傳送,用戶只需經(jīng) 過幾秒或十幾穢的啟動(dòng)延時(shí)即可進(jìn)行觀贛。當(dāng)多媒體文件在客戶機(jī)上播放時(shí),文 件的剩余部分將在后靜從服務(wù)器內(nèi)繼續(xù)下載。與單純的下裁方式相眈,流式傳輸 不僅使窟動(dòng)楚時(shí)袋十傣、舀倍蟪縮短,蕊盈不需要太大豹緩存容量。流斌黃埝避 免了用戶必領(lǐng)等待整個(gè)文件全部下載君t :_ | n 胄觀看的缺點(diǎn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 家用紡織品的產(chǎn)品差異化與競(jìng)爭(zhēng)優(yōu)勢(shì)考核試卷
- 智能車載設(shè)備的故障預(yù)測(cè)考核試卷
- 工藝美術(shù)品的商業(yè)模式創(chuàng)新考核試卷
- 專業(yè)技術(shù)培訓(xùn)引領(lǐng)行業(yè)變革考核試卷
- 家居裝飾裝修中的施工質(zhì)量控制考核試卷
- 城市軌道交通的旅客負(fù)擔(dān)與收入分析考核試卷
- 技術(shù)標(biāo)準(zhǔn)制定考核試卷
- 工業(yè)控制計(jì)算機(jī)在電力系統(tǒng)的應(yīng)用考核試卷
- 學(xué)校租賃土地合同范本
- 公司并購簽約合同范本
- 2025年合肥職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫完整版
- 人教版(2024)六年級(jí)全一冊(cè) 第16課 智能種植初探秘
- 初中生物實(shí)驗(yàn)?zāi)夸?蘇教版)
- 2019年四川省綿陽市中考化學(xué)試卷
- 中國風(fēng)青花瓷陶瓷文化宣傳PPT模板
- 美麗鄉(xiāng)村規(guī)劃設(shè)計(jì)技術(shù)導(dǎo)則
- 經(jīng)銷商準(zhǔn)入及評(píng)定表格vr
- SF-36量表(簡(jiǎn)明健康狀況調(diào)查表)
- 上崗證WORD模板
- 職業(yè)技能鑒定質(zhì)量督導(dǎo)報(bào)告
- 鈑金k因子和折彎扣除參照表
評(píng)論
0/150
提交評(píng)論