一種版本兼容的判斷方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及計(jì)算機(jī)領(lǐng)域中的嵌入式軟件組件開發(fā)技術(shù),尤其設(shè)及一種版本兼容的 判斷方法及裝置。
【背景技術(shù)】
[0002] 在通用的平臺(tái)化軟件生命周期內(nèi),軟件面向的應(yīng)用領(lǐng)域非常復(fù)雜多變,因此,需要 及時(shí)的對(duì)軟件版本進(jìn)行相應(yīng)的升級(jí)更新,W適應(yīng)軟件缺陷修復(fù)、軟件功能增強(qiáng)、軟件性能優(yōu) 化及軟件運(yùn)行環(huán)境變化等需求。
[0003] 現(xiàn)有技術(shù)中,采用基于組件的軟件開發(fā)方法進(jìn)行的軟件開發(fā)。其中,一款軟件由多 個(gè)軟件組件組成,每個(gè)軟件組件都有自己的版本,例如,嵌入式軟件和上位機(jī)軟件的軟件組 件可W包括=類:源碼組件(編譯時(shí)組件)、二進(jìn)制代碼組件(鏈接時(shí)組件)、可執(zhí)行代碼組 件(運(yùn)行時(shí)組件)。當(dāng)軟件中有某個(gè)軟件組件的新版本集成發(fā)布時(shí),軟件組件系統(tǒng)再對(duì)該軟 件組件單獨(dú)進(jìn)行升級(jí)、或者軟件組件系統(tǒng)對(duì)該一款軟件的所有軟件組件進(jìn)行升級(jí),W完成 對(duì)該軟件組件的升級(jí)。
[0004] 然而,在平臺(tái)化、組件化、模塊化架構(gòu)的開發(fā)模式下,采用現(xiàn)有技術(shù)的軟件組件的 升級(jí)方式時(shí),個(gè)別軟件組件可W單獨(dú)進(jìn)行升級(jí),但是當(dāng)個(gè)別軟件組件跨版本進(jìn)行升級(jí)時(shí),可 能會(huì)遇到新版本的軟件組件升級(jí)后,與軟件組件系統(tǒng)中其它不用升級(jí)的軟件組件存在不兼 容的問題,使得包括上述新版本的軟件組件和其它不用升級(jí)的軟件組件的軟件組件系統(tǒng)不 能正常運(yùn)行,從而導(dǎo)致軟件組件系統(tǒng)的不穩(wěn)定。因此,在個(gè)別軟件組件可W單獨(dú)進(jìn)行升級(jí) 時(shí),軟件組件系統(tǒng)中軟件組件間的兼容性的判斷成為解決上述問題的關(guān)鍵。
【發(fā)明內(nèi)容】
[0005] 為解決上述技術(shù)問題,本發(fā)明實(shí)施例期望提供一種版本兼容的判斷方法及裝置, 能夠判斷軟件組件間的版本兼容,保證軟件組件系統(tǒng)升級(jí)的穩(wěn)定性。
[0006] 本發(fā)明的技術(shù)方案是該樣實(shí)現(xiàn)的:
[0007] 本發(fā)明實(shí)施例提供一種版本兼容的判斷方法,所述方法包括:
[000引獲取軟件組件系統(tǒng)的集成配置文件,所述集成配置文件包括所述軟件組件系統(tǒng)進(jìn) 行升級(jí)時(shí)的N個(gè)軟件組件的配置信息,所述N個(gè)軟件組件中包括至少一個(gè)升級(jí)的軟件組件, 其中,N> 1 ;
[0009] 獲取所述N個(gè)軟件組件的版本描述文件;
[0010] 根據(jù)所述N個(gè)軟件組件中的每個(gè)軟件組件的版本描述文件,判斷所述每個(gè)軟件組 件任意版本是否兼容,確定進(jìn)行所述軟件組件系統(tǒng)的穩(wěn)定升級(jí)。
[0011] 在上述方案中,所述每個(gè)軟件組件的版本描述文件包括;每個(gè)軟件組件與所述N 個(gè)軟件組件中除自身W外的其它N-1個(gè)軟件組件之間的依賴關(guān)系;
[0012] 相應(yīng)的,所述根據(jù)所述N個(gè)軟件組件中的每個(gè)軟件組件的版本描述文件,判斷所 述每個(gè)軟件組件任意版本是否兼容,包括:
[0013] 根據(jù)每個(gè)軟件組件與所述其它N-1個(gè)軟件組件之間的依賴關(guān)系,確定所述每個(gè)軟 件組件被依賴的版本;
[0014] 判斷所述每個(gè)軟件組件被依賴的版本是否兼容。
[0015] 在上述方案中,所述N個(gè)軟件組件中的任意一個(gè)軟件組件的版本描述文件還包 括;所述任意一個(gè)軟件組件的當(dāng)前版本信息、所述任意一個(gè)軟件組件的前一個(gè)版本信息、所 述任意一個(gè)軟件組件的當(dāng)前版本信息與所述任意一個(gè)軟件組件的前一個(gè)版本信息的兼容 標(biāo)記,W及所述任意一個(gè)軟件組件的歷史版本信息;
[0016] 相應(yīng)的,判斷所述任意一個(gè)軟件組件被依賴的版本是否兼容的方法,包括:
[0017] 根據(jù)所述任意一個(gè)軟件組件的當(dāng)前版本信息、所述任意一個(gè)軟件組件的前一個(gè)版 本信息、所述任意一個(gè)軟件組件的當(dāng)前版本信息與所述任意一個(gè)軟件組件的前一個(gè)版本信 息的兼容標(biāo)記,W及所述任意一個(gè)軟件組件的歷史版本信息,生成所述任意一個(gè)軟件組件 的任意版本之間的版本樹;
[001引根據(jù)所述任意一個(gè)軟件組件的任意版本之間的版本樹,判斷所述任意一個(gè)軟件組 件被依賴的版本是否兼容。
[0019] 在上述方案中,所述根據(jù)所述任意一個(gè)軟件組件的任意版本之間的版本樹,判斷 所述任意一個(gè)軟件組件被依賴的版本是否兼容,包括:
[0020] 在所述任意一個(gè)軟件組件的任意版本之間的版本樹中,判斷所述任意一個(gè)軟件組 件被依賴的任意兩個(gè)版本在可兼容的分支上時(shí),所述任意一個(gè)軟件組件被依賴的任意兩個(gè) 版本兼容。
[0021] 在上述方案中,所述任意一個(gè)軟件組件被依賴的任意兩個(gè)版本兼容之后,所述方 法還包括:
[0022] 所述N個(gè)軟件組件中的所述每個(gè)軟件組件被依賴的任意兩個(gè)版本兼容時(shí),確定所 述軟件組件系統(tǒng)的版本兼容。
[0023] 本發(fā)明實(shí)施例提供一種版本兼容的判斷裝置,所述裝置包括:
[0024] 獲取單元,用于獲取軟件組件系統(tǒng)的集成配置文件,所述集成配置文件包括所述 軟件組件系統(tǒng)進(jìn)行升級(jí)時(shí)的N個(gè)軟件組件的配置信息,所述N個(gè)軟件組件中包括至少一個(gè) 升級(jí)的軟件組件,其中,1 ;
[0025] 所述獲取單元,還用于獲取所述N個(gè)軟件組件的版本描述文件;
[0026] 判斷單元,用于根據(jù)所述獲取單元獲取的所述N個(gè)軟件組件中的每個(gè)軟件組件的 版本描述文件,判斷所述每個(gè)軟件組件任意版本是否兼容,確定進(jìn)行所述軟件組件系統(tǒng)的 穩(wěn)定升級(jí)。
[0027] 在上述方案中,所述獲取單元獲取的所述每個(gè)軟件組件的版本描述文件包括:每 個(gè)軟件組件與所述N個(gè)軟件組件中除自身W外的其它N-1個(gè)軟件組件之間的依賴關(guān)系;所 述版本兼容的判斷裝置,還包括;確定單元;
[002引所述確定單元,用于根據(jù)所述獲取單元獲取的每個(gè)軟件組件與所述其它N-1個(gè)軟 件組件之間的依賴關(guān)系,確定所述每個(gè)軟件組件被依賴的版本;
[0029] 所述判斷單元,具體用于判斷所述確定單元確定的所述每個(gè)軟件組件被依賴的版 本是否兼谷。
[0030] 在上述方案中,所述獲取單元獲取的所述N個(gè)軟件組件中的任意一個(gè)軟件組件的 版本描述文件還包括:所述任意一個(gè)軟件組件的當(dāng)前版本信息、所述任意一個(gè)軟件組件的 前一個(gè)版本信息、所述任意一個(gè)軟件組件的當(dāng)前版本信息與所述任意一個(gè)軟件組件的前一 個(gè)版本信息的兼容標(biāo)記,W及所述任意一個(gè)軟件組件的歷史版本信息;所述版本兼容的判 斷裝置還包括:生成單元;
[0031] 生成單元,用于根據(jù)所述獲取單元獲取的所述任意一個(gè)軟件組件的當(dāng)前版本信 息、所述任意一個(gè)軟件組件的前一個(gè)版本信息、所述任意一個(gè)軟件組件的當(dāng)前版本信息與 所述任意一個(gè)軟件組件的前一個(gè)版本信息的兼容標(biāo)記,W及所述任意一個(gè)軟件組件的歷史 版本信息,生成所述任意一個(gè)軟件組件的任意版本之間的版本樹;
[0032] 所述判斷單元,還具體用于根據(jù)所述生成單元生成的所述任意一個(gè)軟件組件的任 意版本之間的版本樹,判斷所述確定單元確定的所述任意一個(gè)軟件組件被依賴的版本是否 兼容。
[0033] 在上述方案中,判斷單元,還具體用于在所述生成單元生成的所述任意一個(gè)軟件 組件的任意版本之間的版本樹中,所述任意一個(gè)軟件組件被依賴的任意兩個(gè)版本在可兼容 的分支上時(shí),所述任意一個(gè)軟件組件被依賴的任意兩個(gè)版本兼容。
[0034] 在上述方案中,所述確定單元,還用于所述判斷單元判斷所述任意一個(gè)軟件組件 被依賴的任意兩個(gè)版本兼容之后,所述判斷單元判斷所述N個(gè)軟件組件中的所述每個(gè)軟件 組件被依賴的任意兩個(gè)版本兼容時(shí),確定所述軟件組件系統(tǒng)的版本兼容。
[0035] 本發(fā)明實(shí)施例提供了一種版本兼容的判斷方法及裝置,版本兼容的判斷裝置獲取 軟件組件系統(tǒng)的集成配置文件,集成配置文件包括所述軟件組件系統(tǒng)進(jìn)行升級(jí)時(shí)的N個(gè)軟 件組件的配置信息,N個(gè)軟件組件中包括至少一個(gè)升級(jí)的軟件組件;獲取N個(gè)軟件組件的版 本描述文件;根據(jù)N個(gè)軟件組件中每個(gè)軟件組件的版本描述文件,判斷每個(gè)軟件組件任意 版本是否兼容,W確定進(jìn)行軟件組件系統(tǒng)的穩(wěn)定升級(jí)。采用上述技術(shù)實(shí)現(xiàn)方案,由于版本兼 容的判斷裝置在軟件組件系統(tǒng)中有新版本的軟件組件進(jìn)行升級(jí)時(shí),先判斷軟件組件系統(tǒng)中 的每個(gè)軟件組件任意版本是否兼容,進(jìn)而判斷出每個(gè)軟件組件被依賴的版本是否兼容,從 而可W確定該軟件系統(tǒng)在使用升級(jí)的軟件組件時(shí)的版本是否兼容,因此,通過版本兼容的 判斷裝置完成兼容性判斷,可W使得軟件組件系統(tǒng)在版本兼容時(shí)進(jìn)行單個(gè)軟件組件的版本 升級(jí),從而保證了軟件組件系統(tǒng)升級(jí)的穩(wěn)定性。