張 潔,黃茂海
(中國(guó)科學(xué)院國(guó)家天文臺(tái),北京 100012)
CN 53-1189/P ISSN 1672-7673
赫歇爾空間天文臺(tái)科學(xué)地面段軟件開發(fā)管理方法的研究*
張 潔,黃茂海
(中國(guó)科學(xué)院國(guó)家天文臺(tái),北京 100012)
國(guó)內(nèi)空間項(xiàng)目軟件管理方法已經(jīng)不能滿足當(dāng)前日益復(fù)雜的地面應(yīng)用系統(tǒng)的要求。深入研究了具有國(guó)際領(lǐng)先水平的赫歇爾(Herschel)空間天文臺(tái)科學(xué)地面段的軟件開發(fā)管理方法。赫歇爾科學(xué)地面段基于迭代模型的分支開發(fā)的特點(diǎn),切實(shí)可行的軟件管理計(jì)劃以及基于用例需求的開放管理方式改變了地面段總是處于整個(gè)工程建設(shè)的末端的現(xiàn)狀,而是從載荷研制階段就開始工作,而且面對(duì)頻繁的需求變更,始終保持高效的工作狀態(tài),這些在國(guó)內(nèi)空間項(xiàng)目中是前所未有的。本研究給國(guó)內(nèi)空間項(xiàng)目的軟件開發(fā)提供了新的思路和方法。
空間天文學(xué)其他學(xué)科;軟件開發(fā)管理;過程模型;迭代開發(fā);需求管理;用例
隨著國(guó)內(nèi)航天科技工業(yè)體系的發(fā)展,作為五大系統(tǒng)之一的地面應(yīng)用系統(tǒng)在各項(xiàng)目型號(hào)中占得比重也越來越重要。尤其在空間科學(xué)項(xiàng)目中,地面應(yīng)用系統(tǒng)具有有效載荷種類和數(shù)量多、面對(duì)的用戶最多、用戶需求變化最大、運(yùn)行管理復(fù)雜等特點(diǎn)[1-2]。然而,國(guó)內(nèi)空間項(xiàng)目地面系統(tǒng)軟件開發(fā)的管理方式還停留在空間項(xiàng)目的發(fā)展初期,大多采用瀑布式、長(zhǎng)期固化需求的管理方式,面對(duì)地面應(yīng)用系統(tǒng)的這些新特點(diǎn),傳統(tǒng)的管理方式顯得難以應(yīng)付[3-4],甚至可能會(huì)在研制過程的后期帶來很大的風(fēng)險(xiǎn)。
作為歐洲迄今最復(fù)雜的空間科學(xué)設(shè)備——赫歇爾紅外空間天文臺(tái)項(xiàng)目之所以能成功運(yùn)作,其顛覆以往常用的瀑布模型,采用積極擁抱變化的策略的項(xiàng)目管理方式功不可沒。2005年到2013年,中國(guó)科學(xué)院國(guó)家天文臺(tái)加入赫歇爾地面段研制和運(yùn)行[5],作為成員正式投入工程力量,成為地面段軟件系統(tǒng)開發(fā)的重要方面,獲得科學(xué)權(quán)益,所做出的貢獻(xiàn)獲得國(guó)際同行的高度評(píng)價(jià)。通過合作,在國(guó)內(nèi)成功安裝運(yùn)行了歐洲空間局基石級(jí)別項(xiàng)目的科學(xué)地面段軟件系統(tǒng),消化了具有世界領(lǐng)先水平的地面應(yīng)用系統(tǒng)技術(shù)和運(yùn)行流程,還將立足國(guó)內(nèi)的技術(shù)團(tuán)隊(duì)“嵌入”到歐洲空間局成熟高效的工程系統(tǒng)中,學(xué)習(xí)、建立了長(zhǎng)期穩(wěn)定的高效管理和溝通機(jī)制。本文根據(jù)合作中獲得的知識(shí)、技術(shù)、經(jīng)驗(yàn),深入剖析赫歇爾地面應(yīng)用系統(tǒng)的軟件工程管理,為國(guó)內(nèi)空間項(xiàng)目的軟件開發(fā)管理提供新的思路和借鑒。
赫歇爾(Herschel)是歐洲空間局建造的大型紅外空間望遠(yuǎn)鏡,作為空間科學(xué)“基石”項(xiàng)目,是歐洲空間局研制的最為復(fù)雜的航天器。它具有直徑3.5 m的主鏡和3臺(tái)非常靈敏的探測(cè)儀器:成像光譜與測(cè)光儀(Spectral and Photometric Imaging Receiver, SPIRE)、光電陣列和射譜儀(Photodetector Array Camera and Spectrometer Instrument, PACS)、遠(yuǎn)紅外外差接收機(jī)(Heterodyne Instrument for the Far Infrared, HIFI)。
與國(guó)內(nèi)空間地面應(yīng)用系統(tǒng)的概念有所不同,地面段還包括相應(yīng)的組織單位和相關(guān)人員。在歐洲空間標(biāo)準(zhǔn)ECSS-E-70Part1A中明確定義了地面段的概念,即包括為工程任務(wù)執(zhí)行和準(zhǔn)備的所有地面設(shè)施及相關(guān)人員。赫歇爾科學(xué)地面段由科學(xué)中心(HSC)、3個(gè)專用儀器控制中心(ICCs)、任務(wù)操作中心(MOC)組成。圖1顯示了赫歇爾科學(xué)地面段的主要結(jié)構(gòu)及其與系統(tǒng)其他部分的關(guān)系。
由于赫歇爾空間天文臺(tái)的3個(gè)儀器和科學(xué)中心分別位于不同的國(guó)家,為了使地面段能夠整體有效地工作,赫歇爾公共科學(xué)系統(tǒng)(Herschel Common Science System, HCSS)被研制出來,用于實(shí)現(xiàn)各個(gè)載荷需要的功能等,它是赫歇爾地面系統(tǒng)的重要組成部分。赫歇爾公共科學(xué)系統(tǒng)是作為所有與赫歇爾操作相關(guān)的信息、數(shù)據(jù)、軟件的公共庫(kù)。同時(shí)它是所有赫歇爾用戶獲取數(shù)據(jù)和進(jìn)行通信的基礎(chǔ)結(jié)構(gòu)[6]。公共科學(xué)系統(tǒng)與赫歇爾各系統(tǒng)的數(shù)據(jù)流交互圖見圖2。
圖1 赫歇爾科學(xué)地面段的主要結(jié)構(gòu)
Fig.1 Illustration of the structure of the Herschel Science Ground Segment (HSGS)
圖2 公共科學(xué)系統(tǒng)與赫歇爾各系統(tǒng)的數(shù)據(jù)流
Fig.2 Illustration of data flows between the HCSS and other systems
3個(gè)儀器控制中心分別監(jiān)視各自儀器行為,分析與發(fā)布定標(biāo)數(shù)據(jù)產(chǎn)品,赫歇爾科學(xué)中心規(guī)劃和維護(hù)系統(tǒng)的科學(xué)觀測(cè)日程,任務(wù)中心則維護(hù)與衛(wèi)星的通訊。儀器控制中心、科學(xué)中心、任務(wù)中心和天文學(xué)家通過赫歇爾公共科學(xué)系統(tǒng)進(jìn)行數(shù)據(jù)的交互,實(shí)現(xiàn)各自的任務(wù)要求。
2.1 赫歇爾公共科學(xué)系統(tǒng)軟件過程模型
赫歇爾公共科學(xué)系統(tǒng)全程支持星上載荷儀器的設(shè)計(jì)制造、測(cè)試、集成聯(lián)試、在軌測(cè)試以及日常運(yùn)行各個(gè)階段,從根本上決定了不可能采用瀑布模型,而是采用了在中小項(xiàng)目中常用的迭代模型。赫歇爾公共科學(xué)系統(tǒng)開發(fā)過程要經(jīng)歷一個(gè)從先啟階段->精化階段->構(gòu)建階段->移交階段的過程(開發(fā)周期)[7],見圖3。在先啟階段主要關(guān)注建立系統(tǒng)的范圍和整體需求;精化階段進(jìn)一步定義需求、分析問題域、建
立架構(gòu)基線并且識(shí)別主要風(fēng)險(xiǎn);構(gòu)建階段把可運(yùn)行的架構(gòu)基線,經(jīng)過一系列的迭代循環(huán),開發(fā)出完整的系統(tǒng);移交階段則是為項(xiàng)目最終交付做準(zhǔn)備。在迭代過程中的每一個(gè)生命周期階段都經(jīng)過需求、分析、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試以及發(fā)布的過程。
圖3 迭代模型開發(fā)階段
Fig.3 A list of stages in developing an iterative model
赫歇爾公共科學(xué)系統(tǒng)開發(fā)方式最大的創(chuàng)新之一就是支持赫歇爾整個(gè)生命周期的所有活動(dòng)。赫歇爾公共科學(xué)系統(tǒng)的開發(fā)與載荷儀器的研發(fā)測(cè)試是并行同步開展的。系統(tǒng)在有效載荷研制階段、整星集成和聯(lián)調(diào)階段、在軌測(cè)試階段、日常運(yùn)行階段以及項(xiàng)目結(jié)束后的長(zhǎng)期成果保存階段,都為各種用戶提供一致的交互支持,實(shí)現(xiàn)赫歇爾公共科學(xué)系統(tǒng)在項(xiàng)目研制周期的各個(gè)階段實(shí)現(xiàn)平滑過渡。這樣做的好處一方面提高了軟件的兼容性,提高軟件的利用率;另一方面儀器研發(fā)人員和科學(xué)家從一開始就可以得到全面的操作訓(xùn)練,降低了在軌運(yùn)行時(shí)人為的操作失誤,同時(shí)地面軟件也能在開發(fā)過程中通過真實(shí)的數(shù)據(jù)不斷測(cè)試和改進(jìn),能最大程度地保證飛行器任務(wù)的順利執(zhí)行。
2.2 赫歇爾公共科學(xué)系統(tǒng)軟件開發(fā)策略
赫歇爾公共科學(xué)系統(tǒng)在開發(fā)過程中采用分支開發(fā)的策略,在每個(gè)迭代周期內(nèi)同時(shí)維護(hù)幾個(gè)版本的并行發(fā)開,測(cè)試與代碼開發(fā)并行。其中進(jìn)化開發(fā)代碼線總是不斷地繼續(xù)向前,分支開發(fā)代碼線則在每個(gè)迭代周期的代碼凍結(jié)后順序進(jìn)入穩(wěn)定化,測(cè)試以及維護(hù)階段。采用這個(gè)策略,版本i在穩(wěn)定化、測(cè)試及維護(hù)階段后,后續(xù)版本的i+1的開發(fā)計(jì)劃和實(shí)施可以不受終端的影響,繼續(xù)執(zhí)行。
圖4 分支開發(fā)策略
Fig.4 Illustration of the method of branched development
為了盡量減少維護(hù)多版本造成的版本混亂,赫歇爾公共科學(xué)系統(tǒng)在一個(gè)迭代周期里只維護(hù)兩個(gè)版本,一個(gè)開發(fā)版本和一個(gè)分支版本。
2.2.1 開發(fā)版本要求
當(dāng)?shù)?jì)劃確定后,開發(fā)代碼不需要等待配置管理委員會(huì)(Configuration Control Board, CCB)的任何批準(zhǔn),只需按照迭代計(jì)劃持續(xù)演進(jìn)。當(dāng)新的需求被受理接收后,根據(jù)其優(yōu)先級(jí)別被分配到要進(jìn)行的一個(gè)迭代中,等到相應(yīng)的迭代計(jì)劃開始時(shí),才在開發(fā)版本中進(jìn)行變更,值得注意的是開發(fā)版本是更新所有的新需求的唯一入口。
2.2.2 分支版本要求
當(dāng)開發(fā)版本的要求可以滿足測(cè)試計(jì)劃的要求時(shí),配置管理員建立分支基線將分支從開發(fā)主線上脫離,形成分支版本。分支版本的活動(dòng)主要包括測(cè)試、維護(hù)以及有限的修改變更。
測(cè)試活動(dòng)包括:系統(tǒng)端到端測(cè)試、數(shù)據(jù)處理流水線功能測(cè)試以及最終用戶接受測(cè)試。測(cè)試過程中發(fā)生的問題修改必須由相應(yīng)的配置管理委員會(huì)批準(zhǔn)后執(zhí)行,且必須通過補(bǔ)丁流程提交修改申請(qǐng)。只有是軟件錯(cuò)誤的修復(fù)問題才能在分支版本中執(zhí)行。
當(dāng)測(cè)試和修復(fù)完成后,經(jīng)配置管理委員會(huì)批準(zhǔn)此版本的發(fā)布和安裝,分支版本始終是發(fā)布新版本的唯一渠道。
這種設(shè)計(jì)開發(fā)與測(cè)試既獨(dú)立又重疊的開發(fā)方式,優(yōu)化了項(xiàng)目計(jì)劃,使得資源合理應(yīng)用,并且大大縮短了赫歇爾項(xiàng)目的研制周期。
赫歇爾空間天文臺(tái)項(xiàng)目的參與者來自十幾個(gè)不同的國(guó)家,其項(xiàng)目管理的難度可想而知。赫歇爾科學(xué)地面段在項(xiàng)目管理組織的領(lǐng)導(dǎo)下,通過十多年的開發(fā)過程,在把握管理用戶需求、確定項(xiàng)目范圍、控制項(xiàng)目規(guī)模、進(jìn)行質(zhì)量和進(jìn)度的管理、配置管理、系統(tǒng)確認(rèn)和驗(yàn)證以及風(fēng)險(xiǎn)管理等方面積累了豐富的經(jīng)驗(yàn)和實(shí)踐總結(jié),其中極具特色的當(dāng)屬項(xiàng)目計(jì)劃的制定與管理和需求管理。
3.1 赫歇爾公共科學(xué)系統(tǒng)軟件項(xiàng)目管理計(jì)劃(Software Project Management Plan, SPMP)
赫歇爾科學(xué)地面段從系統(tǒng)的角度對(duì)地面系統(tǒng)和星上載荷儀器進(jìn)行統(tǒng)一的規(guī)劃和系統(tǒng)的管理,合理制定計(jì)劃,地面系統(tǒng)和衛(wèi)星系統(tǒng)的工作相互交叉和影響,調(diào)動(dòng)起雙方研制人員的主觀能動(dòng)性,充分參與到對(duì)方的開發(fā)工作中,實(shí)現(xiàn)地面系統(tǒng)支持各個(gè)階段的測(cè)試工作。
在項(xiàng)目初期,赫歇爾科學(xué)地面段就確定軟件計(jì)劃,包括通過工作分解結(jié)構(gòu)(Work Breakdown Structure, WBS)識(shí)別任務(wù)階段,定義科學(xué)地面段組織結(jié)構(gòu)及團(tuán)隊(duì)職責(zé),制定項(xiàng)目計(jì)劃的可行性檢查方案。需要說明的是軟件項(xiàng)目管理計(jì)劃并不是一成不變的,而是允許在開發(fā)過程不斷地演進(jìn)和細(xì)化,比如進(jìn)度的調(diào)整和迭代計(jì)劃等。
(1)任務(wù)階段的識(shí)別和統(tǒng)一
從項(xiàng)目一開始,項(xiàng)目管理組就從系統(tǒng)的層面將地面系統(tǒng)的研制流程納入開發(fā)計(jì)劃中,將地面系統(tǒng)的任務(wù)與工程大系統(tǒng)的研制任務(wù)同步,將其分為9個(gè)任務(wù)階段,分別是:
?載荷儀器測(cè)試階段(ILT):主要測(cè)試儀器的功能、環(huán)境和科學(xué)表現(xiàn);
?系統(tǒng)測(cè)試階段(IST):驗(yàn)證儀器的功能以及儀器之間的兼容性;
?地面段測(cè)試階段:地面中心為獨(dú)立的飛行操作做準(zhǔn)備;
?發(fā)射和早期軌道階段:科學(xué)負(fù)載關(guān)閉;
?試運(yùn)行階段:包括航天器和儀器試運(yùn)行;
?定標(biāo)和性能驗(yàn)證階段:可以獲得所有儀器的飛行性能數(shù)據(jù);
?科學(xué)演示階段:總結(jié)在性能驗(yàn)證階段獲得的結(jié)果和知識(shí);
?常規(guī)運(yùn)行階段:用于獲得赫歇爾的運(yùn)行活動(dòng)的數(shù)據(jù);
?后任務(wù)階段:包括綱要監(jiān)控階段、任務(wù)鞏固階段、主要存檔階段和存檔鞏固階段。
通過9個(gè)階段的劃分,地面系統(tǒng)在各個(gè)階段的任務(wù)一目了然,根據(jù)每個(gè)階段的任務(wù)安排制定迭代計(jì)劃,支持各個(gè)階段的測(cè)試工作,不僅使得地面系統(tǒng)的研制與星上設(shè)備同步運(yùn)行,同時(shí)通過不斷地提交迭代版本進(jìn)行載荷和集成的測(cè)試,逐步完善地面系統(tǒng)。
(2)各團(tuán)隊(duì)職責(zé)的明確
赫歇爾公共科學(xué)系統(tǒng)由科學(xué)中心(HSC)和3個(gè)儀器控制中心(ICC)共同開發(fā)。不同于國(guó)內(nèi)空間項(xiàng)目,赫歇爾公共科學(xué)系統(tǒng)在不同任務(wù)階段,其用戶角色是不同的。這些用戶角色分為兩類。一類是使用赫歇爾公共科學(xué)系統(tǒng),并把它作為一個(gè)科學(xué)系統(tǒng),例如:幫助開發(fā)和測(cè)試儀器,要求和執(zhí)行赫歇爾觀測(cè)、生成、存儲(chǔ)和分析數(shù)據(jù)等,包括儀器控制中心、科學(xué)中心、任務(wù)控制中心以及天文學(xué)家等。另一類是軟件工程用戶角色,負(fù)責(zé)系統(tǒng)設(shè)計(jì)、開發(fā)、維護(hù)、測(cè)試和集成等[8]。
圖5 地面系統(tǒng)在各個(gè)階段的平滑過渡
Fig.5 Illustration of realization of smooth transitions between different development stages in the ground segment
圖6 各任務(wù)階段用戶角色交互
Fig.6 Illustration of interactions between the roles of users that are in different mission stages
赫歇爾公共科學(xué)系統(tǒng)根據(jù)不同任務(wù)階段的需要,與不同系統(tǒng)的用戶進(jìn)行交互。在儀器測(cè)試階段和集成測(cè)試階段,與儀器控制中心的儀器工程師進(jìn)行交互,分別用于3臺(tái)儀器的測(cè)試和驗(yàn)證3臺(tái)儀器的集成是否被成功執(zhí)行。在常規(guī)運(yùn)行階段,與儀器控制中心、任務(wù)控制中心、科學(xué)中心和天文學(xué)家進(jìn)行交互,用于常規(guī)運(yùn)行活動(dòng)。在這些任務(wù)中,科學(xué)地面段根據(jù)交互測(cè)試和運(yùn)行的結(jié)果,決定是否需要更改新的需求或者是進(jìn)行修復(fù)。通過這樣的方式,不斷輸送迭代出的滿足計(jì)劃要求的軟件版本,有效地將赫歇爾公共科學(xué)系統(tǒng)參與到系統(tǒng)各個(gè)任務(wù)階段的測(cè)試當(dāng)中。
3.2 需求管理
赫歇爾公共科學(xué)系統(tǒng)另一特色是永無(wú)停止的需求開發(fā)過程。從研制開始到現(xiàn)在已經(jīng)成功解決了一萬(wàn)多個(gè)問題,發(fā)射4年來包含幾百萬(wàn)源代碼的處理軟件已經(jīng)演進(jìn)了10個(gè)版本。雖然飛行器已經(jīng)停止運(yùn)行,但是需求還是不斷地被提出、被分析、被處理??茖W(xué)地面段之所以能夠第一時(shí)間高效地進(jìn)入工作狀態(tài),與其科學(xué)的需求管理是分不開的。
3.3 基于用例的需求開發(fā)方式
考慮到以傳統(tǒng)的軟件需求規(guī)格說明來描述系統(tǒng)的需求,非常容易混淆需求和設(shè)計(jì)的界限,而且這種方法分割了各項(xiàng)系統(tǒng)功能的應(yīng)用環(huán)境,從各項(xiàng)功能入手,很難了解這些功能項(xiàng)是依靠怎樣的相互關(guān)聯(lián)完成系統(tǒng)目標(biāo)的問題[9],赫歇爾科學(xué)地面段軟件需求管理不同于國(guó)內(nèi)空間項(xiàng)目的管理方式,采用基于用例描述需求的開發(fā)方式。這種基于用例需求的方法完全是站在用戶的角度上(從系統(tǒng)的外部)描述系統(tǒng)的功能,大大幫助開發(fā)人員和用戶之間針對(duì)系統(tǒng)需求的溝通。
首先根據(jù)先啟階段定義項(xiàng)目前景文檔,識(shí)別可能用例的用戶和系統(tǒng),定義系統(tǒng)的技術(shù)需求,然后收集確定客戶和其他相關(guān)人員的需要和特性,形成用例模型。赫歇爾公共科學(xué)系統(tǒng)的用例模型都是在精化階段產(chǎn)生,包括:用戶角色描述文檔,用例文檔和補(bǔ)充需求文檔,識(shí)別各個(gè)任務(wù)階段的所有角色,并且描述了各用戶與赫歇爾公共科學(xué)系統(tǒng)以及數(shù)據(jù)處理模塊之間的交互關(guān)系[10-11]。赫歇爾公共科學(xué)系統(tǒng)根據(jù)這些頂層文檔,進(jìn)一步明確系統(tǒng)規(guī)模,細(xì)化用戶需要特性、用例需求和工作流程?;谟美男枨箝_發(fā),有助于識(shí)別和追蹤用戶需要和相關(guān)用例需求的屬性,各需求的依賴關(guān)系和需求的可追蹤性。
3.4 赫歇爾科學(xué)地面段需求管理
赫歇爾科學(xué)地面的需求管理是完全開放的,并且采用積極擁抱變化的策略。任何人在任何時(shí)候都可以提出新的需求,無(wú)論需求合不合理,只要需求被提出,相關(guān)責(zé)任人都會(huì)在最短的時(shí)間對(duì)新需求的提出做出回應(yīng)。赫歇爾成功發(fā)射距今已經(jīng)有5年之久,至今還是有需求不斷被提出、分析、修改和維護(hù)。到目前為止,仍然沒有一份完整齊全的最終固化的需求用例被確定,需求始終處于一個(gè)變化的狀態(tài)。
這樣看似雜亂無(wú)章的管理方式在國(guó)內(nèi)空間項(xiàng)目中幾乎不可能出現(xiàn)。國(guó)內(nèi)空間項(xiàng)目往往是在項(xiàng)目初期就確立了所有的需求,發(fā)生變更是非常少見的,尤其是到研制階段的后期,一旦發(fā)生變更,費(fèi)時(shí)費(fèi)力,而且風(fēng)險(xiǎn)巨大。而赫歇爾科學(xué)地面段卻以開放的管理模式處理了超過17 000條的變更請(qǐng)求,其
主要原因就是它采用了合理的變更管理流程(圖7)和基于缺陷跟蹤管理系統(tǒng)的管理。
(1)變更管理流程
系統(tǒng)的變更(包括新需求)可以由科學(xué)地面段開發(fā)團(tuán)隊(duì)、載荷儀器控制中心和項(xiàng)目科學(xué)團(tuán)隊(duì)成員提出,同時(shí)分配給相關(guān)開發(fā)團(tuán)隊(duì)成員,進(jìn)行初步調(diào)查研究,目標(biāo)是分析實(shí)施變更對(duì)技術(shù)、開支、進(jìn)度的影響。技術(shù)影響的分析包括哪些工作產(chǎn)品會(huì)受影響、實(shí)施變更以及驗(yàn)證所有被影響的交付物所需要的努力的估算。一旦調(diào)查研究完成,由配置管理委員會(huì)評(píng)估做出安排,接受或者拒絕。
一旦變更請(qǐng)求被接受,變更請(qǐng)求的實(shí)施和驗(yàn)證會(huì)以和其他工作項(xiàng)一樣的方式,根據(jù)其優(yōu)先級(jí)別被分配到要進(jìn)行的一個(gè)迭代中,相應(yīng)的迭代計(jì)劃和測(cè)試計(jì)劃也做出更新。在進(jìn)行項(xiàng)目迭代計(jì)劃時(shí),回顧積壓的變更請(qǐng)求列表,設(shè)定工作的優(yōu)先級(jí),決定下一步實(shí)施哪些變更。這樣的流程使得發(fā)生的變更可以井然有序的按照迭代計(jì)劃進(jìn)行,而不會(huì)出現(xiàn)版本的混亂。
圖7 變更管理流程
Fig.7 Illustration of change of the management process
(2)基于缺陷跟蹤管理系統(tǒng)的管理
赫歇爾科學(xué)地面段需求的變更是基于缺陷跟蹤管理系統(tǒng)進(jìn)行管理,所有的變更記錄都在缺陷跟蹤管理系統(tǒng)中,包括請(qǐng)求、分析、接受或拒絕、實(shí)施、驗(yàn)證和關(guān)閉。在缺陷跟蹤管理系統(tǒng)中,要求記錄每一個(gè)需求的變更請(qǐng)求的狀態(tài),包括:ID(缺陷跟蹤管理系統(tǒng)自動(dòng)分配)、簡(jiǎn)要描述、詳細(xì)描述、影響、嚴(yán)重性以及優(yōu)先級(jí)(圖8)。
圖8 缺陷跟蹤管理系統(tǒng)的issue狀態(tài)
Fig.8 A display of the Issue state of the JIRA
赫歇爾科學(xué)地面段所有的系統(tǒng)變更過程使用工作項(xiàng)列表的方式記錄在缺陷跟蹤管理系統(tǒng)平臺(tái)中,便于系統(tǒng)變更的捕獲、設(shè)定優(yōu)先級(jí)和跟蹤變更請(qǐng)求。缺陷跟蹤管理系統(tǒng)的使用極大地減少與變更管理和可跟蹤性相關(guān)的資源消耗。
赫歇爾科學(xué)地面段軟件開發(fā)管理方法是在赫歇爾項(xiàng)目長(zhǎng)達(dá)十幾年的開發(fā)過程中,同時(shí)在歐洲空間合作標(biāo)準(zhǔn)化(European Cooperation For Space Standardization, ECSS)的框架下,不斷總結(jié)改進(jìn)的軟件工程方法。如何借鑒赫歇爾科學(xué)地面段先進(jìn)的軟件開發(fā)管理方法,結(jié)合國(guó)內(nèi)空間項(xiàng)目的特點(diǎn),能夠合理地應(yīng)用到軟件項(xiàng)目中,還需要繼續(xù)深入研究,在實(shí)踐中不斷提高。
[1] 黃慧明. 我國(guó)第一代中繼衛(wèi)星地面應(yīng)用系統(tǒng)發(fā)展建設(shè)的思考[J].飛行器測(cè)控學(xué)報(bào), 2012, 31(5): 1-5. Huang Huiming. Reflections on development of the ground system of the first generation CTDRSS[J]. Journal of Spacecraft TT & C Technology, 2012, 31(5): 1-5.
[2] 陳寧. 地面應(yīng)用系統(tǒng): “嫦娥”的數(shù)據(jù)處理中心[J]. 國(guó)防科技工業(yè), 2010(10): 40-41.
[3] 許文. “雙軌制”時(shí)期對(duì)科技文件管理工作的思考[J]. 航天制造技術(shù), 2012(3): 67-69. Xu Wen. On the managing work of scientific and technical files during the “double-track pricing system”[J]. Aerospace Manufacturing Technology, 2012(3): 67-69.
[4] 施寧. 中國(guó)航天型號(hào)工程項(xiàng)目管理若干問題研究[D]. 北京: 對(duì)外經(jīng)貿(mào)大學(xué), 2003.
[5] Ott S. Developing a data processing system for a world-class observatory: sharing the Herschel experience[EB/OL]. [2015-01-23]. http://colloquium.bao.ac.cn/sites/default/files/PPT_NAOC%20colloquium_No.68.2012_Dr.Stephan%20Ott.pdf.
[6] Roelfsema P. Designing for software reuse-the Herschel common science system[EB/OL].[2015-01-23]. http://www.ercim.eu/publication/Ercim_News/enw65/roelfsema.html.
[7] 畢特納, 思朋斯. 迭代軟件開發(fā)項(xiàng)目管理[M]. 羅景文, 羅燦鋒, 張弘毅, 譯. 北京: 清華大學(xué)出版社. 2010.
[8] Brumfitt J, Z?schke T. Herschel common science system overall architecture and design[EB/OL]. 2007[2015-01-23]. http://herschel.esac.esa.int/hcss-doc-13.0/load/hcss_drm/design/architecture.html.
[9] 肖瑾. 基于用例的軟件需求管理研究[J]. 核動(dòng)力工程, 2009, 30(S2): 79-83+99. Xiao Jin. Software requirements management based on use cases[J]. Nuclear Power Engineering, 2009, 30(S2): 79-83+99.
[10]HCSS Development Team. Herschel common science system: use case definitions[EB/OL]. 2006[2015-01-23]. https://home.sron.nl/j/Hifi/User/ccadm/0068.pdf.
[11]HCSS Development Team. Herschel common science system: actor descriptions[EB/OL]. 2006[2015-01-23]. https://home.sron.nl/j/Hifi/User/ccadm/0058.pdf.
A Study of the Method for Software-Development Managementof the Herschel Science Ground Segment
Zhang Jie, Huang Maohai
(National Astronomical Observatories, Chinese Academy of Sciences, Beijing 100012, China, Email: mhuang@nao.cas.cn)
Currently project software managements for space observatories in China adopt methods based on the waterfall model and the requirement management for long-term fixed requirements. These methods cannot meet the demand to develop complex systems for ground-based applications of spaced-based observation. In this paper we present a study of the method of software-development management for the Herschel Science Ground Segment (HSGS), which is a first-class successful model of software-development management of the world. The HSGS uses the method of branched development. Based on an iterative model the method of branched development adopts the Software Project Management Plan (SPMP), which is practically reasonable and applicable. The implementation of the method in the HSGS synthetically meets the requirements of the HSGS and the payloads of the entire project. The method is an open-management approach capable of incorporating application requirements in practically emerging use cases. With the method the HSGS changes the conventional situation that a system for ground-based applications is developed at the final stage of a project of a spaced-based observatory. Instead, the HSGS works right from the payload-development stage, and it is frequently adjusted to meet changing requirements. The HSGS can thus always support data-analysis systems highly efficiently. The instrument engineers and scientists can accept training of operation of the scientific instruments from the start of the project to reduce chances for operational mistakes. Meanwhile, the software in the HSGS can be improved in the course of operations to ensure mission success. The merits of the HSGS are absent in managements of Chinese space projects. Our study of the HSGS shows a new method and a new line of thoughts for software-engineering managements of space-observatory projects in China.
Space astronomy; Software-development management; Process model; Iterative model; Requirement management; Use cases
中國(guó)科學(xué)院戰(zhàn)略性先導(dǎo)科技專項(xiàng) (XDA04080300) 資助.
2014-08-09;修定日期:2014-09-14 作者簡(jiǎn)介:張 潔,女,助理研究員. 研究方向:空間天文技術(shù)方法. Email: zhangjie@nao.cas.cn 通訊作者:黃茂海,男,研究員. 研究方向:天文技術(shù)與方法. Email: mhuang@nao.cas.cn
V556; TP311
A
1672-7673(2015)02-0212-07