形式化方法對(duì)構(gòu)件庫(kù)管理系統(tǒng)支持的探討技術(shù)分類(lèi): 可編程器件 | 2007-04-17
|
(3)構(gòu)件實(shí)現(xiàn)的模型用于幫助人們決定如何用某種程序設(shè)計(jì)語(yǔ)言或以某種可執(zhí)行單元的形式來(lái)實(shí)現(xiàn)構(gòu)件。有代表性的實(shí)現(xiàn)級(jí)工業(yè)標(biāo)準(zhǔn)構(gòu)件模型有CORBA、DCOM/COM和Enterpise JavaBean,三足鼎立構(gòu)成競(jìng)爭(zhēng)與互操作并存的格局,工業(yè)構(gòu)件模型最大的缺點(diǎn)在于其缺乏對(duì)構(gòu)件語(yǔ)義的深入支持。
綜合考慮現(xiàn)有的構(gòu)件模型,可得出以下結(jié)論:
(1)現(xiàn)有的面向構(gòu)件描述和分類(lèi)的模型缺乏對(duì)構(gòu)件語(yǔ)義特別是構(gòu)件領(lǐng)域特征的語(yǔ)義的描述,而這些正是理解構(gòu)件基于領(lǐng)域的復(fù)用價(jià)值的關(guān)鍵。
(2)現(xiàn)有的面向構(gòu)件規(guī)約和組裝的模型缺乏對(duì)構(gòu)件演化的支持,對(duì)構(gòu)件組裝的支持機(jī)制也未達(dá)到標(biāo)準(zhǔn)化。
(3)現(xiàn)有的構(gòu)件模型都很少涉及有關(guān)構(gòu)件復(fù)用和構(gòu)件管理的信息,比如構(gòu)件的復(fù)用度等。
(4)在構(gòu)件庫(kù)系統(tǒng)中,構(gòu)件模型的應(yīng)用是既面向構(gòu)件描述和分類(lèi)又面向構(gòu)件規(guī)約和組裝的,而目前關(guān)注如此多方面的構(gòu)件模型還不多見(jiàn)。
2 對(duì)構(gòu)件庫(kù)中構(gòu)件模型的改進(jìn)
人們對(duì)構(gòu)件庫(kù)中構(gòu)件的操作包括入庫(kù)、檢索、學(xué)習(xí)、組裝和演化等,在對(duì)構(gòu)件進(jìn)行這些操作時(shí),變換支持其實(shí)現(xiàn)的底層構(gòu)件模型是不現(xiàn)實(shí)的。所以,筆者試圖探求一種構(gòu)件描述模型,并讓它同時(shí)支持構(gòu)件的語(yǔ)義檢索、自動(dòng)化組裝、以及對(duì)演化的自動(dòng)化支持等。
2.1 構(gòu)件模型所要描述的信息
在對(duì)構(gòu)件進(jìn)行描述之前,必須先明確有哪些信息需要被構(gòu)件模型來(lái)描述。而要明確構(gòu)件模型中到底需要記錄那些信息,就應(yīng)該看構(gòu)件庫(kù)中圍繞構(gòu)件都做了哪些活動(dòng)。經(jīng)過(guò)分析,構(gòu)件庫(kù)中分角色對(duì)構(gòu)件的操作有:
(1)構(gòu)件發(fā)布者:注冊(cè)構(gòu)件描述、分類(lèi)信息;注冊(cè)構(gòu)件實(shí)體信息(離線構(gòu)件);注冊(cè)構(gòu)件接口信息(在線構(gòu)件)。
(2)軟件開(kāi)發(fā)人員:查詢(xún);下載構(gòu)件實(shí)體(離線構(gòu)件);獲取構(gòu)件接口信息(在線構(gòu)件);學(xué)習(xí)構(gòu)件的功用和構(gòu)件的用法等信息;應(yīng)用構(gòu)件進(jìn)行應(yīng)用系統(tǒng)組裝;對(duì)不適用的構(gòu)件進(jìn)行演化。
為了支持這些活動(dòng),構(gòu)件模型中應(yīng)該具有下列信息:
(1)面向構(gòu)件描述和分類(lèi)的信息
所有對(duì)用戶(hù)查找、理解、選擇、適應(yīng)性修改以及使用構(gòu)件有幫助的信息;
所有對(duì)構(gòu)件庫(kù)管理者分類(lèi)和管理構(gòu)件及構(gòu)件間關(guān)系有幫助的信息;
構(gòu)件的其他屬性,包括:生產(chǎn)者、版本、使用者、反饋意見(jiàn)、知識(shí)產(chǎn)權(quán)控制等。
(2)面向構(gòu)件規(guī)約和組裝的信息
構(gòu)件對(duì)外提供的功能;
構(gòu)件需要外界為它提供的功能;
構(gòu)件被用于什么語(yǔ)境;
支持構(gòu)件演化的信息。
綜上所述,不同的角色在構(gòu)件庫(kù)中對(duì)構(gòu)件的操作也不同。所以,對(duì)構(gòu)件的信息需求也不同。在一般情況下,可以認(rèn)為在企業(yè)里構(gòu)件的入庫(kù)者就是構(gòu)件的生產(chǎn)者,他們應(yīng)該將主要的構(gòu)件描述信息在構(gòu)件入庫(kù)時(shí)錄入進(jìn)去;而構(gòu)件使用者對(duì)構(gòu)件的行為有查找、學(xué)習(xí)、組裝和演化等,并且在構(gòu)件使用者應(yīng)用構(gòu)件庫(kù)進(jìn)行軟件開(kāi)發(fā)時(shí),在不同時(shí)期所關(guān)注的構(gòu)件信息也是不同的。所以,應(yīng)該分階段、分層次地把構(gòu)件的信息展現(xiàn)給構(gòu)件使用者。在這里,將按照查找、學(xué)習(xí)、組裝與演化三個(gè)層次來(lái)展現(xiàn)構(gòu)件的性質(zhì)。
2.2 構(gòu)件模型
構(gòu)件(Component)是指語(yǔ)義完整、語(yǔ)法正確和有可復(fù)用價(jià)值的單位軟件,是軟件復(fù)用過(guò)程中可以盟確辨識(shí)的系統(tǒng)構(gòu)成。結(jié)構(gòu)上,它是基于檢索部分、基于學(xué)習(xí)部分和基于組裝和演化部分的復(fù)合體。
|
來(lái)自: 西北小子 > 《我的圖書(shū)館》