天天看點

有效的項目管理

這是微軟資深項目經理人StephenMaguire的項目管理經驗。希望對大家有用!

首先明确一些文中的概念:

項目經理:是項目的負責人,負責拟定進度,監督工作确實按進度實行,確定所有工作都方向正确,不出纰漏,協調團隊關系,并向進階主管報告項目狀況。

設計師:我們這裡說的設計師包括程式設計師和網頁設計師,網站開發的主力人員。

技術經理:由團隊中資深設計師擔任,負責項目的内部整合,确定開發規範,確定技術檔案更新。

産品經理:非團隊人員,負責與行銷人員或客戶協調,監督網站的開發符合客戶和公司的期望。

第一章.有效團隊的基礎。(共4節)

1.專心改善産品

公司付工資給設計師,要他們在合理的時間開發出品質精良的網站,但是設計師們的時間卻經常被其它事情占用了。

典型的情況是設計師要花大量的時間準備會議,參加會議,讀寫開會記錄和進度報告,還有回複email等等,這些事情都不能改善網站的工作,雖然其中一些是設計師自己主動做的,但更大一部分是項目經理下的指令。

雖然項目經理的本意是好的,但是卻違背了項目經理的基本守則:

項目經理的任務是努力消除設計師工作上的一切障礙,讓設計師權利專注在真正重要的工作上---網站開發。

這不是震驚世界的發現,隻是簡單的道理,但是有多少項目經理确實做到呢?

請不要從字面上了解我的話,并不是說設計師隻許制作網頁,開發程式,事實上,思考如何設計,測試和教育訓練等等,雖然不是直接投入在改善網站上,但對網站的品質卻有重大深遠的影響。

2.排除幹擾

如果你希望團隊在期限之内完成網站,就必須盡可能排除一切不必要的工作。在你分派工作給組員前,請問問自己,這件工作真的有必要讓大家做嗎?身為項目經理,必須時刻問自己一個問題:

“我努力的目的究竟是什麼?”

這樣工作就不容易偏離方向。記住,要以整個項目的眼光來看事情,你就不會陷入個别細節中了。

比如開項目進度會議。目的是為了了解項目進行的情況,以避免項目進度失控,但是如果每一個項目都如期完成,也沒有人要加班,那還有必要報告進度嗎?

還有常見的就是讓組員寫報告,交代自己做了什麼,解釋為什麼延遲了,這往往會令很多設計師頭疼和反感。一天8小時工作時間,很可能4個小時花在了寫報告上。而正常的開發工作卻不得不加班做。

請不要誤解我的意思,我并不是說不需要進度報告,隻是提醒項目經理們,不要過分注重“項目流程”,而忽略了真正的産品----你的網站。我的一點心得是:用一個新的辦法了解進度,容易寫,而且不花時間。

1).每當有設計師完成一個功能(子項目),就發一個内部email給大家;

2).每當項目進度可能落後,就和我私下交流,讨論解決的辦法。

3.明确目标

就象你準備考一個學位或者買房子,都要籌劃一番,然後行動,再達到目的,做一個網站項目同樣需要制定明确的目标。注意“要完成一個網站”隻是一個模糊的目标,它還不夠具體和明确。

實際操作中,可能很多網站在目标不明确的情況下也完成了,但問題是,在這之前,有多少時間被浪費了?雖然你運氣好,完成了項目,可是比起有明确的目标,有目的有控制的規劃,實施來說,哪一個更穩當,風險更小呢?

什麼樣的目标是明确的目标呢?其實并不一定是博大精深的,隻要足夠詳細,能夠保證項目向正确的方向進行就可以。通常隻要項目組長花幾小時,或者幾天時間就可以制定一個詳細的項目目标。例如本站:

目标1:建立一個以網站項目管理為主題的網站。

評價:目标已經明确主題,但還是不夠詳細。

目标2:為網站項目管理愛好者提供一個交流的平台。

評價:目标定位了服務對象和主要功能。但是并沒有展現我們建立網站的深層目的。

目标3:為網站項目管理愛好者提供一個學習交流,并能夠共同制定詳細規範的平台。

評價:明确的目标,指出了服務對象,最主要的功能和網站本身的目的。

在目标确定後,我們就堅持這個大方向,凡是有利于目标實作的最先完成,比如:論壇,規範文章。與目标無關或關系不大的,可以不做或者推遲做,比如人才交流,漂亮的界面等。

設定目标就是把“你要完成的事”用清晰的語言描述出來,讓團隊每一個成員都有明确的概念。隻要把目标稍微理得清楚些,整個項目的方向就會有驚人的改變。記住這一點吧:理清詳細的項目目标,可以避免在不必要的工作上浪費時間。

也許設定目标會花你一兩天時間,但相對報酬是非常值得的!

4.設計的優先考慮

