吳瑞 劉煉 周崇山
摘 要 最近幾年IT行業(yè)的蓬勃發(fā)展,已經(jīng)涌現(xiàn)出不少軟件開發(fā)項目外包公司。一個軟件開發(fā)項目通常要經(jīng)歷需求分析、設計、編碼、測試等多個大的階段。其中設計又包括總體設計,系統(tǒng)設計,詳細設計等幾個環(huán)節(jié),其中還包括模塊化之后的集成環(huán)節(jié),整個項目還包含與專業(yè)或是非專業(yè)客戶團隊的溝通問題。項目整體環(huán)節(jié)復雜多變,管理困難,需要專門的項目管理方案與分析團隊。
關鍵詞 軟件開發(fā) 成本核算模型 風險控制 質量保證活動
中圖分類號:TP311 文獻標識碼:A 文章編號:1007-0745(2020)02-0049-03
隨著高科技與信息化的發(fā)展,互聯(lián)網(wǎng)已經(jīng)被廣泛運用到各個行業(yè)中,其運行載體“軟件”更是滲透于生活中的點點滴滴。企業(yè)當然也要與時俱進,對各類的軟件需求也越來越多,要求也越來越高,用以提高自身的核心競爭力。但是很多企業(yè)由于資金流短缺、技術低的局限,常會選擇軟件外包公司進行相關的軟件開發(fā)服務。把信息化建設工作交給專業(yè)的服務公司團隊去做,企業(yè)解放了這部分資源,把更多的人力物力集中在核心工作上。尤其是對于那些不可能投入大量資金和人力的企業(yè)來說,技術外包可以讓他們更專注于研究自身的經(jīng)營難題。由此軟件開發(fā)外包團隊應運而生,但隨之而來的是外包公司對單個開發(fā)項目的項目管理問題。[1]
1 項目整體管理
1.1 軟件開發(fā)外包項目簡介
著名通信與科技公司華為正在參與最新的第五代通信技術“5G”的研發(fā),研發(fā)與應用進度領先于美國在內的多個國家的龍頭通信公司,該公司有望成為“5G”的行業(yè)標準制定者。由于要做“5G”的商用,在研發(fā)與商用開發(fā)的的過程中產(chǎn)生了軟件開發(fā)問題,盡管華為公司的規(guī)模龐大,員工數(shù)量多,但是許多軟件過程更加趨向于過程模式化,如果花費大量的人力、財力在此上,則是得不償失。根據(jù)已知資料,華為在“5G”研發(fā)上已經(jīng)投入超過153億美元,在如此巨額的研發(fā)成本下,為了加快開發(fā)商用進度節(jié)約時間與成本。許多的軟件開發(fā)則是由外包團隊承擔,所以在這個背景下外包團隊成功的項目管理就顯得格外重要。[2]
1.2 軟件開發(fā)具體工作分解結構圖
外包團隊的軟件開發(fā)周期分為若干個階段,每個階段都可以分為啟動、計劃、執(zhí)行、控制和收尾等五個基本管理過程。這些過程按一定順序發(fā)生,彼此交疊。一般情況下,執(zhí)行過程消耗的資源較多,持續(xù)時間較長,啟動和收尾過程時間較短,消耗資源較少。但是軟件開發(fā)則是不同,軟件開發(fā)在代碼實現(xiàn)階段難度不是太大,更多的時間成本花費在測試與運維階段。以下簡單介紹了其主要階段[3]和核心工作。[4]
1.3 項目章程
中文名稱:華為軟件開發(fā)外包項目
立項時間:2018年11月
外包團隊:中軟國際,博朗軟件……
外包軟件數(shù)目:128個
項目結束預計時間:2020年9月
外包費用:15億
負責人:華為研發(fā)部經(jīng)理,各個外包團隊負責人。
2 項目成本管理
華為外包總投入約為15億。
2.1 軟件開發(fā)規(guī)模核算模型
2.1.1 面向規(guī)模的度量標準
每KLOC(千行代碼)的錯誤數(shù),即總錯誤數(shù)除以總KLOC。
每KLOC(千行代碼)的缺陷數(shù),即總缺陷數(shù)除以總KLOC。
每KLOC(千行代碼)的文檔頁數(shù),即總文檔頁數(shù)除以總KLOC。
2.1.2 間接測量—功能點度量
功能點數(shù)從直接度量軟件信息域和評估軟件復雜性的經(jīng)驗量化關系中獲得。
步驟:
·先算未調整功能點總計數(shù)UFC
·再算功能點FP
計算功能點(FP):
total_counts:總計數(shù)
Fi (i取1到14) :14項復雜性調整值
2.2 基于規(guī)模完成成本核算
算法成本模型-基于經(jīng)驗的度量:
●軟件成本的算法成本模型
Effort=A+SizeB×M
●A,常量,由組織的實踐與軟件的類型所決定。
●B,常量,取值范圍(1,15)。
●M,常量,反應產(chǎn)品、過程與人力屬性。
●Size,可以是軟件代碼規(guī)模的估算,也可以是功能點或目標點。
3 項目質量管理
軟件的質量管理工作是一個系統(tǒng)過程,在實施過程中必須創(chuàng)造必要的資源條件,使之與項目質量要求相適應。各職能部門及實施單位要保證工作質量和項目質量,實行業(yè)務工作程序化、標準化和規(guī)范化。支持質量部門獨立的、有效的行使職權,對項目實施全過程實行質量控制。
軟件質量是一個軟件企業(yè)成功的必要條件,其重要性無論怎樣強調都不過分。
項目的質量保證活動由項目經(jīng)理協(xié)調項目組長在軟件的各個階段中實施。
4 項目的風險管理
風險是一種潛在的危險。軟件項目由于其自身的特點而存在風險,甚至是災難性的風險。
項目風險管理主要包括:風險標識、風險估算、風險評價、風險管理。
4.1 風險標識
識別潛在的風險,分別對以下三類風險進行提取、分析:
項目風險。與項目有關的預算、軟件開發(fā)進度、人力分配、資源、用戶需求、軟件規(guī)模、軟件復雜性等方面的問題。
技術風險。影響開發(fā)質量和交付時間的設計、實現(xiàn)、驗證、軟件測試、維護、用戶接口等方面的問題。
商業(yè)風險。包括與產(chǎn)品的商業(yè)運作有關的市場風險、預算風險、決策風險等。
4.2 風險估算
也稱為風險評估,一般是從兩方面進行估算:
⑴從影響風險的因素考慮風險發(fā)生的可能性。
a.因為對軟件規(guī)模和功能點的估算失誤,錯誤估計了開發(fā)時間。
b.對開發(fā)語言環(huán)境的不熟悉,編碼階段出現(xiàn)大量錯誤。
⑵風險發(fā)生所帶來的損失的嚴重程度。
a.交付時間延長,違反合同規(guī)定。
b.開發(fā)成本增加,造成公司經(jīng)濟損失。
4.3 風險評價
為了反映風險產(chǎn)生的可能程度和風險產(chǎn)生后果的嚴重程度,建立風險度量的指標體系,一種簡單的風險評估技術是建立風險評估表。(如表2)
4.4 風險管理
4.4.1 避免風險
是一種主動避免風險的活動。是在風險發(fā)生前分析引起風險的原因,采取措施,避免風險發(fā)生。
4.4.2 風險監(jiān)控
貫穿在軟件開發(fā)的全過程,是一種項目跟蹤活動。主要監(jiān)控對項目風險產(chǎn)生主要影響的因素。
4.4.3 風險管理監(jiān)控計劃
制定風險監(jiān)控計劃RMMP,保證文檔的正確性,按監(jiān)控計劃記錄、管理風險分析的全過程。
5 項目人力資源管理
該外包項目采用一般的軟件開發(fā)公司人員管理模式,設立了對應的項目經(jīng)理,以及軟件模塊化后的分組任務由各組長帶領完成開發(fā)任務,后續(xù)的集成及完善皆有項目經(jīng)理協(xié)調完成。
6 項目總結與評價
6.1 全過程的進度追蹤與控制
外包軟件開發(fā)是個多方參與多方協(xié)調的活動,在多方共同努力完成的大型軟件開發(fā)項目,基于該項目的特殊性和重要性,華為方面主管部門、投資、開發(fā)、溝通、監(jiān)督等所有相關單位,從項目立項開始到設計、招投標、實施、收尾等各個階段、環(huán)節(jié)和過程都要進行項目管理。甲方華為公司應該與外包公司定期舉行項目狀態(tài)會議,由外包公司交接階段可交付成果或階段里程碑文件,實行項目進度的實時控制,解決項目開發(fā)中的問題,加快開發(fā)時間。
6.2 必須做到有華為公司參與的質量保證
由華為公司派出質量監(jiān)督小組實時監(jiān)督其開發(fā)質量以及標準化開發(fā)程序的完成度。其質量保證人員要創(chuàng)建和執(zhí)行改進軟件開發(fā)過程并防止軟件缺陷的標準和方法。
6.3 做好項目的前期策劃和項目開發(fā)計劃
項目開發(fā)計劃是指導項目管理工作的綱領性文件,是對項目管理的目標、依據(jù)、內容、組織、資源、方法、程序和控制措施進行的籌劃與確定,在項目管理中有著十分重要的作用。工程項目管理必須有周密、可行、有效的項目管理規(guī)劃,既要根據(jù)項目需要就如何進行管理作出策劃,又要為項目建設的順利進行創(chuàng)造必要條件,同時確定項目管理目標。
作為行業(yè)領頭開發(fā)項目-“5G”的商用開發(fā)項目,開發(fā)時間也是要在整個項目中有著巨大影響的,所以一份完備的開發(fā)計劃顯得尤為重要。
計劃中應對前期的招標公司資格進行嚴格篩查,因該尋找與之相對應的行業(yè)領頭的外包公司,對這些公司的軟件開發(fā)生產(chǎn)率,合格率等進行詳細調查分析。
從其他軟件開發(fā)項目管理成功運用的經(jīng)驗來看,綜合考慮多元因素是很重要的,忽視其中任何一方面都會給項目帶來問題。在進行大型開發(fā)項目的項目管理工作中,必要的分析研究可使項目的科學性和可操作性得到加強,同時也為項目管理工作提供更為充分的依據(jù)、更加科學合理的決策。大型軟件開發(fā)項目不是簡單的方案的選擇問題,它需要考慮很多風險因素;大型項目管理規(guī)劃也不是僅由項目管理學科書本上的知識就能解決的,它是一個跨學科的巨大系統(tǒng)工程,只有先進行大系統(tǒng)中的子系統(tǒng)的分析和研究,才能進一步整合大系統(tǒng);另外,要成功建立大項目的科學綜合評價體系,要進行多方案的比較選擇,進而確定最終方案,而且對項目管理的評價也不能單一,應該是多角度的、綜合的考慮很多因素,如各類成本因素。只有在科學的方法指導下,才能獲得大型軟件開發(fā)項目管理的最優(yōu)最合理方案。
參考文獻:
[1] 舒森,方竹根:項目管理[M].安徽人民出版社,2002:23-25.
[2] 畢星,翟麗:項目管理[M].復旦大學出版社,2000:1-3.
[3] 同[2].
[4] 軟件工程第七版.機械工業(yè)出版社,2016:1-8.
西華大學 管理學院,四川 成都