?

基于NESMA方法拆解功能點的任務自動組包與收發包方法及實現

2024-02-20 00:57唐海濤黃絲米
科學與信息化 2024年3期
關鍵詞:發包方承包方工作量

唐海濤 黃絲米

1. 中國電建集團華東勘測設計研究院有限公司 浙江 杭州 311122;

2. 浙江華東工程數字技術有限公司 浙江 杭州 311122;

3. 浙江省工程數字化技術研究中心 浙江 杭州 311122

引言

對于企業信息系統管理而言,前期的任務劃分和任務收發是尤為重要的,在項目初期將整個系統的任務規劃好,可以使得后面的工作開展更為順利?;诖?,本文提出了一種基于NESMA方法拆解功能點的任務自動組包與收發包方法及實現。它按照NESMA方法對軟件項目進行功能拆解[1],最大程度將功能拆解為最有意義的最小活動單元,計算出工作量后以任務的形式進行發包,承包方完成工作后,發包方按照拆分功能進行驗收確認。該方法可以幫助企業更好地對任務進行自動組包和收發包,基于NESMA方法對功能進行拆分可以最大程度的將功能點的顆粒度變細,這對于后期任務的分工和結算幫助很大。

1 NESMA方法簡介

NESMA方法是荷蘭軟件度量協會(Netherlands Software Metrics Association)于1989年提出的,該方法是從用戶角度來估計規模,通過量化與外部數據輸入、輸出或文件類型等有關的功能性處理信息,來度量軟件規模的方法,不去考慮軟件的具體實現[2],NESMA方法作為一種功能規模測量方法已經形成電子行業標準:SJ/T 11619-2016。NESMA方法的操作步驟為:

第一步:識別待估算應用程序的邊界和范圍。

第二步:識別和度量各類型的數據功能,主要包括兩個邏輯文件:內部邏輯文件和外部接口文件。內部邏輯文件為本系統中維護的數據,外部接口文件是由其他外部系統維護,在本系統中引用的數據。

第三步:識別和度量各類型的業務功能,主要包括三個基本過程:外部輸入、外部輸出和外部查詢。外部輸入是對數據進行維護或者改變系統狀態/行為的事務;外部輸出為對數據加工后呈現或輸出的事務;外部查詢為對已有數據直接呈現或輸出的事務。

第四步:設置規模變更因子和規模調整因子。

第五步:估算軟件規模、工作量(人天)和成本。

在NESMA方法理論中,軟件系統功能點是可以作為標準來衡量軟件規模的[3],功能拆解的顆粒度越細,對于后期任務的分工和結算幫助越大,此時功能點就可以作為標準的計量單位,對輔助計算效率、成本有很大作用[4-5]。

2 當前現狀

對于信息系統的項目管理來說,項目前期的任務管理和工作計劃的制定是關鍵,任務的流程和工作量的計劃的定義決定了項目后期的工作開展的順利程度。但是,在現實工作中,軟件系統每個功能的復雜程度不一樣,任務組包很難做到均勻分配,這樣會導致工作量評估不準確,發包工作確認出現多次反復的情況。

目前項目的組包和任務收發包主要采用文檔記錄和人工操作的方法,這種方法存在以下不足:①拆解任務僅憑經驗缺少系統方法,導致對任務包拆解顆粒度粗,收包驗收任務時出現功能遺漏的情況;②在對工作量進行預估時一般采用人工計算的方式,導致計算結果不夠精確,在最終收包時容易出現結算紛爭;③當承包方對任務功能點和工作量提出爭議時,采用傳統方法來調整數據任務量大,時間成本高。

3 設計方案

鑒于上述情況,本文提出了一種基于NESMA方法拆解功能點的任務自動組包與收發包方法及系統。采用NESMA方法對軟件系統進行功能拆解,主要原則是把用戶需求組合或分解為對用戶最有意義的最小活動單元,再根據設置的參數估算軟件規模、工作量(人天)、成本,將拆解的功能點按照系統模塊以任務包的形式自動進行發包。承包方確認無誤后投入人員開展工作,工作完成后發包方依照拆解功能點進行功能驗收,最終根據結果雙方進行結算?;贜ESMA方法拆解功能點的任務自動組包與收發包設計方案包括如下步驟:

3.1 步驟1,基于功能點進行任務組包

基于NESMA方法對項目的功能點進行任務組包,包括功能拆解和評估工作量,其中:

3.1.1 按照NESMA方法對軟件系統的功能進行拆分并完成工作量的評估,主要原則是把用戶需求組合或分解為對用戶最有意義的最小活動單元。

拆解功能主要分為兩步:

第一步:識別的用戶需求和已確定的范圍及邊界,按照功能統計范圍內所有需求集合,一旦確定范圍就可以定義邊界;

第二步:識別和度量各類型的數據功能和業務功能,主要分為兩個邏輯文件和三個基本過程:內部邏輯文件ILF、外部接口文件EIF、外部輸入EI、外部輸出EO、外部查詢EQ。

3.1.2 設置參數用于工作量的計算,參數包括工作量調整參數、工作量比例、成本單價。工作量調整參數指各個角色的預估生產率,工作量比例指各個角色的工作占比,成本單價為各個角色的單日工作成本。