好比買菜,有人買罐頭的因為最便宜,有人買冷凍的因為最友善,有人買新鮮的因為最健康,因為在他們的心目中,強調的優先考慮不同,網站開發也是一樣的道理:同一個程式,不同的設計師寫的代碼必定不同,有認為代碼越簡練越好,有認為容易使用最重要,還有的則喜歡追求執行速度。

項目的目标和網站開發的優先考慮并不相同,但兩者有重疊和影響的部分,是以我們要建立以下基本觀念:項目目标引導項目的方向,而設計的考慮順序影響設計的過程。

每個項目的具體情況不同,考慮的優先順序也回不同,一般來說,程式設計考慮的優先級表為:

1.尺寸大小(size)

2.速度

3.安全性

4.可測試性

5.容易維護

6.簡潔

7.再用性

8.可移植性

除了優先考慮順序外,你還應該建立各項考慮點的品質規範,例如你認為尺寸是優先考慮,那麼多大才算合格呢?如果事先能夠決定最合适的優先考慮順序,并建立品質規範,團隊就不會浪費時間,網站的整體風格就會比較一緻。

第一章小結

回顧本章讨論的内容,我們可以得出網站開發的良好基礎是:

确定您要達成什麼樣的目标以及如何去做,讓每一位組員都明白目标,并專注地朝這個目标努力,設定設計的優先考慮順序,以及相對的品質規範。

第二章有效的作業方式

1.什麼時候修改錯誤

如果我問你,網站開發過程中,正确的除錯時機是什麼?你會怎麼回答?

A.等到所有功能開發完畢後再一起測試修改;

B.一發現錯誤就立刻除掉它;

C.無所謂,反正花的時間是一樣的。

正确的選擇是B:一發現錯誤立刻除掉!

對項目來說,最糟糕的情況莫過于被bug整得團團專,來不及完成項目目标。如果隻管開發,把bug留到最後,會高估項目的完成率,看起來馬上要完成的項目,卻驚異的發現還需要3個月的時間除錯。微軟的經驗是:

(1).bug越晚清除,時間花得越多;

(2).在開發過程中立刻除蟲,可以讓您早些學到經驗,然後不會犯同樣的錯誤;

(3).如果能夠保證沒有任何錯誤,您就能比較準确的估出項目的完成時間。

是以,設計師應該把找錯誤當成一件重要的事情,不要為任何理由而耽誤。

2.email的時間陷阱

email是個很棒的工具,但是水能載舟,亦能覆舟,如果email被不當使用,也會影響生産力。

我常發現很多設計師喜歡讓email打斷他們的工作,不是指他們發了太多的email,而是隻要有新的email進來,他們就停下手邊的工作,看看有什麼新聞,有什麼新鮮事,并開始回複email。有些設計師5分鐘就收一次信,這樣一天下來,可能什麼事也做不成,因為設計工作是需要一整段時間去思考和沉在其中才能完成的。

為了解決這個問題,我告戒新設計師門,恢複email要分批做,早上一上班,中午休息時間,或者是下班前看一下都可以,但不要有事沒事都不停的看email。

3.好方法讓大家分享

工作的政策是非常重要的,因為它是許多經驗和思維濃縮而成的,将這些政策或者方法集合起來,能夠讓個人的生産力和工作品質提升到更高的境界。

身為主管,你應該鼓勵組員提出改進工作效率的建議。引導組員思考的方法也很重要。比如,下面兩個問題:

a.為什麼進度總是一再落後?

b.有什麼辦法可以避免将來再發生進度落後?

第一個問題可能的答案是:互相依賴的工作太多,工具太難用,老闆是個白癡等等;第二個答案可能是:減少互賴性的工作,購買更好的工具,與老闆加強溝通。

兩個問題的方向不同,第一個是探究原因,導引出抱怨;第二個是未來改進的方法,導引出解決辦法。

問題越精确,問題越有力,對項目目标的實作就越有益,讓我們再看三個問法:

a.如何保持每次都如期完成項目?

b.如何在不加班的前提下,如期完成項目?

c.如何在不加班,也不增加人手的前提下,如期完成任務?

第三個問法,就迫使大家來點真正有創意的思考和認真檢讨工作本身值得改進的地方了。一次比一次更精确的問題,可以刺激思考過程,激發更有創意的答案。

4.無意義的懲罰

懲罰是一種心理上的負強化作用,懲罰是對員工的責罵,訓斥與威脅,就象鞭打馬匹使它服從主人的指令。發現有一位組員進度落後了,不得了!叫過來罵一頓,這就等于是給了他一貼重劑量的藥物,逼使他以後不敢再對進度掉以輕心。

