一種軟體生產線平臺的實現方法
2023-08-04 05:27:41 3
專利名稱:一種軟體生產線平臺的實現方法
技術領域:
本發明涉及計算機應用技術領域,具體地說是一種基於TestDirector和 Harvest/subversion軟體生產線平臺的實現方法
2背景技術:
許多軟體公司,因為管理需要,會採購各式各樣的配置管理工具、需求管理工具和缺陷管理 工具,但這些工具基本上都是各廠家基於自己不同的關注視角獨立開發的,所以工具內的信息 基本上是不斷裂的、重複的、不一致的,給研發度量和管理帶來很大的難度;當然,也有廠家 提供成套產品,但目前來看,仍有很多的缺點,例如價格一般非常昂貴,雖然部分信息同步, 但大部分數據仍然是分開存放的,很難建立全維度的分析模型。
我們認為, 一個好的軟體生產線平臺,首先應該是有一套優秀的全生命周期、多視角的研發 管理方法論,其次才是有一個與之配套的可以隨需應變的信息系統作為輔助支撐,目前還未有 一個優秀的全生命周期、多視角的用於研發和管理的軟體生產線平臺。
發明內容
本發明的目的是充分利用軟體企業中常見的工具,提供一個能夠充分利用現有的工具和企 業資產,儘量減少重複性投資的軟體生產線平臺的實現方法。
目前,很多軟體研發組織都使用TestDirector作為自己的缺陷管理工具,用Harvest或者 subversion作為自己的配置、版本管理工具,根據以上因素的出發,我們提出了建立"基於 TestDirector和Harvest/subversion的軟體生產線平臺"的實現方法。
本發明的方法是按以下方式實現的,通過梳理軟體研發過程中的信息標準、信息流向和信息 依賴關係,制定出統一的缺陷、變更和配置管理使用規範,建立統一質量度量和統計分析的基 礎,形成產品質量和過程質量度量模型,並提供配套的軟體研發協同管理系統進行實現支持, 將TestDirector、 Harvest或Subversion進行服務連通、規則映射和信息同步,完成研發過程 的需求管理、配置管理、變更管理、發布管理、項目管理、缺陷管理的多維度數據釆集,形成 全生命周期的軟體企業資產庫; 具體步驟如下
1)產品質量和過程質量度量模型的主線是從需求管理開始,所有來自外部的客戶反饋、客 戶諮詢、客戶發現的缺陷、客戶提出的變更,連同內部的研發任務、新的需求特性統稱為"變 更任務請求",單獨為每個研發項目建立兩個不同類型的信息庫任務請求庫和缺陷庫,變更 任務請求被錄入到TestDirector的任務請求庫中,任務請求被批准通過後,通過指派人員負責 更改狀態、補充填寫發布版本、預計發布時間、各階段責任人的必要的信息後,軟體生產線平 臺會根據設定的規約自動在配置管理工具中創建對應的任務但並建立任務包和任務請求之間的映射關係;
2) 指派人員對任務包進行處理,根據需要將任務包轉給需求、設計和實現人員,系統將任 務包的處理時長、流轉歷史、設計的工件信息採集到軟體生產線平臺中,並根據設定,更新 TestDirector任務請求庫中對應的變更任務請求;
3) 在需求、設計和實現人員完成對任務包的處理後,系統根據設定的集成規則自動從 harvest或者subversion中提取所涉及的工件進行集成,通過持續集成確保產品的結構正確, 減少後續環節的無用工;
4) 集成通過的產品,根據測試計劃自動發布到測試機中,整個集成和發布過程做到無人值 守,在出現問題時給出詳細的信息提示;
5) 測試人員根據測試計劃安排,對準備發布的版本進行測試,所有測試結果都被計入到 TestDirector的缺陷庫中,缺陷中的"版本"信息記錄下任務包、發布版本和缺陷之間的關係;
6) 某個發布版本達到設定的測試通過標準後,軟體生產線平臺會製作出產品包,統一分發 到各個生產環境中,在分發過程中,如果出現依賴衝突則停止自動升級,記錄升級錯誤留待人 工處理;
7) 設定是否需要支持任務包的遠程確認,如果啟動該設定項,遠程項目實施團隊對分發的 任務包進行驗證,並將驗證結果和發現的缺陷、變更與之前的任務進行關聯綁定,以進行新一 輪的任務變更請求。
任務請求庫、缺陷庫或配置管理工具,都要建立對應的使用規範和信息標準,如流程、表單、 欄位、關聯關係、欄位屬性和欄位選項,以便以統一口徑進行數據採集和統計分析,在上述工 具中的原始設計問題不能統一的,需要建立映射關係。
在度量模型中建立起度量指標,例如順延率、處理周期或信息不規範率,並完成自動的數據 採集分析,定期出統計報告。
建立項目管理數據,記錄項目預估數據,並自動採集項目中針對任務的實際數據,用數據進 行度量。
對Harvest和svn進行服務抽象,確定信息接口,軟體研發團隊根據自身需要進行工具的切換。
配置管理使用規範包括流程、表單、欄位、角色、權限和規約。 工件是是指原始碼,配置文件、升級腳本和升級手冊。
本發明的有益效果是可以顯著提高項目管理的準確度,提高效率,降低運營成本。 本發明的軟體生產平臺,主要應用於軟體開發組織中,屬於企業信息資產庫的組成部分, 通過指定可實施的方法論和信息標準,結合配套的信息系統,完成軟體研發企業的生產和管理。
具體實施例方式
本發明可以在任何使用TestDirector的軟體開發組織中推廣使用,如果該組織沒有使用 Harvest作為配置管理工具,可以使用開源的Subversion產品。
配套開發的信息系統,可以使用任何常見的資料庫作為信息存儲單元。
TestDirector、 Harvest和subversion可以外提供一些基本的二次開發接口 ,而且,根據 需要如果有取不到的信息,可以直接訪問資料庫。我們可以根據度量模型和生產線模型的信息 標準,對這些工具進行二次包裝,並且為了保證可伸縮性,將其暴露成WebService接口。
這樣,TestDirector的任務請求庫對外暴露管理變更任務請求的接口, Harvest暴露管理 任務包的接口, TestDirecotr的缺陷庫對外暴露缺陷接口。配套的信息系統針對這些接口進行 服務連通、規則映射和信息同步,並可以結合郵件、即時消息進行消息通知。
建立一套可實施的全生命周期的軟體生產線平臺,該平臺包括一個度量模型、 一個產品線 模型(包括流程、表單、欄位等相對應的信息標準規範)和配套的信息系統。依賴於得到最廣 泛使用的缺陷管理工具TestDirector,在配置/版本管理工具方面,可以使用久負盛名的CA Harvest,也可以選擇使用成熟的開源產品Subversion,這樣會極大的增加該項發明的應用機會。 其主要設計思路是將需求管理、配置管理、變更管理、發布管理、項目管理、缺陷管理的信息 模型提取出來,並建立細化的信息規範和信息標準,在不影響工作或者無覺察的情況下,將各 類研發角色的工作數據有效採集到軟體生產線平臺中,解決軟體研發過程中缺乏數據採集和數 據度量的"拍腦門"決策現狀。具體實現步驟如下
1) 該信息模型的主線是從需求管理開始,對於一個研發團隊而言,所有來自外部的客戶反 饋、客戶諮詢、客戶發現的缺陷、客戶提出的變更,連同內部的研發任務、新的需求特性都被 稱為"變更任務請求"。我們單獨為每個研發項目建立兩個不同類型的信息庫任務請求庫和 缺陷庫,變更任務請求被錄入到TestDirector的任務請求庫中。任務請求被批准通過後,由專 人負責更改狀態、補充填寫必要的信息(如發布版本、預計發布時間、各階段的責任人等), 軟體生產線平臺會根據設定的規約自動在配置管理工具中創建對應的任務包,指派負責人,並 建立任務包和任務請求之間的映射關係。
2) 被指派的負責人對任務包進行處理時,會將涉及到的工件與任務包進行關聯,處理完畢 後,會根據需要將任務包轉給其他角色的負責人,這時,系統會將任務包的處理時長、流轉歷 史、設計的工件信息採集到軟體生產線平臺中,並根據設定的更新TestDirector任務請求庫中 對應的變更任務請求。
3) 在需求、設計和實現人員完成對任務包的處理後,系統根據設定的集成規則自動從 harvest或者subversion中提取所涉及的工件(原始碼,配置文件、升級腳本、升級手冊等) 進行集成,通過持續集成確保產品的結構正確,減少後續環節的無用工。
4) 集成通過的產品,會根據測試計劃,自動發布到測試機中,整個集成和發布的過程儘量 做到無人值守,在出現問題時,也會給出詳細的信息提示。
5) 測試人員根據測試計劃安排,對某個準備發布的版本進行測試,測試的所有結果都被計 入到TestDirector的缺陷庫中,缺陷中的"版本"信息記錄下任務包、發布版本和缺陷之間的 關係。
6) 某個發布版本達到設定的測試通過標準後,軟體生產線平臺會製作出產品包(升級包、 補丁包或者完整包),統一分發到各個生產環境中。各個產品包之間可能存在依賴關係,在分發過程中,如果出現依賴衝突,會停止自動升級,記錄升級錯誤,並留待人工處理。
根據項目情況,設定是否需要支持任務包的遠程確認,如果啟動該設定項,那麼遠程項目 實施團隊會對分發的任斧包進行驗證,並將驗證結果和發現的缺陷、變更等與之前的任務進行 關聯綁定,以進行新一輪的任務變更請求。
無論是任務請求庫、缺陷庫還是配置管理工具,都要建立對應的使用規範和信息標準(流 程、表單、欄位、關聯關係、欄位屬性、欄位選項等),以便以統一口徑進行數據採集和統計 分析。在上述工具中應原始設計問題,不能統一的,需要建立映射關係。
在度量模型中建立起度量指標,例如,順延率、處理周期、信息不規範率等,並完成自動 的數據釆集分析,定期出統計報告
補充說明的是:對Harvest和svn進行服務抽象,確定信息接口,軟體研發團隊可以根據 自身需要進行工具的切換。
可以建立起項目管理數據,記錄項目預估數據,並自動採集項目中針對任務的實際數據,用 數據進行度量,項目決策的準確度提升、工作效率的提髙和運營成本的下降將是顯著可見的。
項目實施團隊非常關心提出的需求變更的回覆速度、處理質量;而核心研發團隊非常關注 的是產品包發到項目現場後,項目的發布周期和驗證周期,因為很多變更任務請求雖然提出得 很急,但真正發布到項目後,項目實施團隊可能會壓很長的時間才發布。這個時候,就需要用 度量模型來採集變更任務周期的回覆率,回復周期和處理周期、驗證周期等,作為下次評估項 目提出來的任務請求的處理優先級的依據。
權利要求
1、一種軟體生產線平臺的實現方法,其特徵在於,通過梳理軟體研發過程中的信息標準、信息流向和信息依賴關係,制定出統一的缺陷、變更和配置管理使用規範,建立統一質量度量和統計分析的基礎,形成產品質量和過程質量度量模型,並提供配套的軟體研發協同管理系統進行實現支持,將TestDirector、Harvest或Subversion進行服務連通、規則映射和信息同步,完成研發過程的需求管理、配置管理、變更管理、發布管理、項目管理、缺陷管理的多維度數據採集,形成全生命周期的軟體企業資產庫;具體步驟如下1)產品質量和過程質量度量模型的主線是從需求管理開始,所有來自外部的客戶反饋、客戶諮詢、客戶發現的缺陷、客戶提出的變更,連同內部的研發任務、新的需求特性統稱為「變更任務請求」,單獨為每個研發項目建立兩個不同類型的信息庫任務請求庫和缺陷庫,變更任務請求被錄入到TestDirector的任務請求庫中,任務請求被批准通過後,通過指派人員負責更改狀態、補充填寫發布版本、預計發布時間、各階段責任人的必要的信息後,軟體生產線平臺會根據設定的規約自動在配置管理工具中創建對應的任務包並建立任務包和任務請求之間的映射關係;2)指派人員對任務包進行處理,根據需要將任務包轉給需求、設計和實現人員,系統將任務包的處理時長、流轉歷史、設計的工件信息採集到軟體生產線平臺中,並根據設定,更新TestDirector任務請求庫中對應的變更任務請求;3)在需求、設計和實現人員完成對任務包的處理後,系統根據設定的集成規則自動從harvest或者subversion中提取所涉及的工件進行集成,通過持續集成確保產品的結構正確,減少後續環節的無用工;4)集成通過的產品,根據測試計劃自動發布到測試機中,整個集成和發布過程做到無人值守,在出現問題時給出詳細的信息提示;5)測試人員根據測試計劃安排,對準備發布的版本進行測試,所有測試結果都被計入到TestDirector的缺陷庫中,缺陷中的「版本」信息記錄下任務包、發布版本和缺陷之間的關係;6)某個發布版本達到設定的測試通過標準後,軟體生產線平臺會製作出產品包,統一分發到各個生產環境中,在分發過程中,如果出現依賴衝突則停止自動升級,記錄升級錯誤留待人工處理;7)設定是否需要支持任務包的遠程確認,如果啟動該設定項,遠程項目實施團隊對分發的任務包進行驗證,並將驗證結果和發現的缺陷、變更與之前的任務進行關聯綁定,以進行新一輪的任務變更請求。
2、根據權利要求1所述的方法,其特徵在於,任務請求庫、缺陷庫或配置管理工具,都要 建立對應的使用規範和信息標準,如流程、表單、欄位、關聯關係、欄位屬性和欄位選項,以 便以統一口徑進行數據採集和統計分析,在上述工具中的原始設計問題不能統一的,需要建立 映射關係。
3、 根據權利要求1所述的方法,其特徵在於,在度量模型中建立起度量指標,例如順延率、 處理周期或信息不規範率,並完成自動的數據採集分析,定期出統計報告。
4、 根據權利要求3所述的方法,其特徵在於,建立項目管理數據,記錄項目預估數據,並 自動採集項目中針對任務的實際數據,用數據進行度量。
5、 根據權利要求1所述的方法,其特徵在於,對Harvest和svn進行服務抽象,確定信息 接口,軟體研發團隊根據自身需要進行工具的切換。
6、 根據權利要求1所述的方法,其特徵在於,配置管理使用規範包括流程、表單、欄位、 角色、權限和規約。
7、 根據權利要求1所述的方法,其特徵在於,工件是是指原始碼,配置文件、升級腳本 和升級手冊。
全文摘要
本發明提供一種構建基於Test Director、Harvest或Subversion軟體生產線平臺的方法,該方法是通過梳理軟體研發過程中的信息標準、信息流向和信息依賴關係,制定出統一的缺陷、變更和配置管理使用規範(包括流程、表單、欄位、角色、權限、規約等),建立起統一質量度量和統計分析的基礎,形成一套產品質量和過程質量度量模型,並提供配套的軟體研發協同管理系統進行實現支持,將Test Director、Harvest或Subversion進行服務連通、規則映射和信息同步,以完成研發過程的需求管理、配置管理、變更管理、發布管理、項目管理、缺陷管理的多維度數據採集,形成全生命周期的軟體企業資產庫。
文檔編號G06F9/44GK101174208SQ20071011467
公開日2008年5月7日 申請日期2007年11月28日 優先權日2007年11月28日
發明者孫向暉 申請人:山東浪潮齊魯軟體產業股份有限公司