(1)工作量調整參數:研發工程崗位包括需求分析、設計開發、系統測試、運維實施的每個崗位都有各自的生產率C(FP/人日),根據項目實際情況設置各個崗位的生產率。比如:設置需求分析崗位的預估生產率為10FP/人日,設計開發崗位的預估生產率為2FP/人日,系統測試崗位的預估生產率為10FP/人日,運維實施崗位的預估生產率為15FP/人日。

(2)工作量比例:設置研發過程占總工作量的比例。比如:項目管理工作站總工作量的10%,研發工作占總工作量的85%,質量保證工作占總工作量的2.5%,其他工作占總工作量的2.5%。

(2)成本單價:設置各個崗位的成本單價(元/人日)。比如:項目管理崗位成本單價為1300元/人日,所有研發工程崗位成本單價為1250元/人日,質量保證崗位成本單價為1100元/人日。

3.1.3 評估工作量,根據設置的參數,按照NESMA方法估算任務包的工作量(人天)、成本。

3.1.4 對評估完成的功能點和工作量進行任務組包,形成任務包。

3.2 步驟2,發包

基于步驟一中任務包進行發包,包括任務包確認以及投入人員分配。圖1為基于NESMA方法拆解功能點的任務發包的流程圖。承包方收到任務后,對工作量和成本進行確認,確認無誤后開始分配投入人員,投入人員按照功能為基礎開展工作。若承包方對工作量存在異議,則返回發包方對參數進行修改調整。

圖1 基于NESMA方法拆解功能點的任務發包的流程圖

3.3 步驟3,開展工作

承包方按照任務包中的功能開展工作,依次完成功能,并內部進行驗證。

3.4 步驟4,收包

基于功能點進行任務收包,發包方收到承包方任務完成的信息后,對已交付的軟件系統的所有功能點進行驗收,圖2是基于NESMA方法拆解功能點的任務收包的流程圖。在開始進行驗收后,發包方會根據功能點列表,依次驗收功能。當單條功能點驗收結果為不通過時,對該點進行記錄;驗收結果為通過時,直接跳轉到下一條功能點進行驗證。當前整個系統驗證完成后,會通知承包方對不通過的功能列表進行整改,直至承包方整改完成并進行自驗。所有的功能點整改完成,確認無誤后,根據之前預估的軟件規模、工作量(人天)、成本雙方進行結算。

圖2 基于NESMA方法拆解功能點的任務收包的流程圖

4 系統實現

根據上一章節的設計方案實現了基于NESMA方法拆解功能點的任務自動組包與收發包系統,該系統主要包括:功能拆解模塊、工作量評估模塊、發包確認模塊和收包驗收模塊幾大模塊。各模塊具體功能詳細介紹如下:

功能拆解模塊:用于對軟件系統的需求進行功能拆解,根據需求內容按照模塊、功能和類別進行劃分。按照NESMA方法將功能分為:內部邏輯文件ILF、外部接口文件EIF、外部輸入EI、外部輸出EO、外部查詢EQ五種類別。

工作量評估模塊:用于對發包工作量評估計算,其中包括:①參數設置模塊:主要是對NESMA方法中涉及的參數進行賦值,便于后續工作量的計算。參數包括:工作量調整參數、工作量比例、成本單價。②工作量估算模塊:系統根據功能點列表數據及參數設置的基礎數據采用NESMA方法計算整個任務包的工作量。

發包確認模塊:用于發包方和承包方對任務包功能和工作量的確認。

收包驗收模塊:用于發包方對任務包中的功能進行驗收。

該系統已投入使用并幫助公司一百多個項目完成質量提升,圖3為基于NESMA方法拆解功能點的任務自動組包與收發包系統附圖。

圖3 基于NESMA方法拆解功能點的任務自動組包與收發包系統附圖

5 結束語

文中主要介紹了基于NESMA方法拆解功能點的任務自動組包與收發包方法及實現。對于信息化系統而言,采用NESMA方法可以將復雜的需求最大程度的拆解為最有意義的最小活動單元,此時功能點是一個可以作為標準的計量單位,功能點的多少代表著軟件的規模大小,也很好地反映出軟件的復雜程度。通過拆解的功能點可以更合理的計算出人力成本和工作量,計算出工作量后以任務的形式進行發包,承包方完成工作后,發包方按照拆分功能進行驗收確認。該方法可以幫助企業更好地對任務進行自動組包和收發包,對于后期任務的分工和結算幫助很大,功能點作為標準的計量單位,對輔助計算效率、成本有很大作用。

猜你喜歡
發包方承包方工作量
三方眾包市場中的發包方平臺博弈機制設計
EPC總承包模式下建筑工程管理創新研究
應用地表覆蓋數據估算LiDAR內業工作量的方法研究
文化旅游綜合體總承包方設計管理案例分析
論建設工程優先權的行使
一個兼顧教學科研的高校教師績效考核模型及其應用
離岸IT外包中如何降低發包方的知識保護:基于社會交換理論的觀點
思科發布云計算市場發展報告
網上互動教學工作量管理的困境及對策
承包方能請求返還棄耕拋荒的承包地嗎
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合