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

?

基于GJB 5000A的軟件配置管理研究與系統(tǒng)實(shí)現(xiàn)

2019-03-10 03:17:28郝延剛
雷達(dá)與對(duì)抗 2019年4期
關(guān)鍵詞:配置管理架構(gòu)設(shè)計(jì)基線(xiàn)

郝延剛

(海軍裝備部駐南京地區(qū)第二軍事代表室,南京 211153)

0 引 言

隨著現(xiàn)代軟件技術(shù)的發(fā)展,對(duì)軟件項(xiàng)目的需求日益復(fù)雜,變更頻繁發(fā)生。同時(shí),軟件工程的發(fā)展也要求軟件開(kāi)發(fā)從手工作坊上升到團(tuán)隊(duì)化、規(guī)?;拈_(kāi)發(fā)模式。當(dāng)開(kāi)發(fā)團(tuán)隊(duì)發(fā)展到一定規(guī)模時(shí)會(huì)越來(lái)越強(qiáng)調(diào)開(kāi)發(fā)過(guò)程的規(guī)范化和成熟度。[1]

針對(duì)軟件技術(shù)發(fā)展的趨勢(shì),2008 年頒布了《軍用軟件研制能力成熟度模型》(GJB 5000A-2008),規(guī)定了軍用軟件研制和維護(hù)活動(dòng)中的重要管理過(guò)程和工程過(guò)程實(shí)踐,以提高軍工企業(yè)軟件研制能力,其中軟件配置管理更是在軟件項(xiàng)目開(kāi)發(fā)過(guò)程中起著重要的作用。本文采用Spring、MyBatis以及Activiti技術(shù),定義軟件配置業(yè)務(wù)流程,設(shè)計(jì)滿(mǎn)足 GJB 5000A 的軟件配置管理系統(tǒng)。

1 配置管理過(guò)程域

軟件配置管理是指在開(kāi)發(fā)過(guò)程中各階段管理計(jì)算機(jī)程序演變的學(xué)科。作為軟件工程的關(guān)鍵元素,它己經(jīng)成為軟件開(kāi)發(fā)和維護(hù)的重要組成部分,提供了結(jié)構(gòu)化的、有序化的、產(chǎn)品化的管理軟件工程的方法。它涵蓋了軟件生命周期的所有領(lǐng)域并影響所有數(shù)據(jù)和過(guò)程。[2-3]

依據(jù)GJB 5000A,軟件配置管理過(guò)程域主要包括3個(gè)專(zhuān)用目標(biāo):建立基線(xiàn)、跟蹤和控制更改以及保證完整性。

2 配置管理功能需求

在軟件項(xiàng)目的初期階段,配置管理組開(kāi)始策劃配置管理活動(dòng)并建立配置管理系統(tǒng),且隨著項(xiàng)目進(jìn)展建立并發(fā)布相關(guān)基線(xiàn)。通過(guò)配置管理的配置控制、變更管理和配置審核等功能,對(duì)配置管理系統(tǒng)中的工作產(chǎn)品的發(fā)布和基線(xiàn)的變更實(shí)施系統(tǒng)性的控制和監(jiān)督。

根據(jù)GJB 5000A-2008對(duì)配置管理的要求,配置管理系統(tǒng)應(yīng)滿(mǎn)足如圖1所示功能需求。

圖1 配置管理功能需求

2.1 標(biāo)識(shí)配置項(xiàng)

配置項(xiàng)是軟件配置管理指定的實(shí)體。配置項(xiàng)的管理可以按多個(gè)粒度級(jí)實(shí)施。一般來(lái)說(shuō),配置項(xiàng)包括需求、設(shè)計(jì)、文檔、測(cè)試數(shù)據(jù)和代碼等。但是,在最極端的情況下配置項(xiàng)可以是一行代碼或是一行文檔。

2.2 配置管理計(jì)劃制定

項(xiàng)目管理計(jì)劃應(yīng)當(dāng)涵蓋以下內(nèi)容:

(1) 確定配置控制委員會(huì)(CCB)組長(zhǎng)、成員以及組內(nèi)分工;

(2) 標(biāo)識(shí)配置項(xiàng);

(3) 策劃各配置項(xiàng)的受控時(shí)機(jī);

(4) 定義基線(xiàn);

