国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

軟件BOM在構(gòu)件化軟件開發(fā)過程中的應(yīng)用

2019-10-09 05:48王艷麗
電子技術(shù)與軟件工程 2019年17期
關(guān)鍵詞:構(gòu)件設(shè)計(jì)師軟件

文/王艷麗

1 引言

物料需求清單(Bill of Material),簡(jiǎn)稱BOM,是產(chǎn)品結(jié)構(gòu)的技術(shù)性描述文件,表明了產(chǎn)品組件、子件、零件直到原材料之間的結(jié)構(gòu)關(guān)系,以及每個(gè)組裝件所需的各子部件的數(shù)量,多用于生產(chǎn)制造類企業(yè)。生產(chǎn)制造系統(tǒng)常用BOM來管理繁多而又關(guān)聯(lián)的物料,BOM描述了裝配件的結(jié)構(gòu)化零件表,且隨著用戶需求、設(shè)計(jì)的更改而處于動(dòng)態(tài)的變化與更新之中,BOM可快速準(zhǔn)確地提供所有物料清單,是提高生產(chǎn)管理系統(tǒng)效率的關(guān)鍵環(huán)節(jié)。

早在1968年,NATO組織的軟件工程會(huì)議上,Mcllroy首次提出了“軟件工程”、“軟件構(gòu)件”以及“軟件工廠”等概念。1975年開始舉辦的世界軟件工程大會(huì)ICSE,提出了在軟件生產(chǎn)中采用工程化的方法來開發(fā)軟件。而軟件BOM就是這軟件工廠用來管理軟件構(gòu)件的工具。狹義上講,構(gòu)件是指一個(gè)對(duì)象(接口規(guī)范或二進(jìn)制代碼),它被用于復(fù)用,接口被明確定義。軟件構(gòu)件一般指對(duì)外提供一組規(guī)約化接口的、符合一定標(biāo)準(zhǔn)的、可替換的軟件系統(tǒng)的程序模塊。開發(fā)者可以通過組裝已有的構(gòu)件來開發(fā)新的應(yīng)用系統(tǒng),從而達(dá)到軟件復(fù)用的目的。20世紀(jì)90年代,美國(guó)國(guó)防部提出了基于模塊的開放式系統(tǒng)方法(MOSA)。提出采用開放式的松耦合標(biāo)準(zhǔn)化模塊,能有效地控制和降低成本。

軟件BOM是需求分析和概要設(shè)計(jì)的產(chǎn)物。需求分析是軟件開發(fā)過程的重要環(huán)節(jié),直接決定著軟件的成敗。正確的需求分析會(huì)將用戶的需求分解為軟件的功能、性能和接口等,進(jìn)而進(jìn)行軟件概要設(shè)計(jì)和詳細(xì)設(shè)計(jì),將抽象的功能、性能和接口等轉(zhuǎn)化為一個(gè)個(gè)相互關(guān)聯(lián)的構(gòu)件。本文將詳細(xì)闡述軟件BOM在構(gòu)件化軟件開發(fā)過程中的設(shè)計(jì)流程、采用的形式及其應(yīng)用價(jià)值。

2 構(gòu)件化軟件開發(fā)過程與傳統(tǒng)軟件開發(fā)過程的區(qū)別

傳統(tǒng)軟件開發(fā)過程一般經(jīng)歷需求分析、軟件設(shè)計(jì)(包括軟件概要設(shè)計(jì)、軟件詳細(xì)設(shè)計(jì))、軟件測(cè)試(包括軟件實(shí)現(xiàn)和單元測(cè)試、單元集成和測(cè)試、軟件配置項(xiàng)測(cè)試)三大過程,形成的最終產(chǎn)品交付用戶。如圖1所示。

構(gòu)件化軟件開發(fā)過程如圖2所示,將軟件設(shè)計(jì)過程細(xì)分為軟件架構(gòu)設(shè)計(jì)、軟件BOM表設(shè)計(jì)、軟件投產(chǎn)、新研構(gòu)件設(shè)計(jì);將軟件測(cè)試細(xì)分為集成測(cè)試和CSCI測(cè)試,經(jīng)測(cè)試后將新研構(gòu)件入庫(kù)。最后還增加了在應(yīng)用中的構(gòu)件回歸測(cè)試并入庫(kù)的動(dòng)作。

對(duì)于一個(gè)成熟領(lǐng)域的軟件開發(fā),如果軟件復(fù)用率達(dá)90%的話,采用圖2的構(gòu)件化開發(fā)流程,可以將軟件開發(fā)時(shí)間縮短30%左右。其中90%的構(gòu)件只需要從構(gòu)件庫(kù)中出庫(kù)即可應(yīng)用,另外只有10%的構(gòu)件需要新研,這相對(duì)于所有的開發(fā)都從零開始要大大節(jié)約人力和縮短開發(fā)周期。

