項(xiàng)目管理應(yīng)以需求為核心
發(fā)布時間:2010/9/8 17:31:00
項(xiàng)目開發(fā)方面
需求
項(xiàng)目應(yīng)以需求為核心。一個項(xiàng)目是否能夠成功,對需求的準(zhǔn)確把握在成功因素中要占上60%的比例。不管系統(tǒng)的架構(gòu)設(shè)計(jì)、團(tuán)隊(duì)管理有多么的成功,如果需求出現(xiàn)偏差,仍然是南轅北轍。由于EAS項(xiàng)目的特殊性,項(xiàng)目開發(fā)過程中能夠與客戶建立有效快速的溝通渠道,是項(xiàng)目成功的關(guān)鍵。
需求必須獲得客戶的確認(rèn)。通過需求調(diào)研與分析后獲得的用戶需求說明書,以及軟件需求規(guī)格說明書都必須得到客戶的簽字確認(rèn)。確認(rèn)的內(nèi)容包括項(xiàng)目的目標(biāo)、范圍以及項(xiàng)目需求功能點(diǎn)(用例)。EAS項(xiàng)目在前期對需求不夠重視,導(dǎo)致在需求理解上出現(xiàn)了一些偏差,從而影響了項(xiàng)目的進(jìn)度。幸而得到了及時的糾正,在項(xiàng)目管理部的協(xié)助下,所有需求都得了客戶或客戶代表的簽字確認(rèn)。從而使得項(xiàng)目在客戶驗(yàn)收時,有了充分的保證。
項(xiàng)目應(yīng)確立專門的需求分析師。公司沒有專門的需求分析師,不能不說是人員配備上的一大弊端。從EAS項(xiàng)目的開發(fā)過程中,我們就充分地認(rèn)識到這一問題的嚴(yán)重性。需求的不斷更改,客戶遲遲未簽字確認(rèn),原因正是在于我們沒有專門的具有豐富經(jīng)驗(yàn)的需求分析師。普通開發(fā)人員在調(diào)研需求以及撰寫需求規(guī)格說明書時,總是會出現(xiàn)偏差或理解錯誤的地方。軟件需求分析是一項(xiàng)重要且負(fù)責(zé)的技術(shù),沒有經(jīng)過專門訓(xùn)練的需求分析師,通常會給項(xiàng)目帶來隱患。
項(xiàng)目應(yīng)指定各個模塊的需求接口人。只有這樣,才能有效地保證項(xiàng)目組與客戶的及時溝通,快速響應(yīng)客戶的請求與反饋。EAS項(xiàng)目在開發(fā)早期及時地確立了需求接口人,在一定程度上規(guī)避了需求變更給項(xiàng)目帶來的風(fēng)險(xiǎn)。但是,確立的需求接口人未經(jīng)過系統(tǒng)培訓(xùn),在需求調(diào)研以及與客戶溝通的過程中,工作表現(xiàn)只能說是差強(qiáng)人意。
注意維護(hù)需求調(diào)研記錄以及需求跟蹤表。這一工作做得不夠好。由于需求調(diào)研人不夠?qū)I(yè),而項(xiàng)目經(jīng)理以及需求分析負(fù)責(zé)人對這一過程還欠缺足夠的重視,同時沒有好的工具或流程來監(jiān)控這一過程,使得需求調(diào)研記錄沒有發(fā)揮更大的作用。此外,需求跟蹤也非常重要,畢竟,任何項(xiàng)目的需求都不是固定不變的,需求隨時會發(fā)生變更,而開發(fā)人員實(shí)現(xiàn)的需求也可能會與客戶的要求偏差。
注意維護(hù)需求矩陣。項(xiàng)目經(jīng)理對這一內(nèi)容缺乏足夠的重視與理解,項(xiàng)目開發(fā)過程體系中也缺乏好的需求矩陣文檔模板。但是在項(xiàng)目中后期,項(xiàng)目及時撰寫了EAS項(xiàng)目需求功能列表,并結(jié)合交付版本與客戶進(jìn)行了溝通和協(xié)商,從而規(guī)避了需求偏差的風(fēng)險(xiǎn)。
控制需求變更。重視CCB的作用,同時應(yīng)建立需求變更的響應(yīng)機(jī)制。EAS項(xiàng)目組對于需求變更的響應(yīng)還不夠及時,這一點(diǎn)項(xiàng)目經(jīng)理與項(xiàng)目管理小組要擔(dān)負(fù)一定的責(zé)任。
設(shè)計(jì)
重視架構(gòu)設(shè)計(jì)。EAS項(xiàng)目的成功,一定程度是源于我們有個優(yōu)秀的框架開發(fā)小組,我們在項(xiàng)目立項(xiàng)之初就基本確定了整個系統(tǒng)的架構(gòu)。其中雖然發(fā)生了一些變化,但核心架構(gòu)仍然沒有發(fā)生大的變化。由于,我們建立了穩(wěn)定、簡單的系統(tǒng)框架,可以極大地提高開發(fā)效率,規(guī)避了對框架的重復(fù)編碼。
善于對設(shè)計(jì)作出取舍。項(xiàng)目開發(fā)的三要素是成本、質(zhì)量與進(jìn)度。在保證質(zhì)量的前提下,為了項(xiàng)目進(jìn)度不出現(xiàn)大的偏差,EAS項(xiàng)目組并沒有過分強(qiáng)調(diào)技術(shù),特別是在考慮進(jìn)度的情況下,犧牲了系統(tǒng)的部分可擴(kuò)展性。雖然這為系統(tǒng)的后期維護(hù)帶來一定隱患,但卻能夠有效地保證項(xiàng)目的進(jìn)度。從EAS最初的架構(gòu)設(shè)計(jì)來看,我們引入了AOP,試圖簡化ORM以及橫切關(guān)注點(diǎn)例如日志、異常、權(quán)限、事務(wù)等功能的實(shí)現(xiàn)。同時,希望采用WCF,利用SOA思想建立松散耦合的面向服務(wù)應(yīng)用程序。但隨著客戶需求的變化,我們果斷地放棄了采用WCF的構(gòu)想,同時又克服了技術(shù)困難,堅(jiān)持了對AOP的使用,并為此成立了框架開發(fā)小組。事實(shí)證明,在技術(shù)的抉擇上我們作出了正確的決定。
重視UI原型設(shè)計(jì)。系統(tǒng)的原型設(shè)計(jì)與需求分析相輔相成。如果有好的原型版本交付給客戶,則客戶更能夠理解系統(tǒng)的實(shí)現(xiàn),促進(jìn)溝通的有效性與準(zhǔn)確性。在EAS項(xiàng)目中,我們從一開始就確立了原型設(shè)計(jì)小組,并在分析需求階段,就開始了原型設(shè)計(jì)。這一做法無疑在客戶溝通、需求確認(rèn)、UI設(shè)計(jì)等方面都發(fā)揮了很大的作用。但是,我們在這一點(diǎn)上,由于缺乏專門的UI設(shè)計(jì)人員,因此,這一工作還存在很大的缺陷,甚至于UI的設(shè)計(jì)為迭代版本的交付帶來了很大的障礙。在項(xiàng)目后期,關(guān)于UI的bug是最多。因此,我們認(rèn)為在開發(fā)類似的WEB應(yīng)用程序時,應(yīng)盡早確立UI設(shè)計(jì)規(guī)范,以約束所有的UI設(shè)計(jì)。同時,必須培養(yǎng)專門的UI設(shè)計(jì)師,在開始原型設(shè)計(jì)時,就盡快完成UI交互的設(shè)計(jì)。并且,必須成立專門的UI設(shè)計(jì)小組,在需求階段與需求分析師合作,在編碼階段與開發(fā)人員合作。
測試
測試成員應(yīng)了解需求。如果不了解需求,測試人員無法編寫正確的測試用例,同時在測試過程中,也可能因?yàn)殄e誤地理解需求,從而導(dǎo)致報(bào)告錯誤的bug,影響開發(fā)人員效率。加強(qiáng)開發(fā)人員與測試人員的合作。開發(fā)人員必須及時響應(yīng)測試人員提交的bug。而測試人員也應(yīng)跟蹤開發(fā)人員對bug的修復(fù)情況。測試之初必須確定測試原則,對bug的嚴(yán)重程度進(jìn)行分級。同時,必須確定修復(fù)bug的優(yōu)先級別。
項(xiàng)目管理
進(jìn)度管理
保證項(xiàng)目進(jìn)度不出現(xiàn)大的偏差的前提是制定一個好的項(xiàng)目計(jì)劃。必須根據(jù)項(xiàng)目規(guī)模,成員情況,技術(shù)難度等多方面考慮整個項(xiàng)目計(jì)劃。如果項(xiàng)目的deadline已經(jīng)確定,則必須采用一些方法來保障項(xiàng)目計(jì)劃的完成。首先是選擇符合項(xiàng)目的軟件開發(fā)生命周期。通常情況下,并不建議采用瀑布開發(fā)方式。最佳的辦法,應(yīng)該是RUP或者敏捷開發(fā),然后結(jié)合原型法制訂項(xiàng)目計(jì)劃。這樣可以規(guī)避因?yàn)樾枨笞兏a(chǎn)生的風(fēng)險(xiǎn)。
其次,要每日跟蹤項(xiàng)目的進(jìn)展情況。可以通過晨會、周會以及項(xiàng)目日報(bào)、項(xiàng)目周報(bào)了解項(xiàng)目進(jìn)展情況。同時,需要為各個小組指定進(jìn)度跟蹤人,根據(jù)各個小組長的日報(bào),判斷實(shí)際的進(jìn)度是否與計(jì)劃出現(xiàn)偏差。要制定項(xiàng)目進(jìn)度偏差的應(yīng)對方法。一旦項(xiàng)目進(jìn)度出現(xiàn)了偏差,必須采取相應(yīng)錯誤解決問題;蛘咄ㄟ^加班、增加人手、申請項(xiàng)目進(jìn)度等方法及時作出響應(yīng)。
及時向項(xiàng)目成員匯報(bào)項(xiàng)目進(jìn)度情況。只有讓各個項(xiàng)目成員了解到項(xiàng)目現(xiàn)狀,才能夠給每個成員增加壓力,不至于松懈。同時,也能夠使得每個成員能有一個目標(biāo),而不至于茫然失措。
制定項(xiàng)目計(jì)劃時,必須考慮階段評審與同行評審的時間。這一點(diǎn)在EAS項(xiàng)目中做得不夠好。其中原因也是由于項(xiàng)目進(jìn)度本身較緊的緣故。注意維護(hù)項(xiàng)目進(jìn)度跟蹤表與項(xiàng)目進(jìn)度偏差跟蹤表。讓項(xiàng)目管理部以及QA及時掌握項(xiàng)目進(jìn)度,有利于對項(xiàng)目進(jìn)度的管理。
變更管理
變更包括需求變更、人員變更。如果不控制好,兩者對項(xiàng)目的進(jìn)展都會帶來災(zāi)難性的后果。需求變更在前面已經(jīng)敘述,而EAS項(xiàng)目中發(fā)現(xiàn)人員變更的情況也非常嚴(yán)重,因此這里重點(diǎn)介紹關(guān)于人員變更的管理。
如果發(fā)生人員進(jìn)入的情況,那么對項(xiàng)目帶來的通常都會是好的影響。但我們也必須注意如何讓新成員更快地融入團(tuán)隊(duì)。整體上講,如果需要新成員加入,發(fā)生變更的最佳時機(jī)是項(xiàng)目前期。如果在項(xiàng)目中后期加入新成員,無疑則意味著項(xiàng)目出現(xiàn)了災(zāi)難性的后果。而新增加的成員,由于不熟悉項(xiàng)目,所能帶來好的影響也是有限的。如果不處理好新成員與老成員之間的合作關(guān)系,反而會帶來負(fù)面影響。
人員的退出很多時候是不可控的,同時對項(xiàng)目帶來的影響也是不可估計(jì)的。為了將這些影響降到最低,就必須在項(xiàng)目開始之初就要確立編碼規(guī)范。同時,還應(yīng)該重視對文檔的維護(hù)與更新。而在人員退出時,必須做好交接工作。同時,還應(yīng)對這種變更進(jìn)行合理的評估,并及時報(bào)告項(xiàng)目管理部,并與客戶及時溝通。如果對項(xiàng)目進(jìn)度有嚴(yán)重影響,應(yīng)爭取最大的努力取得客戶的理解,提出項(xiàng)目延期的申請。
風(fēng)險(xiǎn)管理
要在項(xiàng)目開始之初就考慮到項(xiàng)目過程中可能出現(xiàn)的所有風(fēng)險(xiǎn),是不現(xiàn)實(shí)的。但是,我們必須考慮對風(fēng)險(xiǎn)的管理,尤其是在制訂項(xiàng)目計(jì)劃以及創(chuàng)建團(tuán)隊(duì)的時候,考慮這一因素。風(fēng)險(xiǎn)有很多,包括需求的風(fēng)險(xiǎn)、進(jìn)度的風(fēng)險(xiǎn)、質(zhì)量的風(fēng)險(xiǎn)以及技術(shù)風(fēng)險(xiǎn)等。必須制定一套完整的風(fēng)險(xiǎn)管理計(jì)劃,而一旦發(fā)生了風(fēng)險(xiǎn),則必須及時響應(yīng),組織相關(guān)人員解決風(fēng)險(xiǎn)。不能忽略任何一個小的風(fēng)險(xiǎn),否則一個小的風(fēng)險(xiǎn)到最后會造成大的災(zāi)難。風(fēng)險(xiǎn)的把握必須要有項(xiàng)目經(jīng)理與系統(tǒng)架構(gòu)師把關(guān)。
成員管理
不團(tuán)結(jié)的項(xiàng)目組是無法保證項(xiàng)目的成功地。項(xiàng)目經(jīng)理與項(xiàng)目組長在管理團(tuán)隊(duì)成員時,必須時刻注意成員狀況,即使處理工作出現(xiàn)的矛盾與摩擦,隨時保證團(tuán)隊(duì)合作精神得到最大程度的執(zhí)行。
持續(xù)地保證項(xiàng)目成員的士氣非常重要。項(xiàng)目每取得一個階段性的進(jìn)展,必須告知全體成員,如此才能收獲成功的信心。項(xiàng)目開發(fā)過程需要注意勞逸結(jié)合。一味地強(qiáng)制性加班,只能降低項(xiàng)目成員的工作效率。項(xiàng)目過程中,如能適當(dāng)?shù)亻_展一些活動,無疑能夠讓團(tuán)隊(duì)成員感受到項(xiàng)目組的集體氣氛。在階段實(shí)現(xiàn)的重要時刻,項(xiàng)目經(jīng)理必須注意通過文字、語言等激勵項(xiàng)目組成員。而項(xiàng)目經(jīng)理的自信也是保證成員士氣的一個關(guān)鍵。必須注意了解團(tuán)隊(duì)成員的心理狀態(tài)與工作狀態(tài)。項(xiàng)目成員的戰(zhàn)斗力除了是個人的能力發(fā)揮之外,一個好的領(lǐng)導(dǎo)也是至關(guān)重要的。因此,必須選擇合適的項(xiàng)目組長,通過他們掌握整個項(xiàng)目團(tuán)隊(duì)成員的工作進(jìn)展。同時,還要了解每個成員的能力,以安排合適的角色與崗位。
重視開發(fā)組與測試組以及項(xiàng)目管理小組的合作。項(xiàng)目組是一個整體,每個成員的角色不同,但大家都是團(tuán)隊(duì)的重要一員。
2009-9-8