(5) 策劃項(xiàng)目產(chǎn)品入產(chǎn)品庫(kù)的時(shí)機(jī);

(6) 策劃配置審核、配置狀態(tài)報(bào)告活動(dòng),明確時(shí)機(jī)或頻度。

2.3 配置管理環(huán)境建立

依據(jù)配置管理庫(kù)目錄結(jié)構(gòu),可以使用配置管理工具或資源管理器建立項(xiàng)目的開(kāi)發(fā)庫(kù)、受控庫(kù)、產(chǎn)品庫(kù),并設(shè)置訪(fǎng)問(wèn)權(quán)限。

2.4 三庫(kù)管理

對(duì)軟件配置管理庫(kù)的操作是軟件配置管理中的核心內(nèi)容,主要涵蓋檢入、檢出、分支、合并、版本比較和版本標(biāo)簽功能。[4]

2.5 基線(xiàn)建立與發(fā)布

基線(xiàn)是一組經(jīng)過(guò)驗(yàn)證或確認(rèn)并作為后續(xù)工作開(kāi)展依據(jù)的一個(gè)或一組工作產(chǎn)品。基線(xiàn)建立的條件是基線(xiàn)配置項(xiàng)均已納入受控庫(kù)受控,已通過(guò)相應(yīng)審批。

項(xiàng)目在開(kāi)發(fā)過(guò)程中需要建立的基線(xiàn)通常有功能基線(xiàn)、分配基線(xiàn)、設(shè)計(jì)基線(xiàn)、實(shí)現(xiàn)基線(xiàn)、產(chǎn)品基線(xiàn)等。軟件生命周期中每一條基線(xiàn)都應(yīng)具有唯一的標(biāo)識(shí),并且基線(xiàn)的建立應(yīng)該經(jīng)過(guò)相應(yīng)級(jí)別 CCB 批準(zhǔn)后由配置管理人員建立。

2.6 變更管理

變更管理是在軟件研制和維護(hù)過(guò)程中,對(duì)發(fā)現(xiàn)的軟件問(wèn)題進(jìn)行確認(rèn),分析產(chǎn)生問(wèn)題的根源,確定受影響的應(yīng)更改的受控軟件配置項(xiàng),并實(shí)施軟件變更的過(guò)程。滿(mǎn)足 GJB 5000A 要求的軟件項(xiàng)目在開(kāi)發(fā)及維護(hù)過(guò)程中任何一個(gè)基線(xiàn)配置項(xiàng)的更改都應(yīng)在嚴(yán)格有效的變更控制下進(jìn)行。

2.7 配置審核

配置審核分為針對(duì)基線(xiàn)的基線(xiàn)審計(jì)和定期審核。對(duì)于配置審核中發(fā)現(xiàn)的問(wèn)題應(yīng)根據(jù)具體的問(wèn)題處理規(guī)程進(jìn)行處理。[5]

2.8 配置狀態(tài)報(bào)告

配置狀態(tài)發(fā)布是建立與維護(hù)配置項(xiàng)的記錄,可為相關(guān)人員提供準(zhǔn)確的配置信息,通過(guò)記錄和報(bào)告變更請(qǐng)求的狀態(tài)為產(chǎn)品的質(zhì)量、進(jìn)度、趨勢(shì)等跟蹤提供數(shù)據(jù)。

3 配置管理系統(tǒng)分層架構(gòu)設(shè)計(jì)

隨著Internet技術(shù)的興起,瀏覽器已經(jīng)統(tǒng)一了客戶(hù)端。將系統(tǒng)功能實(shí)現(xiàn)的核心部分集中到服務(wù)器上,可簡(jiǎn)化系統(tǒng)的開(kāi)發(fā)、維護(hù)和使用。因此,本文配置管理系統(tǒng)采用B/S架構(gòu)進(jìn)行設(shè)計(jì)。

運(yùn)行時(shí)從界面到數(shù)據(jù)存儲(chǔ)經(jīng)歷多個(gè)功能層次的交互,依次進(jìn)行數(shù)據(jù)展現(xiàn)與輸入、數(shù)據(jù)傳輸與接入、服務(wù)請(qǐng)求派發(fā)、業(yè)務(wù)邏輯執(zhí)行和數(shù)據(jù)持久化操作等多個(gè)階段,形成如圖2所示的分層結(jié)構(gòu)。