這種管理手段是該受譴責的,我絕對不鼓勵任何人這麼做。想一想我們前面提到的立刻除錯政策,如果設計師發現錯誤,他花費好幾天時間解決這個問題,當然不是他喜歡的結果,但主管卻是以讓他受到威脅,設計師以後還會仔細查錯嗎?我們希望任何事都是很自然,沒有必要加重組員的苦惱,絕不是強調誰是老闆誰是奴才,誰必須服從誰。

如果主管們的用意是希望組員是以而工作更努力的話,就大錯特錯了。這種責罵隻會激起組員心中的憤怒,羞惱和沮喪。實際上,往往這些項目的問題都出在管理方面,目标不明确或者野心太大,設計師隻是倒黴的遇上了差勁的主管,其實他們的能力不比其他項目的設計師差。是以放棄責罵吧,責罵隻會讓項目更糟,絕對沒有任何改善的效果。

第二章小節

這一章的内容,我們主要明确以下觀點:我們要采取政策性的作業方式,并不斷的找出一些簡單而有效的方式改善目前的工作,小小的改變可能産生驚人的效果。

第三章:保持進度

我們都希望項目按照事先規劃好的程序來進行,但事實總是無法盡如人意,有時候會有點超前,大部分情況是落後,。即使最順利的項目,也無法完全按照計劃執行,但是,如果你放任計劃随意進行,有一天你猛然發現項目脫軌太遠,無法把方向扭過來,剩下的時間也不夠,那麼項目就完蛋了。項目就象一枚瞄準月球的火箭,隻要有一點點不夠精确,到時候就無法命中目标,差之毫厘,失之千裡,實在不可不慎重。聰明的主管懂得這個道理,他們會經常注意項目的精度,随時修正方向,保持項目不偏離計劃進行。本章将介紹一些很有效的政策,幫助項目保持進度。

1.向前看

我一直相信,項目之是以脫軌,主要原因在于人們沒有認真思考如何使項目保持進度,順利進行。如果沒有未雨綢缪,隻是坐等問題發生,到那時候就太遲了。一個月前沒有花30分鐘思考這個問題,現在就可能要浪費幾小時或幾天的時間去修正。這就是所謂的“被動工作”。

解決這種被動工作的方法,就是化被動為主動,事先發掘潛在的問題,并設法避免。有很多方法和技巧可以訓練自己“向前看”,但總結起來不過是一句簡單的要決:

定期暫停手邊的工作,然後往前思考,随時做必要的修正,以避免未來的大障礙。

我已經有十年以上的習慣,每天花10到15分鐘思考下列問題,并且列出答案:

有什麼事情是我今天能做,而且可以幫助項目在未來幾個月内順利進行的?

這是一個十分簡單的問題,但是如果主管定期用它檢讨,思考,必定能想到許多保護項目不受以外打擊的妙方。

2.明确定義需求的範圍

有一個故事:我出差住旅館,有時候會去餐廳吃早餐,偶爾會有客人跑進來,看到大家都在吃早餐,就問服務生:“你們的早餐時間幾點結束呀?”我看到這位餓慌的客人急着向後轉,喃喃自語:“我真想吃午餐。”然後在服務生沒來得及向他解釋現在已經可以點午餐之前,匆匆離去。這位客人明明想吃午餐,卻問早餐結束的時間,他該問的是“現在供應午餐嗎?”

通過這個故事,我想說的是:人們在開口要求的東西未必是他真正想要的,處理他的要求之前,請務必确定他究竟想要做什麼。

在網站項目開發中,經常會遇到客戶或者上司層提出一些希奇古怪的需求。一次,首席設計師驚慌失措的跑來找我,告訴我麻煩來了,客戶對新設計的界面不滿意,要求按照某個著名網站一摸一樣的設計。如果真的那樣做,需要重新花一個星期才能做出來,可是目前離期限的時間已經很短了。聽了他的陳述後,我必須承認如果真得那樣做,我們的進度就完蛋了,同時我也很好奇,為什麼客戶會有這樣的要求,是以在我答複他們做還是不做之前,請客戶經理去了解一下這個需求的原因。不一會兒,客戶經理笑嘻嘻地回來了。

“他們隻是看中了那個網站的動态下拉菜單,覺得那樣比較吸引人”

呵呵,我知道他在笑什麼了,這樣的動态菜單我們其實早就有現成的模闆了,隻要将它替換現有的設計就可以了。而我們的設計師不清楚客戶的喜好而已。

大部分客戶在提出需求時都不解釋原因,這種情況太普遍了,甚至你的管理層也會發生這種情況。如果你從他們的請求中無法看出他們的目的,你可以反問他們,在還沒有弄清楚究竟想要做什麼之前,不要貿然答應,甯可拒絕他們的要求也不要浪費這種時間。

3.就是說不

當遇到客戶或上級的無理需求,項目經理往往會忍氣吞聲的同意他們的要求。迫于某些壓力,主管們甯可甯事息人,也不願意為了整個産品或自己的團隊堅持最佳的選擇。

