康 銳
(上海復(fù)高計算機科技有限公司,上海 200072)
組件軟件工程是目前軟件工程開發(fā)的研究重點之一,組件的應(yīng)用有助于開發(fā)人員通過復(fù)用構(gòu)件在較短的時間內(nèi)進行軟件的構(gòu)造。一般來說,基于組件的軟件工程模型包括需求描述、組件分析、需求修改、使用復(fù)用的系統(tǒng)設(shè)計、開發(fā)和集成以及系統(tǒng)有效性驗證幾個環(huán)節(jié)。軟件組件作為軟件工程開發(fā)的一個輔助環(huán)節(jié),目前已經(jīng)逐漸發(fā)展成為獨立的應(yīng)用軟件為開發(fā)者所采用??梢?,對組件軟件工程的開發(fā)研究進行分析對促進應(yīng)用軟件工程的發(fā)展十分必要。
在軟件工程的開發(fā)過程中,應(yīng)用組件進行輔助開發(fā)的環(huán)節(jié)包括制作環(huán)節(jié)、銷售環(huán)節(jié)、裝配環(huán)節(jié)以及分發(fā)系統(tǒng)環(huán)節(jié)。在這些環(huán)節(jié)的組件軟件工程開發(fā)時,開發(fā)者可利用組件“即插即用”的優(yōu)勢在較短的時間內(nèi)構(gòu)造軟件;二次制軟件單元具有相對獨立的程序題,有助于聯(lián)合其他軟件進行組合開發(fā),從而完成工程的開發(fā)工作。在應(yīng)用組件進行軟件開發(fā)的過程中,首先,組件法具有“即用即插”的特點,經(jīng)濟、方便、快捷且具有較高的可靠性;其次,組件法開發(fā)的軟件工程接口為核心;另外,開發(fā)工具語言在組件開發(fā)過程中通常以二進制的途徑發(fā)布組件,改變了傳統(tǒng)開發(fā)方法中使用原程序代碼的缺點,減少了組件的限制。在軟件組件的開發(fā)過程中,組件的相關(guān)性質(zhì)以同一組件中的不同接口表現(xiàn)出來,使得其他軟件組件在進行相關(guān)的邏輯處理過程中有據(jù)可依;在組件接口的控制過程中,要提高其規(guī)范性與標準化,可在軟件組件市場中購買較為成熟的產(chǎn)品以提升組件軟件工程開發(fā)的有效性。
在組件軟件工程的開發(fā)過程中,通常采用瀑布式的方法進行組件開發(fā),耗費時間較長,且費用較高。因此,在組間軟件工程的開發(fā)流程上,可采用進式以及并發(fā)式的策略,通過系統(tǒng)構(gòu)建組件開發(fā)整體提高開發(fā)效率;其中,該策略構(gòu)成的系統(tǒng)整體包括系統(tǒng)設(shè)計環(huán)節(jié)、建模環(huán)節(jié)、系統(tǒng)開發(fā)和系統(tǒng)分析、掛歷組件以及組件項目的相應(yīng)組織等部分。在組件軟件工程的開發(fā)過程中,可在裝配組件以及組合組件的過程中將工程中較為分散的結(jié)構(gòu)模塊進行一定程度的耦合,從而提高組件開發(fā)流程的有效性。
組件是組間軟件工程的重要部分,在開發(fā)過程中應(yīng)始終強調(diào)組件的核心開發(fā)地位。一般來說,組件的收集過程完成于軟件開發(fā)過程的需求分析階段,即組件的收集要以軟件工程的需求為依據(jù)。完成組件開發(fā)的收集后,還應(yīng)嚴格遵循軟件工程的開發(fā)順序展開工作,其中,開發(fā)的內(nèi)容應(yīng)主要包括設(shè)計環(huán)節(jié)、裝配環(huán)節(jié)以及組間軟件的測試環(huán)節(jié)等。在組件分析過程中,應(yīng)把握好組件與需求之間的協(xié)調(diào)性,并以此為依據(jù)進行開發(fā)工具的選擇、裝配模型的建立以及組件的開發(fā)等工作,從而進一步提高組間軟件工程的開發(fā)效率。
組件的接口設(shè)計、組件間的連接以及組件的重用是組間軟件工程開發(fā)研究的重要論題。筆者以某組件軟件工程為例進行組件接口、連接以及重用方式的開發(fā)分析。在進行該組件軟件的開發(fā)過程中,應(yīng)明確開發(fā)工作包括軟件應(yīng)用程序的開發(fā)以及軟件組件的開發(fā)。首先,在應(yīng)用程序的開發(fā)時,應(yīng)首先根據(jù)需求分析列出所需組件的列表,并通過設(shè)計組件工具生成相應(yīng)組件;其次,調(diào)查數(shù)據(jù)庫提取所需組件,結(jié)合已有組件進行組件的重構(gòu)和開發(fā),將成熟的組件產(chǎn)品存入軟件系統(tǒng)的組件庫。而在該軟件組件的開發(fā)過程中,首先應(yīng)對軟件工程的組件需求以及組件實際效能進行分析與明確,并針對分析結(jié)果進行組件模型的設(shè)計與建立工作;完成組件的對外接口設(shè)計工作,與內(nèi)部的實際情況相連接,以提高其契合度;根據(jù)軟件應(yīng)用系統(tǒng)的復(fù)用要求,應(yīng)盡可能滿足所有組件的接口需求,并實現(xiàn)軟件工程組件的相關(guān)設(shè)計與部署工作。完成組件的接口管理后,對其組件進行具體設(shè)計,在設(shè)計過程中應(yīng)注意控制單個組件的粒度,以滿足具體需求為基準,避免盲目追求單一組件的綜合效能。另外,在單一組件的設(shè)計環(huán)節(jié)結(jié)束后,應(yīng)進行組件的表現(xiàn)工作,通過二進制代碼編輯組件,并存入可供后期軟件設(shè)計使用的組件數(shù)據(jù)庫。可見,完成應(yīng)用程序以及組件的開發(fā),須重視組件接口、連接以及重用幾個方面。
綜上所述,組件軟件工程作為目前軟件工程開發(fā)的熱門環(huán)節(jié),已經(jīng)成為計算機技術(shù)發(fā)展的重要助推器。要實現(xiàn)組間軟件工程的開發(fā)效率以及社會、經(jīng)濟效益,必須從組件開發(fā)的基本規(guī)律著手進行研究,通過滿足組件開發(fā)的接口需求、通用性與實用性需求以及重用性需求等提高組件開發(fā)的有效性,進而推動軟件工程的進一步發(fā)展。另外,為實現(xiàn)組件軟件工程開發(fā)的可持續(xù)發(fā)展,應(yīng)提高組件開發(fā)過程的分工專業(yè)化,通過進行系統(tǒng)分析、編程、管理等方面的分化而提高組件開發(fā)的效率與水平。