當(dāng)軟件構(gòu)件庫(kù)足夠豐富,,軟件開發(fā)將會(huì)邁入基于構(gòu)件的開發(fā)過程。 基于構(gòu)件的軟件開發(fā)過程,,不等同于基于構(gòu)件的軟件開發(fā)(即將現(xiàn)有的構(gòu)件組裝成軟件系統(tǒng)),,基于構(gòu)件的軟件開發(fā)只是基于構(gòu)件的軟件開發(fā)過程的一個(gè)重要方面(即實(shí)現(xiàn)過程),,而基于構(gòu)件的軟件開發(fā)過程,,是以構(gòu)件為中心的思想來(lái)指導(dǎo)軟件生命周期的各個(gè)階段,不僅包括需求分析,、設(shè)計(jì),、實(shí)現(xiàn)、測(cè)試和維護(hù)等工程活動(dòng),也包括項(xiàng)目管理活動(dòng),。
基于構(gòu)件的軟件開發(fā)過程的需求分析要完成以下任務(wù):確定領(lǐng)域需求,,劃分業(yè)務(wù)構(gòu)件。 在需求分析階段,,我們通過對(duì)領(lǐng)域需求的挖掘,、分析和確認(rèn)等活動(dòng),明確軟件應(yīng)實(shí)現(xiàn)的功能,,并按照一定的規(guī)則(如模塊化)將其分配到不同的業(yè)務(wù)構(gòu)件,,形成基于構(gòu)件的業(yè)務(wù)模型。
基于構(gòu)件的軟件開發(fā)過程的設(shè)計(jì)要完成以下任務(wù):確定系統(tǒng)架構(gòu),,劃分服務(wù)構(gòu)件,。 在設(shè)計(jì)階段,我們需要進(jìn)行系統(tǒng)設(shè)計(jì),,將上一階段獲得的業(yè)務(wù)構(gòu)件按照設(shè)計(jì)原則有機(jī)地組織起來(lái),,再結(jié)合表示層和邏輯層等的服務(wù)構(gòu)件,形成具有健壯性,、可靠性和可擴(kuò)展的軟件架構(gòu),。
基于構(gòu)件的軟件開發(fā)過程的實(shí)現(xiàn)要完成以下任務(wù):創(chuàng)建新的構(gòu)件或獲取已有構(gòu)件,按照系統(tǒng)架構(gòu)組裝軟件系統(tǒng),。 在實(shí)現(xiàn)階段,,我們需要獲得設(shè)計(jì)過程中組成軟件的業(yè)務(wù)構(gòu)件和服務(wù)構(gòu)件,并且實(shí)現(xiàn)構(gòu)件間的相互調(diào)用,。獲得構(gòu)件的方式是通過檢索組織的構(gòu)件庫(kù)下載使用所需要的構(gòu)件,。如果構(gòu)件庫(kù)中沒有所需的構(gòu)件,就需要把它開發(fā)出來(lái),。如果構(gòu)件只能部分復(fù)用,,就需要對(duì)構(gòu)件進(jìn)行適應(yīng)性修改。
基于構(gòu)件的軟件開發(fā)過程的測(cè)試要完成以下任務(wù):測(cè)試新開發(fā)的服務(wù)構(gòu)件和業(yè)務(wù)構(gòu)件,,以及它們之間的接口,,測(cè)試整個(gè)軟件的功能、性能和外部接口,。 在測(cè)試階段也是基于構(gòu)件進(jìn)行的,。新的構(gòu)件需要進(jìn)行功能和接口測(cè)試,而構(gòu)件庫(kù)中獲取的構(gòu)件不需要對(duì)其自身進(jìn)行測(cè)試,,而只需要對(duì)它的外部接口進(jìn)行測(cè)試,。除此之外,測(cè)試階段要完成整個(gè)軟件的系統(tǒng)測(cè)試,。
基于構(gòu)件的軟件開發(fā)過程的維護(hù)要完成以下任務(wù):更新,、替換已有構(gòu)件。 在維護(hù)階段,我們也只需要針對(duì)要維護(hù)的構(gòu)件進(jìn)行維護(hù)活動(dòng),,即通過更新,、替換相關(guān)構(gòu)件來(lái)完成維護(hù)。
構(gòu)件既是軟件開發(fā)工程活動(dòng)的產(chǎn)物,,同時(shí)它也為項(xiàng)目計(jì)劃與分工提供了良好的支持,。
計(jì)劃是通過對(duì)軟件規(guī)模、工作量以及資源的估計(jì)結(jié)果制定的,,原來(lái)的規(guī)模估計(jì)是基于模塊進(jìn)行的,,基于構(gòu)件的開發(fā)過程則是基于構(gòu)件進(jìn)行的——如果構(gòu)件是可重用的,那么不需要開發(fā)構(gòu)件,,只需要實(shí)現(xiàn)構(gòu)件的調(diào)用,,而且不需要對(duì)構(gòu)件進(jìn)行測(cè)試,只需要進(jìn)行集成測(cè)試,;如果構(gòu)件是新開發(fā)的,,則要估計(jì)構(gòu)件的大小、開發(fā)的工作量,、構(gòu)件測(cè)試的工作量,。
在基于構(gòu)件的開發(fā)中,開發(fā)人員可以分為構(gòu)件開發(fā)者和組裝者,。構(gòu)件開發(fā)者負(fù)責(zé)新構(gòu)件的開發(fā),,組裝者負(fù)責(zé)構(gòu)件的組裝和調(diào)用。
在項(xiàng)目的度量上,,也同樣按照構(gòu)件劃分,。比如,通過測(cè)量構(gòu)件的生產(chǎn)率來(lái)測(cè)算項(xiàng)目的生產(chǎn)率,。 總之,,基于構(gòu)件的軟件開發(fā)過程是以構(gòu)件為中心來(lái)進(jìn)行軟件開發(fā)的工程活動(dòng)和管理活動(dòng)。 這正是: 構(gòu)件開發(fā)什么樣,,構(gòu)件核心不要忘 無(wú)論何種活動(dòng)中,,適用軟件全生命 參考書目:軟件構(gòu)件技術(shù),作者:夏榆濱,,出版社:清華大學(xué)出版社 |
|