如今軟件開發管理領域不斷出現了新的技術和思想,而傳統的軟件開發規程也隨著時代的發展出現了升級、融合的特征。傳統式企業級開發市場也不斷地面向互聯網,軟件產品面向多樣的需求,同時存在需求不明、變化快的特點。為避免產品開發完落伍或被淘汰,需要周期短、響應快的項目管理模式,相應地,項目開發管理也有了新的特征,于是就產生了敏捷管理方式,這種方式逐漸融入了傳統流程中,下面文章就主要從核心價值觀、團隊協作、風險管控等方面介紹敏捷管理在企業級項目實施的應用效果。
關鍵詞:互聯網化;企業級項目管理;敏捷管理;瀑布式流程;軟件開發管理
自2016年起,上海寶信軟件股份有限公司承建了廣東韶鋼集團公司的能源精細化管控項目。該項目是鋼鐵企業能源管理系統建設第一次從能源部級建設走向公司級建設的嘗試。項目要求在一年內完成上線投運。建設過程中,在項目的范圍、時間、需求細化包括實施推廣方面都遇到了一些問題,為了更有效地組織項目工作,確保項目節點,我們引入了敏捷管理方式。隨著項目逐步的交付,我們看到敏捷管理和項目工作的結合產生了積極的效果。
1研究背景
精細化能源管理其總體原則為系統通過能源的動態-有序管理、協同-連續運行和耗散-優化的配置,實現能量流與物質流的高度耦合,落實為鋼鐵企業能源流與制造流的動態銜接、高效均衡。由于項目范圍比較廣,管理程度比較深,開發人員對需求的熟悉度比較低,項目工期相對比較緊。項目在進入開發階段后,一度出現了一定程度的混亂,主要遇到的問題有:
(1)需求細化出現問題,開發人員難以介入,項目開發工作初始階段進展緩慢。由于一些歷史性問題,需求人員和開發人員的對接出現了問題:精細化管控需求范圍廣,業務復雜度高,流程性強,相對早前的業務,復雜度太高,感覺無從下手;需求人員也出現了人員變動,自身對新功能的把控有限,在需求細化等方面難以把控;項目使用了新的開發平臺,開發人員在適應開發平臺上花費了大量精力,不愿花太多時間在業務學習上;項目設計細化程度有限,需求人員在設計時不能準確把控技術特征,無法將流程性、特征性的功能轉換為技術語言,溝通低效。
(2)項目時間比較緊,開發團隊不夠成熟且部分開發人員水平不足。項目團隊中引入了大量新人,對業務熟悉程度低,開發經驗也不足。在項目早期,他們需求大量的時間來培訓和學習。
(3)項目時間比較緊急,根據項目節點,有大量的用戶交流和溝通會議需求參加。這些工作在一定程度上分散了項目團隊的資源,導致開發工作啟動緩慢。經過一定時間的討論,為了盡快地啟動開發工作,并使得所有項目成員都能明確職責,盡快地完成需求交接和人員培訓,我們采用了敏捷式管理來完成項目的開發階段。
2敏捷管理核心價值觀
敏捷開發(AD:AgileDevelopment)是一種以人為核心、迭代、循序漸進的開發方法[1]。在敏捷開發中,核心思想主要是迭代式開發,將整個項目分解為多個短期的迭代周期(Sprint通常2周左右,不超過一個月),強調每個迭代的成果交付,成果經過測試,具備可視、可集成和可運行使用的特征,快速響應需求進行増量開發。傳統的瀑布開發是計劃驅動的,在項目啟動后,項目組制定詳細的項目計劃并且遵循計劃執行,項目組通過文檔來定義需求和傳遞信息。
而敏捷管理是價值驅動的,在項目啟動后,通過自組織團隊和與客戶緊密合作,根據需求的價值評估項目組一起制定短期迭代周期計劃,共同保證向客戶持續交付可用的迭代產品[2],并且不斷收集有價值的反饋和變化,直到最終完成客戶滿意的產品。
3解決方案
3.1改變項目團隊組織方式和角色按照傳統式開發,由一名開發Leader領導若干名開發人員[3],然后對接需求人員。根據項目特點,經過討論,出于以下考慮,我們修改了項目的組織方式:
(1)項目存在部分需求特別是精細化管控需求待細化的特點。我們首先讓需求人員一方面繼續挖掘和澄清需求,另一方面轉型為產品經理,負責各自模塊的業務流程分析、用戶場景分析等工作,同時使用Axure等原型工具將業務功能轉換為圖形化界面。在設計過程中,需求人員也能再次的理解和深耕業務,對于需求和后續開發都是重要的推進。還有兩個重要的優勢,首先讓需求人員從無處下手到快速找到系統切入點。其次,還有助于需求人員快速的厘清需求中的確定和待確定需求,以便排出有效的開發計劃。
(2)項目需求不明確,新人較多,新的開發平臺導致工作量無法準確預估。在需求人員轉換為產品經理角色后,我們先整理了系統中已明確的需求,并估算了未明確需求并排出計劃。在此基礎上,我們制定了敏捷的迭代周期。按照4周一個迭代的原則逐步推進。對于新人部分,我們一方面通過結對、培訓等方式快速導入,也利用敏捷管理的透明性原則,通過每日迭代、鼓勵交流等方式高效地掌握新人的進展,協助解決他們的問題,促使他們快速融入團隊。
(3)錯開節奏,讓項目組先動起來。從4月底起,我們設定第一個迭代為迭代〇。這是項目的奠基期,我們首先進行了敏捷相關的培訓,明確項目的開發模式的轉變。接下來,產品經理利用此時間段組織下一個迭代的產品原型設計,開發人員則組織新平臺的使用、技術和業務培訓、基礎框架搭建,架構師和業務專家則根據下一階段的需求特征進行基礎的系統和數據庫架構設計。接下來的各迭代都依據此原則,產品團隊在迭代中負責下一迭代的需求跟進、分析和原型設計,驗收和驗證上一迭代的交付。開發團隊則根據原型圖進行日常的敏捷開發[1]。
(4)面向可用的產品原型,項目的交付時刻可見。項目團隊從迭代1開始就可以穩定的交付遞增且可用的最小化產品原型。在與甲方的交流、匯報中可以直接利用項目的當前成果。由于產品經理設計過程的交流和敏捷開發特征性的可見性特征,項目的返工等情況大為減少,且沒有出現大規模變更積壓到項目后期的情況。
3.2改變團隊的交流方式和氛圍建立敏捷團隊和制度后,整個團隊包括項目經理、需求團隊、開發團隊采用了集中開發的方式[4]。在這個過程中,敏捷的應用也給團隊帶來了很大的不同:
(1)注重當面和及時的溝通和交流。所有人的任務通過白板和JIRA可見。敏捷的Refine-ment、Planning和Review會議可以使得相關人員能積極、盡早地參與到設計、開發工作的學習、評審過程中,避免延遲的溝通造成誤解,最終導致時間浪費。而每日展會則可以盡快解決項目成員遇到的問題,方便ScrumMastei?協調資源,掃清項目障礙。最后回顧會議,則可以通過溝通,解決項目中存在的長期問題,持續改進[4]。
(2)敏捷式鼓勵能夠給團隊成員帶來更大的成就感、責任感和參與感。為了更好地激勵團隊,我們引入了一系列獎勵機制。首先,每日會采用輪流主持的方式,讓一些新人或平時不太擅長表現的開發人員得到了鍛煉機會,使得他們更加積極地參與到敏捷建設中;其次,項目組會在回顧會議上選出一到兩名在此迭代中表現最佳的團隊成員(積極參與團隊活動、分享或幫助他們或工作交付成果優秀,或者用于承擔關鍵性人物),并給予鼓勵性的物質獎勵。另外Review會議上,團隊集體審查迭代成果時,大家的意見交流也很重要。這也是一次重要的分享和溝通的環節,有助于團隊的整體提高[1]。
(3)強調自我管理的結果是團隊看得見的成長。在迭代過程中,可以明顯地看到新人的成長,也可以明顯看到項目開發進度、質量上的提高。所有的開發人員在Planning階段即可參與到系統的設計過程,而非傳統的“填鴨式”作業方式[5]。溝通和交流使得大家不會重復地犯同樣的錯誤,不會出現工作內容沖突。對于經驗較少的成員來說,減少了摸索和犯錯誤的機會,使得他們可以快速成長。
3.3風險管控敏捷開發與傳統瀑布式開發不同,各有優勢,敏捷強調的是靈活,強調小迭代與交付;傳統瀑布式開發將軟件生命周期分為制定計劃、需求分析、軟件設計、程序編寫、軟件測試和運行維護等六個基本活動,并且規定了他們自上而下、相互銜接的固定次序,在項目總體時間把控中比較嚴謹。由于項目有固定的交付時間節點,所以我們在推行敏捷管理的過程中,也制定了后墻不倒的關鍵節點及交付內容,確保了過程的可控。
4效果分析
2018年1月1日,我們完成了系統的部分上線工作。在上線過程中,我們無縫實現了新老系統的切換,同時由于早期參與,用戶很平滑地實現了系統過渡。并且整個過程中,沒有出現大規模的需求變更。截止4月底,系統的核心功能全部交付上線,并得到用戶的支持和好評。敏捷開發對于整個項目來說,帶來了以下的回報:
(1)提高了資源利用率,更利于節奏的把控;避免項目出現等待和停滯。
(2)及早動手,分清主次,增量交付。及早溝通,減少誤解,減少變更相當于直接減少了工作。
(3)項目團隊成員積極性高,提升了效率;也提升了團隊成員的技術、自我管理等能力,最終也會對項目的交付質量等產生積極影響。同時,也應當看到一部分因素也影響著此次實踐的成敗:
(1)作為公司重點項目,我們在資源占用特別是人員占用方面有極高的優先級。相應的需求設計人員、開發人員都能夠保持重點投入狀態,極大地降低了項目風險;
(2)需求團隊在轉換過程中做出了很多的工作,同時他們豐富的項目經驗極大地幫助了團隊;
(3)團隊的ScrumMastei?有較好的把控能力,在引導團隊方面做出了積極貢獻。
5結語
在不斷強化創新的時代,試圖完全采用螺旋或瀑布式項目管理模式來滿足客戶需求的做法已經存在極大的風險。所有的項目都必須進一步強調溝通和面對變化。而對于承建方來說,項目團隊必須更好地理解敏捷,這不僅有助于項目的交付,還是團隊管理的一個重要的補充。軟件開發企業必須重視敏捷管理的應用和實踐。
參考文獻:
[1]鐘耕深.敏捷管理的思想及啟示[J].中國石油企業,2011(12):111,
[2]楊帆,徐俊剛.一種改進的Scram敏捷軟件開發方法[J].電子技術,2011,38(9):22.
[3]戚安邦.項目管理學[M].天津:南開大學出版社,2003.
[4](美)項目管理協會.項目管理知識體系指南[M].3版.北京:電子工出版社,2007.
[5]程瑞芳,田中輝,程寧遠.信息網絡時代企業檔案創新服務[J].現代經濟信息,2009(8):206.
電子類期刊推薦:《山西電子技術》以反映電子信息技術領域的研究成果、技術動態,促進學術交流,推動科技成果向社會生產力轉化為宗旨,主要刊登電子信息領域具有創新性的研究、技術應用論文及技術研究進展的綜述。主要讀者對象是從事與電子信息技術研究、應用有關的廣大科技工作者和高等院校師生。
相關閱讀