基于復(fù)用的多級(jí)資源庫(kù)ARMS平臺(tái)的應(yīng)用
摘 要: 運(yùn)用了構(gòu)建ARMS(Asset Repository Management System)平臺(tái)的重要基礎(chǔ)設(shè)施——多級(jí)資源庫(kù),為企業(yè)級(jí)資源的積累、復(fù)用、錘煉提供了基本的工具保障。介紹了軟件復(fù)用技術(shù),提出了一種能快速進(jìn)行軟件開(kāi)發(fā)的新型解決方案。詳細(xì)分析了多級(jí)資源庫(kù)的體系結(jié)構(gòu)、ARMS系統(tǒng)平臺(tái)的功能及相關(guān)技術(shù),從資源開(kāi)發(fā)、版本發(fā)布、反饋處理等方面研究了ARMS系統(tǒng)平臺(tái)的應(yīng)用。實(shí)踐表明,多級(jí)資源庫(kù)ARMS平臺(tái)的研究與開(kāi)發(fā),有效地解決了軟件資產(chǎn)的復(fù)用和安全管理問(wèn)題,提高軟件復(fù)用率,加快軟件開(kāi)發(fā)速度。給出了實(shí)踐項(xiàng)目中ARMS平臺(tái)軟件開(kāi)發(fā)的流程圖。
關(guān)鍵詞: ARMS平臺(tái);多級(jí)資源庫(kù);復(fù)用;軟件復(fù)用技術(shù);資源開(kāi)發(fā)
ARMS(Asset Repository Management System)是一個(gè)資源庫(kù)管理系統(tǒng)平臺(tái),通過(guò)這個(gè)平臺(tái)對(duì)資源庫(kù)中的資源進(jìn)行有效地管理和使用,提高了企業(yè)開(kāi)發(fā)人員的工作效率,改善了用戶的使用效率。ARMS這一平臺(tái)提供了軟件開(kāi)發(fā)的綜合解決方案,能夠提高開(kāi)發(fā)效率,簡(jiǎn)化繁瑣流程,保證產(chǎn)品的穩(wěn)定性、可用性。新的軟件開(kāi)發(fā)過(guò)程模型的各個(gè)階段都是圍繞著可復(fù)用軟件資源實(shí)施的,因此合理而有效地使用資源庫(kù)是軟件資產(chǎn)復(fù)用成功的關(guān)鍵。
軟件復(fù)用技術(shù)是軟件工程領(lǐng)域的一個(gè)研究熱點(diǎn)。復(fù)用概念的第一次引入是在1968年NATO軟件工程會(huì)議上,Mcllroy的論文“大量生產(chǎn)的軟件構(gòu)件”中[1]。隨著復(fù)用實(shí)踐的深入,將會(huì)積累大量自主開(kāi)發(fā)的資源、購(gòu)買的商業(yè)資源和其他組織開(kāi)發(fā)的資源,這些可復(fù)用資源構(gòu)成了龐大的企業(yè)資產(chǎn),而資源庫(kù)作為分類和管理軟件資產(chǎn)的基礎(chǔ)設(shè)施就變得十分重要了。在資源庫(kù)的支持下,直接使用已有的合格的資源開(kāi)發(fā)應(yīng)用系統(tǒng),避免了對(duì)資源的重復(fù)開(kāi)發(fā),從而提高軟件開(kāi)發(fā)效率和軟件質(zhì)量。軟件資源庫(kù)作為管理軟件資源及促進(jìn)軟件復(fù)用的核心機(jī)制,將基于復(fù)用的開(kāi)發(fā)和面向復(fù)用的開(kāi)發(fā)過(guò)程與工具集成在一個(gè)統(tǒng)一的框架中,當(dāng)前軟件界對(duì)可復(fù)用資源庫(kù)及其相關(guān)問(wèn)題進(jìn)行了深入研究,并取得不少成果[2]。
本文為了有效地解決軟件資產(chǎn)的復(fù)用和安全管理問(wèn)題,采用多級(jí)資源庫(kù),避免了獨(dú)立庫(kù)綜合性差的缺陷,對(duì)于深層次的科學(xué)研究,它所提供的不是單一的信息,而是一個(gè)系統(tǒng)的立體資源、信息群。
1 軟件復(fù)用
1.1 軟件復(fù)用技術(shù)
軟件復(fù)用是指利用現(xiàn)有的軟件資源來(lái)構(gòu)造新的軟件系統(tǒng)。該軟件成分可能是已有的資源,也可能是專門開(kāi)發(fā)設(shè)計(jì)的可復(fù)用的軟件資源。其中,可復(fù)用的現(xiàn)有軟件成分是軟件復(fù)用技術(shù)的核心。復(fù)用成分的獲取、管理和利用是構(gòu)成軟件復(fù)用技術(shù)的三個(gè)基本要素[3]。
1.2 軟件復(fù)用的優(yōu)點(diǎn)[4]
實(shí)踐證明,軟件復(fù)用可以有效提高軟件開(kāi)發(fā)效率和軟件質(zhì)量,是解決“軟件危機(jī)”的一條比較切實(shí)可行的途徑。軟件復(fù)用的優(yōu)點(diǎn)可歸納為以下六個(gè)方面:
(1)提高軟件生產(chǎn)率:軟件復(fù)用最明顯的好處在于提高生產(chǎn)率,減少開(kāi)發(fā)代價(jià)。生產(chǎn)率的提高不僅體現(xiàn)在代碼開(kāi)發(fā)階段,同樣適用于分析、設(shè)計(jì)及測(cè)試等其他階段。
(2)提高軟件質(zhì)量:使用高度優(yōu)化、在實(shí)踐中經(jīng)受過(guò)檢驗(yàn)的可復(fù)用構(gòu)架、資源構(gòu)造系統(tǒng),可以提高系統(tǒng)的性能和可靠性。
(3)減少系統(tǒng)維護(hù)量:使用優(yōu)化、檢驗(yàn)過(guò)的資源,避免了很多可能發(fā)生的錯(cuò)誤;而多個(gè)系統(tǒng)間資源的重復(fù)使用,同時(shí)減少了系統(tǒng)維護(hù)量。
(4)提高互操作性:軟件復(fù)用的更為專業(yè)化的好處在于提高了系統(tǒng)間的互操作性。相同的構(gòu)架、接口可以有效地實(shí)現(xiàn)系統(tǒng)間的互操作。
(5)支持快速原型:利用可復(fù)用資源庫(kù)可以快速有效地構(gòu)造應(yīng)用系統(tǒng)的原型,以獲得用戶對(duì)系統(tǒng)功能的反饋,縮短系統(tǒng)的開(kāi)發(fā)周期。
(6)減少培訓(xùn)開(kāi)銷:使用相同的構(gòu)架、資源構(gòu)造和實(shí)施不同的系統(tǒng),可以使開(kāi)發(fā)和維護(hù)人員減少對(duì)不同技術(shù)所需要的培訓(xùn)。
2 多級(jí)資源庫(kù)及ARMS系統(tǒng)平臺(tái)
2.1 多級(jí)資源庫(kù)的體系結(jié)構(gòu)
本文采用多級(jí)資源庫(kù),為方便對(duì)資源庫(kù)中的資源進(jìn)行管理和使用,必須采用合理的權(quán)限管理方案,即采用多級(jí)資源庫(kù)的三級(jí)權(quán)限管理模式:對(duì)資源設(shè)置檢索、使用(下載執(zhí)行碼和使用文檔)、獲取源碼三級(jí)權(quán)限。通過(guò)使用合理的權(quán)限管理模式,更好地解決了軟件資產(chǎn)復(fù)用的問(wèn)題,保證了資源庫(kù)中軟件資產(chǎn)的安全管理。整個(gè)資源庫(kù)體系分為公司級(jí)資源庫(kù)和項(xiàng)目級(jí)資源庫(kù),公司級(jí)資源庫(kù)滿足企業(yè)整體資源共享管理的需要,項(xiàng)目級(jí)資源庫(kù)滿足項(xiàng)目團(tuán)隊(duì)共享資源的需要。多級(jí)資源庫(kù)體系的基于角色的用戶管理機(jī)制,使系統(tǒng)具有靈活的權(quán)限分配和安全的控制方式。對(duì)開(kāi)源資源不控制訪問(wèn)權(quán)限,公司級(jí)資源庫(kù)起到遠(yuǎn)程代理功能。多級(jí)資源庫(kù)體系結(jié)構(gòu)如圖1所示。