3 軟件BOM的設(shè)計(jì)

軟件BOM即軟件結(jié)構(gòu)清單,做好軟件BOM表設(shè)計(jì)的前提是軟件需求分析。軟件負(fù)責(zé)人進(jìn)行軟件需求分析,初步分解出軟件構(gòu)件需求,形成軟件BOM表V1.0。構(gòu)件設(shè)計(jì)師根據(jù)軟件BOM表V1.0,進(jìn)行復(fù)用分析,梳理出哪些構(gòu)件可以從標(biāo)準(zhǔn)構(gòu)件庫(kù)中出庫(kù)復(fù)用,哪些構(gòu)件是新研構(gòu)件,進(jìn)而形成軟件BOM表V2.0。

如圖3所示,在軟件需求階段,軟件設(shè)計(jì)師根據(jù)用戶的軟件研制任務(wù)書,逐層細(xì)化軟件需求,將軟件分解為CSCI層(子系統(tǒng)層、工作模式層、工作方式層)、子功能層、構(gòu)件層,各層獨(dú)立,反映產(chǎn)品軟件的工作模式、工作方式、子功能、性能、質(zhì)量屬性、接口、約束等,分解形成BOM表,并以BOM表為抓手,實(shí)現(xiàn)表單式開發(fā)與管理,支持軟件構(gòu)件復(fù)用,避免重復(fù)開發(fā)。軟件需求逐層分解形成BOM的過程如圖4所示。

圖1:傳統(tǒng)軟件開發(fā)過程

圖2:基于BOM表的構(gòu)件化軟件開發(fā)過程

軟件BOM表常采用excel明細(xì)表的文本形式和結(jié)構(gòu)樹的電子視圖形式。excel明細(xì)表的形式如圖5所示,結(jié)構(gòu)樹的電子視圖形式如圖6所示。

圖3:軟件BOM設(shè)計(jì)流程圖

圖4:軟件需求逐層分解形成軟件BOM的示例

圖5和圖6的示例展示了最簡(jiǎn)單的軟件BOM表設(shè)計(jì)情況,實(shí)際應(yīng)用中會(huì)更加復(fù)雜,會(huì)有層層嵌套的情況。軟件BOM表設(shè)計(jì)完成后,以結(jié)構(gòu)樹的電子視圖形式在PDS系統(tǒng)中歸檔。PDS中結(jié)構(gòu)樹上的每個(gè)節(jié)點(diǎn)關(guān)聯(lián)各類屬性等信息。隨后軟件項(xiàng)目負(fù)責(zé)人根據(jù)該BOM表安排軟件設(shè)計(jì)任務(wù)。

4 軟件BOM的應(yīng)用

4.1 軟件加工生產(chǎn)的依據(jù)

軟件BOM表作為軟件的明細(xì)表,描述了軟件的需求與構(gòu)件之間的設(shè)計(jì)關(guān)系。比如特定的軟件需求由哪些構(gòu)件來實(shí)現(xiàn),構(gòu)件與構(gòu)件之間的關(guān)系是什么,該軟件需求與其他軟件需求之間的交互關(guān)系是什么,這些構(gòu)件怎樣組裝來實(shí)現(xiàn)該軟件需求等。是進(jìn)行軟件需求追蹤的手段,從而使設(shè)計(jì)滿足用戶的需求。

在實(shí)際應(yīng)用中,軟件設(shè)計(jì)師與構(gòu)件設(shè)計(jì)師往往不是同一個(gè)人,軟件設(shè)計(jì)師設(shè)計(jì)出軟件BOM表V1.0版,構(gòu)件設(shè)計(jì)師根據(jù)該軟件BOM表來設(shè)計(jì)軟件。軟件設(shè)計(jì)師再依據(jù)軟件BOM完成構(gòu)件的系統(tǒng)集成。軟件設(shè)計(jì)工作流水線進(jìn)行,使軟件設(shè)計(jì)工作效率大大提高。

4.2 軟件復(fù)用的依據(jù)

圖5:軟件BOM表的Excel形式示例

圖6:軟件BOM表的結(jié)構(gòu)樹電子視圖形式示例

