本篇文章給大家談?wù)勡浖_發(fā)生產(chǎn)率計算,以及軟件開發(fā)工作量計算對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。
本文目錄一覽:
- 1、軟件開發(fā)工作量如何評估
- 2、什么是軟件生產(chǎn)率
- 3、軟件評估方法
- 4、做軟件開發(fā)的成本究竟如何估算
- 5、【軟件工程】{8} 軟件項目進度安排與跟蹤,一招學(xué)會計算關(guān)鍵路徑
軟件開發(fā)工作量如何評估
用于軟件項目工作量估算的方法有以“估”為主的專家法和類推法,以“算”為主的類比法和方程法。在軟件估算的實踐中,類比法和類推法也是普遍使用的估算方法。
1、類比法
類比法是指將本項目的部分屬性與類似的一組基準數(shù)據(jù)進行比對,進而獲得待估算項目工作量、工期或成本估算值的方法。類比法是基于大量歷史項目樣本數(shù)據(jù)來確定目標項目的預(yù)測值,通常是以50百分位數(shù)為參考而非平均值。選擇類比法進行估算,應(yīng)根據(jù)項目的主要屬性,在基準數(shù)據(jù)庫中選擇主要屬性相同的項目進行比對。
類比法適合評估那些與歷史項目在應(yīng)用領(lǐng)域、系統(tǒng)規(guī)模、環(huán)境和復(fù)雜度方面相似的項目,通過新項目與歷史項目的比較得到估計數(shù)據(jù)。類比法估算結(jié)果的精確度取決于歷史項目數(shù)據(jù)的完整性和準確度。因此,用好類比法的前提條件之一是組織建立起較好的項目后評價與分析機制,對歷史項目的相關(guān)屬性建立基線數(shù)據(jù)。
適用范圍:
當需求極其模糊或不確定時,如果此時有與本項目類似屬性(如規(guī)模、應(yīng)用類型、復(fù)雜度、開發(fā)團隊經(jīng)驗等)的一組基準數(shù)據(jù),則可直接采用類比法,充分利用基準數(shù)據(jù)來估算工作量。類比法可以在整個項目級上做基準比對,也可以在子系統(tǒng)級上進行。
估算過程:
1) 確定待估算項目所具有的屬性特點,如系統(tǒng)的規(guī)模、復(fù)雜度、應(yīng)用類型、業(yè)務(wù)領(lǐng)域、開發(fā)人員的經(jīng)驗和能力等。
2) 查詢歷史數(shù)據(jù)庫并篩選“最相似”的項目屬性數(shù)據(jù)。
3) 如果待估算項目屬性與歷史項目的主要屬性類似,則可依據(jù)歷史項目的基線數(shù)據(jù)直接得出待估算項目的工作量合理范圍。
4) 如果同時滿足待估算項目主要屬性的歷史項目太少,則可針對待估算項目的每個屬性與歷史項目相應(yīng)屬性的基準數(shù)據(jù)分別比對,再分別計算得出P25/P50/P75的平均值作為估算值。
5) 一般情況下,取P50的工作量數(shù)據(jù)作為待估算項目工作量最可能的值。
2、類推法
類推法是指將本項目的部分屬性與高度類似的一個或幾個已完成項目的數(shù)據(jù)進行比對,適當調(diào)整后獲得待估算項目工作量、工期或成本估算值的方法。選擇類推法進行估算,通常只參照1~2個高度類似的項目,同時根據(jù)待估算項目與參照項目的差異,進行適當調(diào)整。
適用范圍:
1) 當需求極其模糊或不確定時,較難估算工作量,如果此時具有高度類似的歷史項目,則可直接采用類推法,充分利用歷史項目數(shù)據(jù)進行估算。
2) 適用評估一些與歷史項目在業(yè)務(wù)領(lǐng)域、應(yīng)用類型、環(huán)境和復(fù)雜度等方面的相似項目,通過新項目與歷史項目的比較進行估計。
3) 該方法估算結(jié)果的精確度取決于已完成項目數(shù)據(jù)的完整性、準確度,以及兩個項目之間的相似度。如果沒有類似的項目,該方法就不能應(yīng)用。
估算過程:
1) 識別出待估算項目的主要屬性。
2) 查找本組織曾經(jīng)做過的類似的歷史項目。
3) 對比歷史項目,標記差異點,經(jīng)過調(diào)整后計算出待估算項目的工作量。
3、方程法
采用方程法進行工作量估算時,應(yīng)考慮根據(jù)開發(fā)組織實際情況進行回歸分析,建立回歸方程??蓪⑺杏绊懸蜃佣伎紤]在內(nèi)建立多元方程,也可以先根據(jù)部分影響因子算出初步的結(jié)果,再對結(jié)果進行調(diào)整。
行業(yè)級模型示例如下:
行業(yè)級模型: AE=(S*PDR)*SWF*RDF
公式中:
AE:調(diào)整后工作量,單位為人時
S:規(guī)模,單位為功能點數(shù)
PDR:生產(chǎn)率,單位為人時每功能點
SWF:軟件因素調(diào)整因子
RDF:開發(fā)因素調(diào)整因子
能上回答望采納!如有疑問可私信!
什么是軟件生產(chǎn)率
什么是軟件生產(chǎn)率:
軟件生產(chǎn)率是指人均每月所能生產(chǎn)的有效源代碼行數(shù)。
軟件生產(chǎn)率的計算:
軟件生產(chǎn)率的計算通常比較困難,不僅要考慮編碼階段,還應(yīng)包括軟件生存期的各個階段
影響軟件生產(chǎn)率的因素:
人的因素:開發(fā)機構(gòu)的規(guī)模和經(jīng)驗
問題因素:問題的復(fù)雜性和設(shè)計約束或要求更改的次數(shù)
過程因素:使用的分析和設(shè)計技術(shù)、應(yīng)用的語言及評審的過程。
生產(chǎn)因素:計算機系統(tǒng)的性能和可靠性
資源因素:開發(fā)工具、硬件和軟件資源
關(guān)于軟件生產(chǎn)率的歷史經(jīng)驗:
1.一個組織中最優(yōu)秀和最后進的人相比,其生產(chǎn)率比值是10:1
2.最優(yōu)秀的和平均水平的人相比,比例是2.5:1
3.前一半和后一半相比,其生產(chǎn)率的比例大約是2:1
4.從同一個組織來的兩個人,其生產(chǎn)率大致相同
軟件評估方法
軟件系統(tǒng)質(zhì)量 記分辦法,可以按照月,季或者年進行記分合計,每分對應(yīng)相應(yīng)的價格進行獎懲。 上線前 ;95%需求覆蓋率,至少 ;5%問題遺留率,最高 BUG嚴重 ;10%比率,最高 試運行過程 內(nèi)(一般以軟件交付給用戶后的三個月內(nèi)為初期故障期)指軟件在初期故障期初期故障率: 可以用它來評價交付使用的軟件質(zhì)小時的故障數(shù)為單位。100一般以每單位時間的故障數(shù)。量與預(yù)測什么時候軟件可靠性基本穩(wěn)定。檢查項目初期故障率的大小取決于軟件設(shè)計水平、 數(shù)、軟件規(guī)模、軟件調(diào)試徹底與否等因素偶然故障率:指軟件在偶然故障期(一般以軟件交付給用戶后的四個月以后為偶然故障期) 小時的故障數(shù)為單位,它反映了軟件處于穩(wěn)定狀態(tài)下1000內(nèi)單位時間的故障數(shù)。一般以每 的質(zhì)量 運維過程 )MTBF平均失效間隔時間( 通MTBF指軟件在相繼兩次失效之間正常工作的平均統(tǒng)計時間。在實際使用時, 次失效之間的平均統(tǒng)計時間。n+1次失效與第n很大時,系統(tǒng)第n常是指當 小時左右。
做軟件開發(fā)的成本究竟如何估算
軟件成本評估的6個步驟:
1、軟件規(guī)模評估:
軟件規(guī)模評估是軟件成本評估的基礎(chǔ),是為了保證軟件成本評估結(jié)果的客觀性和透明性,軟件規(guī)模信息必不可少。
在軟件規(guī)模評估過程中,如果能夠以軟件功能點方法作為主要的軟件規(guī)模評估方法,同時輔以其他的非標準評估方法,例如代碼行方法、用例數(shù)方法等,應(yīng)用不同的軟件規(guī)模評估方法對規(guī)模評估結(jié)果進行真實性交叉檢驗,一方面可以提高軟件規(guī)模評估結(jié)果的可信度;另一方面,也可以對不同類型的項目干系人也會具有更強的說服力。
在實際的軟件規(guī)模評估過程中,軟件組織或者個人也可以根據(jù)自身的特點采用有別于上述評估方法的其他方法。但要注意的是,不管采用哪種軟件規(guī)模評估方法,都要盡可能的保證這個方法所評估結(jié)果的一致性和客觀性。
2、軟件工作量評估
如果說我們能夠算出開發(fā)軟件、維護軟件所投入的人員工作量,那么我們也就相當于得到了相應(yīng)的軟件成本。在軟件行業(yè)中的絕大多數(shù)項目里面,影響軟件工作量的最主要因素還是軟件規(guī)模因素,當軟件規(guī)模越來越大時,也就意味著我們需要投入的工作量越多,這兩者之間是存在著正相關(guān)的關(guān)系。
在軟件工作量的評估中,還包含了五個小步驟,也就是收集歷史工作量數(shù)據(jù)、分析歷史工作量數(shù)據(jù)、建立工作量評估模型、評估工作量、工作量模型的標定和更新。通過這些步驟可以積累更多關(guān)于軟件組織開發(fā)工作量和維護工作量的數(shù)據(jù),在此基礎(chǔ)之上,建立相應(yīng)的工作量評估模型,從而為后續(xù)的工作量評估任務(wù)提供支持方法。
3、軟件階段工作量評估
在這個步驟中,軟件成本評估團隊應(yīng)該充分考慮軟件項目的工期因素,對軟件項目總工作量安排和各個階段工作量安排進行優(yōu)化分析,將軟件項目的總工作量以合理可行的方式分解為各個階段的工作量。
不僅如此,還要考慮軟件項目工期所面臨的各種工期約束條件,例如一些來自客戶的強制工期要求、市場競爭性、可用的人力資源、項目各階段人力資源分配的合理比例等約束條件,都在這個步驟中明確介紹了一系列階段工作量安排的改進和優(yōu)化方法,包括階段工作量匯總法、資源平滑法、快速跟蹤法、趕工法以及軟件階段工作量的可行性評估方法等。
這些方法的主要目的就是在于將軟件工作總量以合理、可行的方式分配到軟件項目的各個階段,確保在不超出工作總量的前提下,盡可能降低人員成本、優(yōu)化人力資源配置,為軟件預(yù)算、軟件開發(fā)計劃制定等管理活動提供充分的決策支持信息。
4、軟件人員成本評估
在這個步驟里面,我們將會詳細說明如何在軟件開發(fā)和維護所需的工作量轉(zhuǎn)換為對應(yīng)的費用信息,以便為相關(guān)的項目外部干系人提供更直接的決策依據(jù)。在軟件人員成本評估中,也包含有單一人員成本評估法、分類人員成本評估法和行業(yè)人員成本評估法。
5、軟件風險評估
在軟件開發(fā)的過程中,許多軟件組織明確認識到軟件行業(yè)的開發(fā)人員已經(jīng)默認和接受了無償加班這一行業(yè)事實,這樣一來,就算沒有識別相應(yīng)的風險信息,但也沒有嚴重后果,也就是說,如果風險發(fā)生了,那就加班。
這個步驟中通過應(yīng)用不同的風險評價方法,將軟件項目的風險信息轉(zhuǎn)換為項目的成本信息,從而建立軟件項目的風險預(yù)算。
6、軟件成本報告與更新
軟件項目在開發(fā)過程中時,經(jīng)常容易發(fā)生各種軟件需求變更、人員變更、工期變更等多種類型的變更,這些變更無一例外地將對軟件成本產(chǎn)生明顯的影響。
在這個步驟中,可以分析軟件成本更新面臨的困難,有哪些典型的軟件成本更新的信息來源,從機制設(shè)計的角度確保盡可能全面獲取軟件成本變更信息。最后遵循軟件組織所建立的軟件成本更新過程,將軟件成本變更信息反映到更新后的軟件成本評估結(jié)果中。
【軟件工程】{8} 軟件項目進度安排與跟蹤,一招學(xué)會計算關(guān)鍵路徑
項目進度安排,即通過將 工作量 分配給特定的軟件工程任務(wù),和u將所估算的工作量/u分布于已經(jīng)計劃好的 項目持續(xù)時間 中。
(1)劃分 —— 項目被劃分為若干個 可管理的活動和任務(wù) ;
(2)相互依賴 —— 活動和任務(wù)之間的 關(guān)系 必須被確定為:順序、并發(fā)、后續(xù)、獨立進行;
(3)時間分配 —— 為每個任務(wù)分配 工作單位 (即開始和結(jié)束時間);
(4)工作量確認 —— 確保u在任意時段/u分配到任務(wù)的人員數(shù)量 不會超過 項目組的人員數(shù)量;(比如:一個項目組此次預(yù)估需要有12人分配到任務(wù)才能完成此項工作,但原定人員數(shù)量為10人,那么1210,這項任務(wù)的工作量必然超標了,所以要確保不能超過)
(5)定義責任 —— 每個被調(diào)度的任務(wù)都應(yīng)該 指定負責人 ;
(6)定義結(jié)果 —— 每個被調(diào)度的任務(wù)都要有一個 定義好的輸出結(jié)果 ;
(7)定義里程碑 —— 每個任務(wù)或任務(wù)組都與 一個項目里程碑 相關(guān)聯(lián);
當幾個人共同承擔軟件開發(fā)任務(wù)時,人與人之間必須通過交流來解決各自承擔任務(wù)之間的接口問題,即所謂通信問題。通信需花費時間和代價,會引起軟件錯誤增加,降低軟件生產(chǎn)率。
如果一個軟件開發(fā)小組有 n 個人,每兩人之間都需要通信,則總的通信路徑有 條。
如想對通信路徑有進一步了解,可到 項目管理中的4P 文章中的項目小組結(jié)構(gòu)進行查看
Q1 :設(shè)一個人單獨開發(fā)軟件,生產(chǎn)率是5000行/人年。若 4 個人組成一個小組共同開發(fā)這個軟件,則需要 6條通信路徑。若在每條通信路徑上耗費的工作量是 250 行/人年。則小組中每個人的軟件生產(chǎn)率降低為多少?
A1 :小組中每個人的軟件生產(chǎn)率降低為 5000 – ×250 = 5000 – 375 = 4625 行/人年,所以項目組的生產(chǎn)率為18500。
Q2 :如在上例中,到了開發(fā)后期再加入 兩名工程師 ,生產(chǎn)率為840行/人年,問此時項目組的生產(chǎn)率為?
A2 :6個人所產(chǎn)生的的通信路徑為 = 15條;所以項目組的生產(chǎn)率為5000 × 4 + 840 × 2 – 15 × 250 = 17930。
( 1 )在整個軟件開發(fā)過程中,編碼工作量僅占 20% ,編碼前工作量占 40% ,編碼后工作量占 40% 。
( 2 )40-20-40 規(guī)則只應(yīng)用來作為 一個指南 ,實際的工作量分配比例必須按照 各項目的特點 來決定。
用一張圖來了解關(guān)于 軟件各階段的工作量 分配比例。
在實際的軟件開發(fā)中,一種比較推薦的工作量分布為:
在關(guān)鍵路徑上的活動才是按時完成任務(wù)的關(guān)鍵。
表1 蓋一所房子的重要階段
表2 蓋房子相關(guān)活動的時間估計
表3 任務(wù)網(wǎng)絡(luò)圖
問 :某項目的活動網(wǎng)絡(luò)圖如表3所示,每項活動所需的天數(shù)如路徑上數(shù)字所示。(1)請給出計算過程確定項目的關(guān)鍵路徑和工期。(2)設(shè)定活動1.1和1.2的最早開始時間均為第1天,給出所有活動的最早開始時間ES、最遲開始時間LS和浮動時間FT。
項目評估和評審技術(shù)是一種 關(guān)鍵路徑分析技術(shù) ,使用 正態(tài)分布 來判斷一個活動的最早開始時間接近該活動進度時間的概率。PERT技術(shù)可以計算關(guān)鍵路徑、找出最可能成為瓶頸的活動。
獲得值分析,主要分析 兩個內(nèi)容 : ① 進度是否拖延; ② 成本是否超出預(yù)算。基于這兩個內(nèi)容,對獲得值分析進行以下闡述。
(1)計劃工作的預(yù)計成本(BCWS) :截止到某一時刻,計劃工作的預(yù)計工作量之和。
(2)完成預(yù)算(BAC) : BCWS的總量,是項目的總工作量的估計。
(3)預(yù)定完成百分比 :計劃工作的預(yù)計成本占預(yù)計總工作量的百分比,計算公式為: 。
(4)完成工作的預(yù)計成本(BCWP) :截止到某一時刻,完成工作的預(yù)計工作量之和。
(5)完成百分比 :完成工作的預(yù)計成本占預(yù)計總工作量的百分比,計算公式為: 。
(6)所完成工作的實際成本(ACWP) :截止到某一時刻,已完成的工作任務(wù)的實際工作量之和。
(1)進度性能指標(SPI) = ;
(2)進度偏差(SV) = BCWP – BCWS;
(3)成本性能指標(CPI) = ;
(4)成本偏差(CV) = BCWP – ACWP。
下圖是某工程的實際完成表。
Question:在該工程實施過程中,截止到21年4月1號,進度是否拖延?工期是否超出預(yù)算?
Answer:
截止到21年4月1號,計劃完成任務(wù)1、2,實際完成了1、2、4,由此可計算出 BCWS 、 BCWP 、 ACWP 和 BAC 的值。
綜上所述,因為 SPI 1,SV 0 , CPI 1,CV 0 ,所以截止到21年4月1日,該工程進度超前,成本超出預(yù)算。
Question:若考察點在21年5月1日,此時任務(wù)完成進度如上圖所示,問進度是否拖延?工期是否超出預(yù)算?
Answer:
截止到21年5月1號,計劃完成任務(wù)1、2、3、4,實際完成了1、2、3、4,由此可計算出 BCWS 、 BCWP 、 ACWP 和 BAC 的值。
綜上所述,因為 SPI = 1,SV = 0 , CPI 1,CV 0 ,所以截止到21年4月1日,該工程進度正好,即項目按計劃進行,但成本超出預(yù)算。
Question:
你被指定負責一個軟件項目,這個項目由4個部分(A、B、C、D)組成,項目總預(yù)算為53000元,其中A任務(wù)預(yù)算為26000元,B任務(wù)預(yù)算為12000元,C任務(wù)預(yù)算為10000元,D任務(wù)預(yù)算為5000元。
截止到8月31日,A任務(wù)已經(jīng)全部完成,B任務(wù)過半,C任務(wù)剛開始,D任務(wù)還沒有開始,下表給出截止到8月31日的計劃成本和實際成本,采用50/50規(guī)則計算截止到8月31日為止的 CV , SV , CPI , SPI 。
(備注:50/50規(guī)則指項目一開始就實現(xiàn)一半價值,直到結(jié)束才實現(xiàn)全部價值,即完成1%或99%,都認為只實現(xiàn)一半價值)
Answer:
截止到8月31日為止的 CV , SV , CPI , SPI 的計算結(jié)果如下:
綜上所述,因為 SPI 1,SV 0 , CPI 1,CV 0 ,所以截止到8月31日,該工程進度落后一些,但是費用節(jié)省了。
軟件項目進度安排與跟蹤的文章就講解到這里啦!在這一塊內(nèi)容中,計算關(guān)鍵路徑部分尤為重要,也是軟考當中的常考題。在學(xué)會之后還要自己脫稿再演算多遍,且可以將題目舉一反三進行多次計算。如果有不理解的歡迎私聊~
同時,如有需要了解軟件工程相關(guān)的其他內(nèi)容,可到『 軟件工程 』欄目進行查看學(xué)習(xí)~
創(chuàng)作不易,如果這篇文章對你有用,記得留下 Star 哦~
關(guān)于軟件開發(fā)生產(chǎn)率計算和軟件開發(fā)工作量計算的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。