圖2 配置管理系統(tǒng)分層架構(gòu)設(shè)計(jì)

(a) 展現(xiàn)層負(fù)責(zé)以文字、圖形、表格等可視化界面向用戶(hù)展示系統(tǒng)信息;

(b) 服務(wù)交互層提供用戶(hù)請(qǐng)求數(shù)據(jù)的格式化、傳輸、封包與解包、URL處理的派發(fā)等功能,系統(tǒng)內(nèi)部服務(wù)調(diào)用支持RESTful方式以JSON格式序列化,服務(wù)端采用Spring MVC中的DispatchServlet進(jìn)行請(qǐng)求派發(fā);

(c) 業(yè)務(wù)邏輯層進(jìn)行具體的系統(tǒng)功能實(shí)現(xiàn),系統(tǒng)邏輯組件包括Activiti框架組件,可實(shí)現(xiàn)工作流控制;

(d) 持久層采用MyBatis框架提供數(shù)據(jù)的持久化、數(shù)據(jù)訪(fǎng)問(wèn)能力。

4 配置管理功能架構(gòu)設(shè)計(jì)

軟件配置管理系統(tǒng)實(shí)現(xiàn)4大功能:配置管理、配置審核管理、報(bào)告管理、系統(tǒng)管理。功能架構(gòu)設(shè)計(jì)如圖3所示。

圖3 配置管理系統(tǒng)功能架構(gòu)

4.1 配置管理功能

配置管理功能模塊包含配置項(xiàng)標(biāo)識(shí)、配置管理計(jì)劃制定、建立和維護(hù)配置管理環(huán)境、三庫(kù)管理、建立并發(fā)布基線(xiàn)、變更控制等功能,是配置管理的核心功能。

4.2 配置審核功能

項(xiàng)目配置管理是根據(jù)項(xiàng)目配置管理計(jì)劃,對(duì)項(xiàng)目的配置管理活動(dòng)進(jìn)行配置審核。配置審核功能包括功能審核和物理審核功能。功能審核的目的是驗(yàn)證配置項(xiàng)功能特征是否已達(dá)到其基線(xiàn)文檔中所規(guī)定的需求,是否完備和正確。物理審核的目的是驗(yàn)證已構(gòu)造的配置項(xiàng)是否完備,版本是否一致。

4.3 報(bào)告管理功能

報(bào)告功能主要由配置狀態(tài)報(bào)告、配置審核報(bào)告、基線(xiàn)狀態(tài)報(bào)告組成。

4.4 系統(tǒng)管理功能

根據(jù)配置規(guī)程及項(xiàng)目定義,系統(tǒng)定義多種角色:系統(tǒng)管理員、配置管理員、審批人員、開(kāi)發(fā)人員。項(xiàng)目組成員根據(jù)自己的角色選擇相應(yīng)用戶(hù)進(jìn)行登錄。登入系統(tǒng)后,根據(jù)角色的不同系統(tǒng)所授予的權(quán)限及功能不同。

5 配置管理系統(tǒng)流程設(shè)計(jì)

5.1 工作流程設(shè)計(jì)

系統(tǒng)基于Activiti框架定義工作流程。Activiti采用BPMN2.0標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)通過(guò)XML定義業(yè)務(wù)流程相關(guān)的節(jié)點(diǎn)。Activiti工作流程引擎配置如下所示:

在Activiti引擎支撐下,配置管理系統(tǒng)的流程控制可以基于數(shù)據(jù)庫(kù)實(shí)現(xiàn)流程節(jié)點(diǎn)的定義、修改與維護(hù)。

5.2 配置管理系統(tǒng)主流程設(shè)計(jì)

配置管理系統(tǒng)主流程涵蓋了配置過(guò)程的關(guān)鍵活動(dòng)。主流程設(shè)計(jì)如圖4所示。

6 配置管理系統(tǒng)主要類(lèi)包圖設(shè)計(jì)

基于分層架構(gòu),采用Spring+MyBatis架構(gòu)設(shè)計(jì)系統(tǒng)主要業(yè)務(wù)類(lèi)包圖,如圖5所示。