有時候,對方的請求也可能是非常合理的,你也想同意,但是因為你的日程排滿了,實在愛莫能助,您也隻好對他們說“不”。然而,在我的經驗中,很多主管為了避免沖突,仍然會同意這樣的請求,隻是不知道該如何如期完成這些過多的工作,隻是想到時候再說吧,船到橋頭自然直,事實上事情很少這麼容易---船上若是載了太多的貨,就是船身直了也過不了橋啊。

這些主管不了解,勉強接下自己不可能完成的任務,實在是一長痛代替短痛的做法,到時候無法如期完成,倒黴的是整個團隊是以必須加班工作。是以,最好的辦法還是老老實實拿您的日程表,與客戶或上級說明自己心有餘而力不足的情況,設法安排一個折中的日程或工作内容。想想這要比現在無條件答應請求而最後食言的結果要好的多。

我并不是鼓勵您對任何計劃外需求都一口回絕,我隻是強調:絕對不要答應别人自己做不到的事情,這樣對雙方都有害無益。

說“不”也許令人不快,但這才是勇敢的面對問題的态度。說完“不”之後,就是設法解決問題的開始;明知道不可行而答應,就是問題發生的開始。

4.你無法讓每個人都滿意

身為主管,您一定回面臨各種各樣的要求,為了工作的效能,您得學會在适當的時機,适當的說“不”。無論您說得多麼委婉,對方都不會喜歡被拒絕,他們可能會認為你錯了,然而,您必須了解自己無法讓每個人都滿意的事實,您要做的是協調,而不是完成每一件事,那是做不完的。

當您碰到互相沖突的需求時該怎麼辦?有沒有比較有效的辦法?這就是我們在前面強調項目目标的用意了。例如您的目标是完成網站的主要功能,附加的裝飾性的功能需求就應該婉拒。當然您一定會受到抱怨,您不妨耐心向客戶解釋,問題總得交代清楚。

每個人都不願意被别人讨厭,這是人類的本性。但是身為項目主管,你必須明白這個道理:如果您希望每個人都滿意,最後您會焦頭爛額,什麼事都做不成。

記住:不要為了讨好别人而傷害工作程序,您永遠要根據自己的目标,做适當的決策。

同樣,對待上級的建議您也應該考慮後再決策,不要盲從。應該以項目目标為最優先的考慮。我不是主張反抗權威,而是強調:上級也是人,一樣可能犯錯,他們的建議不一定是最好的,如果你想做一名出色的主管,您必須非常認真的衡量所有的建議,不論是誰提出的,您都得确定其符合項目目标才能采納。

如果上級要求您做一件事,而您認為不妥,那您應該在着手進行之前向上級說明您的想法,也許上級回同意你的想法而放棄他的建議,也許,上級會贊許你的想法,但仍請你考慮他的意見,不論結果如何,起碼經過溝通對彼此都有幫助。

記住:是你在為項目負責,不要讓任何人的建議阻礙項目的進行,包括上級的建議。

5.很酷,但并不重要

網站項目的開發,不能隻是為了有趣,有挑戰性,或者夠個性,夠令人眩目。

有些時候,設計師會建議增加一些花哨的或者不應該開發的功能,他們的出發點是好的,渴望做出最好的産品,滿足客戶的需求。隻是他們并不那麼清楚怎麼做才是對産品最有利的,這種不應該加入産品的功能特色有兩類:一是不符合産品的未來發咱方向,僅僅因為這項功能别人都有;二是客戶的特殊要求。有時候,功能齊全并不一定是最好的,(每個網站都開發聊天室,論壇,投票,郵件清單,留言本,計數器,但是并不一定都有用。)有自己獨特的風格更重要,在産品中加進了太多的枝枝節節的東西,可能使産品過度膨脹,也花費了設計師們太多時間和精力,未必是值得的。

遇到這種情況的話,您該怎麼辦呢?您應該探究這個需求背後的動機。好好想一想,對産品而言,加入這些功能有沒有政策上的價值,能不能真正改善産品?如果僅僅是很酷,沒有其他更具說服力的理由的話,那麼請不要在這上面浪費時間。

第三章小結:

到目前為止,相必您已經很清楚什麼樣的工作才是應該全力投入的:與目标一緻的政策性工作。但是這還不足以讓您保持進度,你還得盡量撇開不合理需求,克制大家追求“酷”的欲望,盡量減少對産品沒有改善效果的工作。如果你無法學會說“不”,或者無法了解别人真正的需要是什麼,你就會發現自己深陷泥沼,淨做不該做的事情。

想確定項目按計劃進行,其關鍵就在于項目經理完全明白該做什麼,并且不讓該做的事受到不當的幹擾。

繼續閱讀