軟件BOM的基本要素是軟件構(gòu)件,軟件構(gòu)件是指軟件系統(tǒng)中的可復(fù)用單元,它實(shí)現(xiàn)特定的功能,符合一套接口標(biāo)準(zhǔn)并實(shí)現(xiàn)一組接口。構(gòu)件設(shè)計(jì)師對(duì)照軟件BOM表首先要進(jìn)行軟件復(fù)用分析,判斷哪些構(gòu)件可以復(fù)用,哪些需要新研。對(duì)于可以100%復(fù)用的構(gòu)件,直接從軟件構(gòu)件庫(kù)中出庫(kù)備用。對(duì)于可以部分復(fù)用的構(gòu)件,需要從軟件構(gòu)件庫(kù)中出庫(kù)后安排構(gòu)件修改、構(gòu)件測(cè)試驗(yàn)證及構(gòu)件入庫(kù)等工作。對(duì)于新研的構(gòu)件,則需要根據(jù)構(gòu)件需求分析進(jìn)行構(gòu)件設(shè)計(jì)、構(gòu)件測(cè)試驗(yàn)證及構(gòu)件入庫(kù)等工作。這樣,復(fù)用率越高,新研的構(gòu)件越少,軟件開發(fā)的周期越短。從而避免重復(fù)開發(fā),大大提高了軟件開發(fā)的效率。而且,復(fù)用率越高的產(chǎn)品,說明軟件成熟度越高,軟件質(zhì)量越高。

4.3 與構(gòu)件庫(kù)的建立相輔相成

基于軟件BOM表的構(gòu)件化開發(fā)過程,使得軟件設(shè)計(jì)系列化、標(biāo)準(zhǔn)化、規(guī)范化、通用化。同時(shí),標(biāo)準(zhǔn)化、規(guī)范化的構(gòu)件設(shè)計(jì),經(jīng)過測(cè)試驗(yàn)證及回歸測(cè)試驗(yàn)證后,作為標(biāo)準(zhǔn)構(gòu)件入軟件構(gòu)件庫(kù),增加了軟件構(gòu)件庫(kù)的庫(kù)存種類和數(shù)量;反之,軟件構(gòu)件庫(kù)的充實(shí)又為之后的軟件設(shè)計(jì)工作提供更多可供復(fù)用的標(biāo)準(zhǔn)構(gòu)件。從而實(shí)現(xiàn)“搭積木”式軟件加工方式,使軟件開發(fā)更加便捷高效。

5 軟件BOM的作用

對(duì)質(zhì)量的影響:軟件BOM表隨著構(gòu)件的逐步優(yōu)化,版本也隨之同步升級(jí),質(zhì)量也隨之得以提高。隨著大量產(chǎn)品的借用,構(gòu)件會(huì)趨于成熟,軟件BOM表也隨之趨于成熟。這有利于同領(lǐng)域的其他產(chǎn)品借用或者部分借用。

對(duì)生產(chǎn)率的影響:一般來說,大約80%~90%的復(fù)用可使軟件生產(chǎn)率提高25%~40%。

對(duì)成本的影響:軟件復(fù)用率越高時(shí),新研構(gòu)件越少,耗費(fèi)的人力成本和時(shí)間成本都會(huì)大大降低。

對(duì)管理的影響:在PDS等系統(tǒng)中歸檔了的軟件BOM表,記錄了關(guān)于該產(chǎn)品所用的所有軟件構(gòu)件的數(shù)據(jù)信息,如構(gòu)件的名稱、版本、基本內(nèi)容、復(fù)用/新研等信息,以及構(gòu)件與構(gòu)件之間的嵌套關(guān)系。它對(duì)于質(zhì)量管理中從最終產(chǎn)品追溯零件、組件起到關(guān)鍵作用。軟件BOM表以信息共享為基礎(chǔ),是綜合管理、資源調(diào)度的重要依據(jù)。另外,軟件BOM表中復(fù)用/新研的數(shù)據(jù)也可作為安排軟件開發(fā)計(jì)劃的依據(jù)。

6 結(jié)束語(yǔ)

本文針對(duì)基于軟件BOM的構(gòu)件化開發(fā)過程,闡述了軟件BOM的設(shè)計(jì)流程、設(shè)計(jì)形式及其應(yīng)用價(jià)值??梢钥闯鲈跇?gòu)件化軟件開發(fā)過程中,軟件BOM設(shè)計(jì)是不可缺少的重要環(huán)節(jié)。軟件BOM在“工廠”式的軟件加工過程中起著連接設(shè)計(jì)與制造的紐帶作用,對(duì)提高軟件生產(chǎn)率和軟件質(zhì)量、降低軟件開發(fā)成本都起著至關(guān)重要的作用。因此,做好軟件需求分析、軟件BOM設(shè)計(jì)、構(gòu)件設(shè)計(jì)、構(gòu)件測(cè)試等,且每個(gè)環(huán)節(jié)都進(jìn)行專家審核和評(píng)審,才能有效地提高軟件開發(fā)的質(zhì)量,推動(dòng)軟件工程的發(fā)展。

猜你喜歡
構(gòu)件設(shè)計(jì)師軟件
小小設(shè)計(jì)師
禪宗軟件
我是小小設(shè)計(jì)師
設(shè)計(jì)師訪談
軟件對(duì)對(duì)碰
推薦一個(gè)設(shè)計(jì)師
建筑構(gòu)件
建筑構(gòu)件
建筑構(gòu)件
建筑構(gòu)件