UI包為前臺(tái),Controller、Service、Dao包為后臺(tái),遵循MVC架構(gòu)設(shè)計(jì)。UI包主要負(fù)責(zé)前臺(tái)頁(yè)面的表示,通過(guò)RESTful接口與后臺(tái)Controller包進(jìn)行交互。

Controller包負(fù)責(zé)具體的業(yè)務(wù)模塊流程的控制。在此包里面調(diào)用Service包對(duì)應(yīng)的接口來(lái)控制業(yè)務(wù)流程。此包中主要包含配置管理相關(guān)的控制入口,如基線(xiàn)控制接口、配置項(xiàng)管理接口、變更控制接口、三庫(kù)管理接口等。

圖4 配置管理業(yè)務(wù)主流程設(shè)計(jì)

圖5 配置管理系統(tǒng)業(yè)務(wù)包設(shè)計(jì)

Service包主要負(fù)責(zé)業(yè)務(wù)模塊的邏輯應(yīng)用流程實(shí)現(xiàn)。如果需要進(jìn)行數(shù)據(jù)庫(kù)交互,則調(diào)用Dao包的接口。此包中主要包含配置管理相關(guān)的控制邏輯,如基線(xiàn)控制邏輯、配置項(xiàng)管理邏輯、變更控制邏輯、三庫(kù)管理邏輯等。

DAO層主要是做數(shù)據(jù)持久層的工作。本系統(tǒng)基于MyBatis架構(gòu)實(shí)現(xiàn)數(shù)據(jù)持久化。由MyBatis框架自動(dòng)實(shí)現(xiàn)Dao包與對(duì)應(yīng)的Mapper.xml文件的關(guān)聯(lián),并執(zhí)行Mapper文件中的數(shù)據(jù)操作語(yǔ)句,實(shí)現(xiàn)數(shù)據(jù)持久化與讀取。

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

配置管理在軟件開(kāi)發(fā)過(guò)程中占有重要的地位。本文基于GJB 5000A以及長(zhǎng)期的工作實(shí)踐,采用Spring+MyBatis實(shí)現(xiàn)B/S架構(gòu)的軟件配置管理系統(tǒng)。按照本文所述,能有效滿(mǎn)足GJB 5000A-2008中配置管理過(guò)程域二級(jí)的要求。結(jié)合良好的軟件配置管理系統(tǒng),可以提高軟件產(chǎn)品的質(zhì)量,提高工作效率,降低開(kāi)發(fā)成本,從而推動(dòng)軟件研制過(guò)程的標(biāo)準(zhǔn)化發(fā)展。

猜你喜歡
配置管理架構(gòu)設(shè)計(jì)基線(xiàn)
汽車(chē)委托外加工零件自動(dòng)化配置管理
適用于MAUV的變基線(xiàn)定位系統(tǒng)
基于安全性需求的高升力控制系統(tǒng)架構(gòu)設(shè)計(jì)
航天技術(shù)與甚長(zhǎng)基線(xiàn)陣的結(jié)合探索
科學(xué)(2020年5期)2020-11-26 08:19:14
一種改進(jìn)的干涉儀測(cè)向基線(xiàn)設(shè)計(jì)方法
建設(shè)CMDB任重道遠(yuǎn)
配置管理在軟件測(cè)試中的應(yīng)用
科技視界(2015年4期)2015-01-02 05:16:00
基于PLM 的IRIS 配置管理的實(shí)施和應(yīng)用
技術(shù)狀態(tài)管理——對(duì)基線(xiàn)更改的控制
航天器工程(2014年5期)2014-03-11 16:35:50
對(duì)稱(chēng)加密算法RC5的架構(gòu)設(shè)計(jì)與電路實(shí)現(xiàn)
台北县| 晋州市| 南昌市| 北宁市| 昌平区| 来宾市| 鹤壁市| 渑池县| 且末县| 青浦区| 舞钢市| 天全县| 墨竹工卡县| 乐陵市| 张家界市| 隆昌县| 汕头市| 南康市| 休宁县| 综艺| 聂荣县| 南漳县| 开鲁县| 浦县| 阿荣旗| 碌曲县| 扬州市| 麻栗坡县| 诸暨市| 镇雄县| 宁城县| 桂东县| 西和县| 昭觉县| 石泉县| 金山区| 高州市| 西畴县| 马关县| 凭祥市| 鞍山市|