Laura Rose, QE Manager, Rational
2005 年 10 月 19 日
來自 Rational Edge:軟件開發(fā)團(tuán)隊(duì)依賴于嚴(yán)謹(jǐn)?shù)挠?jì)劃日程安排。但除了使用基本的日程安排工具以外,項(xiàng)目經(jīng)理怎樣才能權(quán)衡相互矛盾的要求或是有足夠的時間來應(yīng)付沒有預(yù)料到的、對最佳計(jì)劃構(gòu)成威脅的事情?這篇文章提供了一些復(fù)雜的日程安排技巧,可以用來區(qū)分優(yōu)先級、明確價(jià)值目標(biāo),并比較不同活動的相對價(jià)值。
你是否有足夠的能力領(lǐng)導(dǎo)一個軟件開發(fā)項(xiàng)目或調(diào)整你的孩子的足球課和舞蹈課時間?時間表對如何合理安排一系列的事件是非常有用的工具。許多時間表都包括一個開始和一個截止時間,任務(wù)所需時間和任務(wù)與任務(wù)之間的從屬關(guān)系。但不管你如何出色地安排了一系列事情,未期望的事件總是會出現(xiàn),占用你的時間,使項(xiàng)目未能在最終期限之前完成。你事先沒有料到的人會參與到你的計(jì)劃中,并產(chǎn)生影響,控制事情并通常使事情變得復(fù)雜。當(dāng)我們沒有辦法處理好未預(yù)料到的事情和人際關(guān)系時,我們的日程表開始支離破碎。
制定好的時間表是非常困難的,這是藝術(shù)和科學(xué)的結(jié)合體。在這篇文章中,我將會討論如何進(jìn)行實(shí)際的日程安排,力圖涵蓋所有上面提到的各種類型的事件——計(jì)劃中的、可能的、難以想象的。有許多技巧可以幫助你保持機(jī)智的頭腦,這些技巧是你的筆記、清單、重要事件和備忘錄里沒有的。我的十二個小提示區(qū)分優(yōu)先級、明確價(jià)值目標(biāo),并比較不同活動的相對價(jià)值。它們將傳統(tǒng)的清單與經(jīng)過改進(jìn)的關(guān)系相結(jié)合,以得到預(yù)期的結(jié)果。
進(jìn)行實(shí)際日程安排的十二個小提示
聽到一些團(tuán)隊(duì)抱怨說我們沒有足夠的時間是很經(jīng)常的事。我們經(jīng)常感覺精疲力盡,對一個迫在眉睫的時間表感到無可奈何,當(dāng)我們與時間或日程表進(jìn)行競爭時,總是極力斗爭,但是失敗的可能性卻很大。當(dāng)我們停止與時間的競爭時 1 并根據(jù)我們的時間表和能力開始工作,我們便增加了成功的可能性
例如,時間表本身可能并不代表什么:它只是表示我們?nèi)绾芜x擇在有限的時間里完成多少任務(wù)。明智地決定將什么放入時間表并如何在這些范圍內(nèi)工作是在我們的控制之中的。
下面的技巧將幫助你重建控制的能力。它們舉例說明了怎樣區(qū)分優(yōu)先次序,怎樣通過比較每個事件的相對價(jià)值來弄清事實(shí)。
- 不要用我很忙來推卸責(zé)任。
- 制作出一個詳細(xì)的任務(wù)清單。
- 盡早判斷出關(guān)鍵路徑和瓶頸。
- 做對客戶有價(jià)值的事情。
- 執(zhí)行客戶所支持的方案。
- 知道如何高效且迅速地作出決策
- 嚴(yán)格執(zhí)行合乎情理的強(qiáng)制手段。
- 執(zhí)行高效的會議管理。
- 接受革命性的好建議。
- 只要可能的話,減少存貨。
- 不要制造混亂。
- 警惕裝腔作勢的氛圍。
注意:我覺得自己的一些小提示帶有我稱為附加小提示的信息。這些信息包括你在作出自己的判斷時將會用到的一些相關(guān)的技巧。依賴于有組織的結(jié)構(gòu)體系,一些建議你也許并不欣賞。
小提示 #1 不要用我很忙來推卸責(zé)任
你是否發(fā)現(xiàn)自己越忙,就越容易有各種各樣的干擾和要求?我們中的許多人把許多時間花費(fèi)在在一個又一個工作之間團(tuán)團(tuán)轉(zhuǎn),而不是真正靜下來做成某一件事情。但是,如果我們只是想一個人單干不被打擾的話,就會使得自己失去耐性,甚至失去隊(duì)友。
我把這稱之為忙碌的矛盾,因?yàn)槟?em>想做的和你需要做的是相反的。
事實(shí)上,我們越忙,我們越需要更多的耐性,因?yàn)樗械氖虑槎夹枰嗟臅r間。 2 需要做的事情越多,對于人們來說這些事情就越重要。負(fù)擔(dān)越重,我們越需要和他人一起工作,和團(tuán)隊(duì)一起工作。
記得你的隊(duì)友沒有必要知道你現(xiàn)在的任務(wù)清單;他們只將精力集中于自己需要做的事情。如果你肯花費(fèi)時間向他們詳細(xì)解釋你的工作和最終期限,他們就會對你的情況有一個框架性的了解。如果你能夠在時間表上劃分出時間,告訴他們你什么時候能恰當(dāng)?shù)貪M足他們的要求,你會看到他們都是非常通情達(dá)理的,而且你的時間會與他們的時間配合得很好。所有這些都要求耐心和相互理解。
我們經(jīng)常假設(shè)一個新的請求事關(guān)一些緊急、重要、需要馬上處理的事情。但事實(shí)并非總是如此。和他們一起討論你的現(xiàn)狀和他們的特殊要求,你會對如何區(qū)分優(yōu)先級有一個大致的概念。和你的隊(duì)友談?wù)摳鞣N任務(wù)和時間表的另一個好處是他們也許已經(jīng)做過一些類似的事情,這可以幫你節(jié)約時間。你可能會發(fā)現(xiàn)一些令人驚訝的配合、協(xié)作以及網(wǎng)絡(luò)工作機(jī)會。
從不同的角度評價(jià)事件是很有幫助的。忙碌并不是混亂的同義詞。并不意味放棄每件事,雖然一些人認(rèn)為盡可能快意味著盡可能力所能及地快。忙碌僅僅意味著積極地或完全地投入到工作中,而通常意味著盡可能合乎情理地快。有了耐心和溝通,控制并建構(gòu)一個緊張有序的時間表是有可能的。
時間表上需要的并行的工作越多,需要的從訂貨到交貨的時間和延遲時間越長。你進(jìn)行越多工作,你越應(yīng)該認(rèn)識到對每一個工作而言,會有更多的意想不到的事件會發(fā)生。意想不到的事情本來就是生活的一部分,不管是在辦公室外還是在辦公室內(nèi),高效而實(shí)際的時間表里預(yù)料到了它們的發(fā)生和它們對理想的工作完成順序造成的影響。如果沒有完美地建立起來的安全系統(tǒng),一個意外(或是額外增加的工作)將會產(chǎn)生多米諾效應(yīng)。如果沒有完美地計(jì)劃的緩沖措施,我們將會把時間浪費(fèi)在在一個又一個工作之間團(tuán)團(tuán)轉(zhuǎn),卻沒有做成任何事情。若在你的時間表上戰(zhàn)略性地安排一些緩沖時間,你處理意外事件,使它們不會影響你的整個時間安排的可能性就越大。你現(xiàn)在可以很有把握地說,你可以在下一個可以利用的空當(dāng)應(yīng)付意料之外的要求。
沖刺和緩沖
確保你在應(yīng)對意想不到的緊急事件時有一個方便的停頓時間的一個更好的方法是將短時間的沖刺和緩沖時間結(jié)合起來。
考慮如下事例:如圖1的上半部分所示,我們有任務(wù)A和任務(wù)B,我們估計(jì)完成它們各需要八天時間,在我們的時間表上它們總共占用了16天的時間。我們開始工作,但是在第三天結(jié)束的時候我們突然有了一個緊急事件。于是我們在接下來的一天里把時間都用在處理緊急事件、做清算上,接著我們又開始處理任務(wù) A。由于回憶我們究竟把任務(wù)進(jìn)行到哪一階段需要一些額外的時間,重新開始進(jìn)入處理任務(wù) A的工作也需要一些額外的時間,所以我們必須重新估算這個任務(wù)所需要的總時間。重新估算之后,我們認(rèn)為由于任務(wù)進(jìn)程被打斷,需要花費(fèi)比七天更長的時間來完成任務(wù)。兩天之后,我們又有了另一個緊急事件,同樣的情形再次重演。最后,我們花了超過十二天的時間來完成真正的任務(wù)A (2天進(jìn)行任務(wù)A + 1天進(jìn)行打斷原來工作的緊急事件A + 2天繼續(xù)進(jìn)行任務(wù)A + 1天進(jìn)行打斷原來工作的緊急事件B + 6天重估并完成任務(wù) ) 這正如圖1的下半部分所示。
我們不僅延遲4天時間把任務(wù)交付給需要它們的人,而且還耽誤了那些等待任務(wù)和進(jìn)行任務(wù)工作的人。
圖一:緊急事件樣本 A 包括評估任務(wù) A的最初八天。處理任務(wù) A的兩天之后,緊急事件發(fā)生了。處理完緊急事件之后,我們重新進(jìn)行評估,預(yù)計(jì)現(xiàn)在需要花七天的時間才能真正完成任務(wù) A(為了使中斷的工作繼續(xù)下去)。當(dāng)處理完另一個緊急事件之后,我們重新進(jìn)行評估,完成任務(wù) A最終需要六天。
如圖2所示,處理這種事情的一個更好的方法是將任務(wù) A和緊隨的任務(wù)B劃分成較小的、獨(dú)立的活動,或進(jìn)行沖刺。我們在每一次沖刺之間都安排了一些緩沖時間。任務(wù)A 的總體時間表現(xiàn)在從原來的八天增加到十一天。讓我們看看同樣的例子現(xiàn)在會發(fā)生什么事。
圖2:在我們的時間表里將沖刺和緩沖結(jié)合起來,我們可以看到應(yīng)用沖刺戰(zhàn)略(A1 A2 A3 A4)的真正的時間表同時滿足了緊急事件和原定日程的要求。原來的任務(wù)A方法花費(fèi)了更長的時間,卻沒有達(dá)到預(yù)期的目標(biāo)。
我們從任務(wù)A1開始。兩天之后,沒有緊急事件發(fā)生。我們毫不遲疑地開始進(jìn)行任務(wù)A2。進(jìn)行任務(wù)2的第一天結(jié)束時(整個進(jìn)程的第三天),緊急事件發(fā)生了,但是因?yàn)槲覀冇幸粋€良好的理由來說明明天結(jié)束的時候會是任務(wù)終止的一個好的停頓時間,緊急事件的處理被安排在那個時候。 3 當(dāng)我們完成A2時,我們開始花時間處理緊急事件。再一次,我們不是自動停止現(xiàn)在所進(jìn)行的工作,并在這個時間點(diǎn)將工作重心進(jìn)行轉(zhuǎn)移。這個例子以這種方式繼續(xù)進(jìn)行,直到任務(wù)A3開始之初另一個緊急事件發(fā)生了。
雖然基于沖刺——緩沖方法的原先的時間表花費(fèi)的時間比最初的任務(wù)時間表要長,但是我們的預(yù)測更現(xiàn)實(shí),所得結(jié)果也更符合實(shí)際。依靠整個任務(wù)(A1 A2 A3 A4)的人們按時完成了任務(wù),有時甚至提前完成任務(wù),而任務(wù)B部分也不需要壓縮時間。
如果一個請求出現(xiàn)了,而且它比你手頭正在進(jìn)行的工作緊急且重要得多(例如,提出請求的人不能等到你時間表上下一個可利用的間歇時間到來時才進(jìn)行工作),你應(yīng)該去找經(jīng)理并保證每個人都清醒地認(rèn)識到事件優(yōu)先級、影響以及時間表改變之后造成的結(jié)果。人們通常情況下會表示理解并接受這一方案,因?yàn)樗腔趯φ麄€工作都造成影響的優(yōu)先級次序的,而且它也比較了每個工作的相對價(jià)值和相互依賴性。通過與你的經(jīng)理進(jìn)行優(yōu)先級討論和比較,對于整個項(xiàng)目時間表上的每一個活動你都會有更清晰的認(rèn)識。
時間限制
使得時間表混亂的另一個可能事件是恭維。既然你知道自己在某一領(lǐng)域的專業(yè)水準(zhǔn),在另一個相似但不完全相同的領(lǐng)域里你是別人求助的對象。對一個同伴或另一個經(jīng)理說不是很困難的,特別是當(dāng)他們以這樣的語句提出請求這只會花費(fèi)你五分鐘的時間。我們腦海里一個小小的聲音說:好,你只需要為你的朋友和其它經(jīng)理花費(fèi)五分鐘的時間。但五分鐘通常變成半天,而你的經(jīng)理仍然在等著你的日常進(jìn)度報(bào)告,而這早應(yīng)該在昨天晚上就已經(jīng)完成。
一個好的技巧是對這些額外的要求進(jìn)行時間限制 4 和你的朋友約定一個方便的五分鐘會面,會面中他或她將盡他或她的能力解釋所面臨的情況。用所得到的信息估計(jì)這個工作將花費(fèi)你多長時間。檢查你的日歷或時間表,看看你是否有合適的時間并進(jìn)行解釋,我可以在×××天的10:00花×××?xí)r間在這上面。如果我們到那時還沒有發(fā)現(xiàn)或解決問題,我們將需要重新評價(jià)完成工作所需要的精力,工作的優(yōu)先級,并請示經(jīng)理。合適的時間限制到了之后, 停止 5 并重新評估。時間限制是不引起混亂且回答是的一個很好的方法。
有了上述所說的種種策略,你始終還是團(tuán)隊(duì)成員,這沒有使你的其它任務(wù)完成不了。但是這些策略依賴于一個詳盡的清單,清單包括你正在做的事情,該做到何時,為了誰做和為什么(優(yōu)先級)。
附加的小提示:
許多時間管理書籍建議只需要說“不”這一技巧。但有些時候,當(dāng)事情符合你的優(yōu)先級和價(jià)值時,用正確的方法說是更為聰明,當(dāng)然,這取決于你自己。 |
小提示 #2:制作出一個詳細(xì)的任務(wù)清單
又一次,如果沒有一個包含截止時期的詳細(xì)的任務(wù)清單,先前的提示是沒法起作用。如果連你自己都不清楚的話,你根本就不可能有效且可信地向你的搭檔們解釋每一件你需要完成的事情。詳細(xì)的任務(wù)清單還可以幫助你集中精力,注意每一個活動的重要性。
有效的時間管理者實(shí)際上都有一個清單(在他們的白板或是公告牌上)。當(dāng)某人帶著一個新任務(wù)而來時,他們有一個看得見的模板,知道從哪開始自己的談判。
詳細(xì)的任務(wù)清單對認(rèn)清某項(xiàng)工作該投入多少精力同樣很重要。當(dāng)你的經(jīng)理問你完成任務(wù)需要多長時間時,確保你自己明白他或她所定義的完成是什么意思。如果你的經(jīng)理認(rèn)為完成意味著下面各種情況,那你分別會怎么做呢?特征設(shè)計(jì),和項(xiàng)目的所有參與者一起重新審視設(shè)計(jì),對照編寫代碼標(biāo)準(zhǔn)和系統(tǒng)企業(yè)標(biāo)準(zhǔn)檢查編碼,在提交編碼將這些之前使用編碼總廓和狀態(tài)分析工具來收集和報(bào)告編寫代碼狀態(tài)的主要特征,單元測試,在自動建立的認(rèn)證測試中嵌入這些單元測試并使其也自動化,并完成功能認(rèn)證測試,保證有95%以上的通過率。好,但如果你認(rèn)為完成只是簡單地意味著編碼組件并提交,問題就產(chǎn)生了。而且很有可能的是,這種觀念上的差異直到很久以后才被發(fā)現(xiàn)。
當(dāng)估計(jì)你付出多少努力時,先使用一個詳細(xì)的任務(wù)清單模板。清單模板應(yīng)該包括每個主要的 6 需要在這整個的項(xiàng)目中被完成活動。一些行動項(xiàng)目也許并不需要,這取決于我們的特定目標(biāo),但至少你已經(jīng)考慮了它們每一個(與此相對的是一個沒有分配任何時間的被遺忘的任務(wù))。當(dāng)我們沒有花時間將任務(wù)寫下來而僅僅只是在頭腦里回顧它們,比起我們花時間寫下所有的工作步驟來,我們的預(yù)期回報(bào)會比較少而且會比較不精確。我的組織發(fā)現(xiàn)通過進(jìn)行純精神的預(yù)計(jì)再將預(yù)計(jì)的結(jié)果翻倍之后,我們?nèi)匀恍枰偌?0%的時間才能完成這些任務(wù)。換句話說,即使我們?nèi)我獾貙⑽覀兊木裆系念A(yù)計(jì)進(jìn)行翻倍,我們還是跟以往一樣低估了實(shí)際所需要的時間。但當(dāng)我們將模板內(nèi)提示的所有步驟都寫下來之后,我們提高了自己的估計(jì)準(zhǔn)確性;當(dāng)遇到一個隱藏或未知的任務(wù)時我們也不再那么驚訝;而且我們在所有需要事先未預(yù)計(jì)的時間的地方都備有證明文件。
當(dāng)你有可能在截止日期之前完不成任務(wù)時,詳細(xì)的任務(wù)清單幫助你和你的經(jīng)理高效地審視這個項(xiàng)目。也就是說,如果風(fēng)險(xiǎn)存在,我們還有許多備選方案包含問題的解決方案:1)修改時間表,2)聰明地增加一些資源,3)降低質(zhì)量,4)減少范圍(將我們即將要做的一些事情從任務(wù)清單中劃掉)。如果你沒有一個包含你計(jì)劃要做的事情的詳細(xì)清單,聰明地減小一些活動以在截止日期之前完成任務(wù)是非常困難的。聰明地減少任務(wù),我想說的是應(yīng)該使得減少的那些任務(wù)不會影響編碼質(zhì)量或它在整個項(xiàng)目進(jìn)程中的獨(dú)立性。
明確的活動同樣使得你可以知道自己是否有可能準(zhǔn)時完成任務(wù)。舉例說明,請你考慮圖3所示的非常含糊的時間表。
圖3:時間表
在時間表中,我們給出的完成組件任務(wù)1的精確估計(jì)時間是十天。當(dāng)我們開始著手工作之后,第九天開發(fā)者說他想要我們提交編碼。團(tuán)隊(duì)卻認(rèn)為我們在按照原定計(jì)劃執(zhí)行。
圖4:時間表 B
在時間表中,我們可以看見只有五天的時間真正被用來進(jìn)行編寫代碼。剩下的時間被分配用于檢查、測試和錯誤修復(fù)。所以當(dāng)開發(fā)者在第九天的時候說編寫代碼馬上結(jié)束時,我們實(shí)際在時間表上已經(jīng)有了四天的檢查時間。雖然這些任務(wù)在時間表上并不明確可見,但這些在時間表上沒有特別標(biāo)出的活動仍然需要被完成以滿足我們的反復(fù)檢驗(yàn)標(biāo)準(zhǔn)。
所以,同意提前完成任務(wù)是完成的意思,會促進(jìn)溝通并使得我們更好地了解自己的狀態(tài)。
小提示 #3 盡早判斷出關(guān)鍵路徑和瓶頸
風(fēng)險(xiǎn)管理在重要的項(xiàng)目管理工具中一直被高調(diào)宣揚(yáng)。但是,我們實(shí)際上并沒有花時間來建?;蚴茄芯课覀兊墓ぷ髁鞒桃员M早定義風(fēng)險(xiǎn)、關(guān)鍵路徑或瓶頸。就像定義我們應(yīng)該付出多少努力一樣,我們經(jīng)常依賴于一個快速且臨時的方法,這取決于我們對過去經(jīng)驗(yàn)的重新審視。風(fēng)險(xiǎn)管理不像項(xiàng)目中的其它所有任務(wù)和工作流程那樣,它非常少被考慮到。如果我們不能完全理解所有的任務(wù)和耗時,我們也就不能認(rèn)識到絕大多數(shù)風(fēng)險(xiǎn)。如果你沒有認(rèn)識到風(fēng)險(xiǎn),你就不能克服它們。
快速而顯而易見地定義風(fēng)險(xiǎn)的一個非常有效且方便的方法是在項(xiàng)目中用可視化的流程圖的方式勾勒出進(jìn)展的工作流程。工作流程方法可以被用來分析任何事情:工作流程分析在組件獨(dú)立性、進(jìn)展步驟獨(dú)立性甚至資源矛盾方面都是有效的??紤]圖5中工作進(jìn)展的圖表,它勾勒出了開發(fā)中的不同組件。特定的顏色代表完成這項(xiàng)活動所需要的不同的人力資源,估計(jì)的持續(xù)時間在()中。
圖5:進(jìn)展工作流程:圖示法畫出工作流程使得我們可以清楚地看出步驟3和資源“桔紅色”是瓶頸。
圖表顯示出考慮到被提議的資源分配后的一些重要含義。注意到如果不考慮資源,通過關(guān)鍵路徑的時間是9天(通過各種各樣順序排列的步驟所需的最長時間)。但由于我們使用了同樣的資源進(jìn)行步驟2a、2b和3,我們需要額外增加兩天時間。為什么?因?yàn)榧词惯@些步驟不取決于其它任何一個步驟,它們?nèi)匀皇艿劫Y源的限制。我們現(xiàn)在需要多于11天的時間。
繼續(xù)我們的分析。如果對一個步驟或資源來說有幾條輸入線,你就非常明顯地定義了一個架構(gòu)或結(jié)構(gòu)上所說的瓶頸。在這個簡單的例子中,有多個小項(xiàng)目取決于步驟3;因此,我們不僅在資源上有一個瓶頸,而且在項(xiàng)目結(jié)構(gòu)上也有一個瓶頸。除非步驟2a、2b、 2c和 2d都在指定時間里全部完成,否則其它步驟都沒法進(jìn)行。如果步驟3中的資源在進(jìn)行步驟2b的時候消耗太多,則整個進(jìn)程都不能繼續(xù)進(jìn)行。沒有其它的步驟可以開始著手。這就在關(guān)鍵路徑上放置了一個“桔紅色”資源。如果我們直到團(tuán)隊(duì)開始編寫代碼之前一直在等待,那我們實(shí)際上就陷入了瓶頸,而且我們對此無能為力,因?yàn)椤敖奂t色”資源已經(jīng)產(chǎn)生了。如果有人是唯一知道步驟2a、2b編寫代碼的人,那么因?yàn)樗俏ㄒ粨碛心莻€編碼的人,他有可能在所有三個步驟中都加入了一些額外的一些假設(shè)。他使得相互的獨(dú)立性變得復(fù)雜,但使得完成任務(wù)變得較快(再一次,因?yàn)樗蔷幋a的唯一擁有者)。他使關(guān)系變得復(fù)雜,而我們不能有效地通過增加資源來幫助他一樣。
圖示法給出工作流程使得問題清晰可視,并給我們提供了甚至在項(xiàng)目未開始之前就避免問題和一個途徑。考慮圖6所舉事例中的改進(jìn)方面。
圖6:工作流程:一旦你用圖表表示出你最初的流程,你就已經(jīng)在獨(dú)立的組件和資源附近盡已所能糾正風(fēng)險(xiǎn)和瓶頸。
一旦你用圖表表示出你最初的流程,你就已經(jīng)在獨(dú)立的組件和資源附近盡已所能糾正風(fēng)險(xiǎn)和瓶頸。在這個例子時,雖然我將我的任務(wù)劃分成許多小步驟,我的關(guān)鍵路徑卻只有七天(比我最初的預(yù)計(jì)要短)。我仍然可以感覺到“桔紅色”資源——步驟3——是一個潛在的瓶頸,所以我在潛在的瓶頸之前安排了兩天緩沖時間。這允許接下去的步驟(步驟2、2、 2和 2)以一種輕微的停止模式累積。穩(wěn)定時間是將中間環(huán)節(jié)合并、修復(fù)錯誤和質(zhì)量審查的好方法。 7 雖然我已經(jīng)降低瓶徑的風(fēng)險(xiǎn)并在關(guān)鍵路徑上提供了一些額外的時間,但是我在整個項(xiàng)目計(jì)劃中沒有增加時間。
我同樣知道資源的技術(shù)水平并不是100%可以互相交換的。但事實(shí)是,如果我們沒有做諸如此類的工作流程分析,我們就不知道那些我們不能重新分配、再訂購或更改結(jié)構(gòu)以更好地利用我們所擁有的資源和技術(shù)水平的地方。在這個例子中,工作流程中的“桔紅色”資源需要在步驟3中使用,這僅僅是因?yàn)椴襟E3的一部分需要高水平的多線設(shè)計(jì)。當(dāng)我們花些時間將那個部分從步驟的其它部分中剝離出來之后,我們可以發(fā)現(xiàn)許多其它資源可以完成步驟3的剩余部分。如果我們以另一種方式定義的沒人可以替代至關(guān)重要的“桔紅色”資源,我們可以將“桔紅色”資源放置在設(shè)計(jì)和建構(gòu)的其它地方,使得其它人可以得到已經(jīng)設(shè)計(jì)好的編碼說明書,并對這些原始模板進(jìn)行簡單編程。
這種項(xiàng)目管理技巧的另一個優(yōu)點(diǎn)是它避免了在個人單獨(dú)負(fù)責(zé)各自的項(xiàng)目時我們會遇到的資源的過度集中(或是資源的緊缺)。我們允許一個在關(guān)鍵路徑上添加附加時間來進(jìn)行緩沖,但并不是在某一任務(wù)中添加時間。非關(guān)鍵路徑上的其它任務(wù)已經(jīng)有了一個內(nèi)在的緩沖時間。
如果你沒有在工作之初就圖示出備選的工作流程,你可能很容易就陷入困境。當(dāng)你已經(jīng)進(jìn)行到項(xiàng)目的中間,在編碼的所需要的程序員也已經(jīng)確定時,這些備選方案的多數(shù)已經(jīng)不需要了。所以這個小提示的關(guān)鍵在于盡早圖示或構(gòu)建你的工作流程可以為你提供多種選擇和備選方案。
附加小提示
不要使用你最喜愛的日程安排工具(像 Microsoft Project, Modeling tool, 或 Gantt charts)來繪制最初的工作流程。這些工具會在無形中使你陷入同一種模式。使用即時貼?貼紙和一個大的白板,這對參與到該項(xiàng)目的團(tuán)隊(duì)和小組進(jìn)行討論是更簡單的方法,同時便于重新建模。多個人的眼睛可以看到單個人的眼睛所看不到的東西。這同樣幫助你同時建立交互的人際關(guān)系和團(tuán)隊(duì)責(zé)任心。
只有當(dāng)你的團(tuán)隊(duì)為決策的最優(yōu)化而感到高興的時候,你才能使用你最喜愛的日程安排或建模工具創(chuàng)建路徑,用于周期性和反復(fù)的檢查和更新。 |
小提示#4 做對客戶有價(jià)值的事情
來自斯坦迪什團(tuán)隊(duì)( 2002)的詹姆斯 瓊森所做的一個大型研究指出,45% 8 的嵌入到各種應(yīng)用設(shè)備的特征從來未被使用(見圖7)。將時間花費(fèi)沒有人使用的東西上面看起來非??尚?,所以所有這些特征是哪里來的?
圖7:嵌入特征的使用:來自2002會議的斯坦迪什團(tuán)隊(duì)( 2002)
特征清單來自很多地方。一些來自商業(yè)分析,這些商業(yè)分析需要可以看得到的、保證公司仍然具有競爭力的文件。這聽起似乎合乎情理且非常重要。我們需要有競爭力的與眾不同之處。但我們達(dá)到這一點(diǎn)的方式可能對客戶并不產(chǎn)生價(jià)值。舉例來說,考慮一下,所有的客戶報(bào)告分析,甚至你自己的分析都基于來自技術(shù)資源的比較。通常這些圖表列舉了100個以上的特征通過貼著不同方案的特定工具的相互比較,每一個特征都在其具有的方案對應(yīng)的那一欄里有一個相應(yīng)的分?jǐn)?shù)。粗粗看來,似乎有最多分?jǐn)?shù)的那個方案就是最佳方案。
我們所不清楚的是,在那100個特征里面,有整整64%的特征是很少或者從來沒有被使用的。但為了使自己的品牌相對于其它品牌而言更具有競爭力,我們將不需要的64個特征合并到自己的方案中,這使得我們可以對那些欄目標(biāo)記分?jǐn)?shù)(使得我們的產(chǎn)品更復(fù)雜,更難使用)。
依賴于客戶的反饋
需要承認(rèn)的是,對許多項(xiàng)目經(jīng)理來說在項(xiàng)目的一開始就把一個客戶列舉的所需特征里的64%排除也許是不可能的。但是,我們可以指定一個客戶,讓他在整個產(chǎn)品開發(fā)周期內(nèi)反復(fù)檢查這些特征的可用性(要求、原型、樣本)。通過這樣做,你的最終產(chǎn)品將具有更多會真正被使用的特征,你也可以獲知有什么特征你需要花費(fèi)時間進(jìn)行開發(fā)。即使你的產(chǎn)品中有100個特征,通過持續(xù)的溝通并和你的客戶相互合作,你就知道有哪36個特征是應(yīng)該集中精力的,哪64個特征應(yīng)該降低優(yōu)先級。所以,即使你可能沒有能力影響商業(yè)機(jī)構(gòu)列舉所謂的的客戶要求的特征清單,至少你知道什么東西能夠使你的客戶在項(xiàng)目結(jié)束后感到最滿意。
這種加入客戶價(jià)值的特征回顧的另一方面是客戶價(jià)值特征的移除(更經(jīng)常地,這被我們稱為仔細(xì)研究,保證與時間表相吻合)。許多時候,正是客戶們最為看重的特征(例如易用性或用戶文件)被放在了一個較低的優(yōu)先級。適用性(可以幫助客戶們決定什么是錯的、什么應(yīng)該做并且馬上開始做的有用特征)和故障檢修數(shù)據(jù)庫分類通常不被重視。這些對我們所熱衷于從事的純技術(shù)而言并不是必要的部分,但這卻是我們的客戶所看重的。通過認(rèn)識到我們所認(rèn)為的價(jià)值較低的一些特征也許是我們的客戶高度評價(jià)的特征這一可能性,我們可以同客戶討論這些方面以改進(jìn)整體的滿意度。
詢問你的團(tuán)隊(duì)
如果你沒有一個客戶贊助者,那么當(dāng)對某一個方案進(jìn)行要求的重新評估時(不管是增加或者移除特征),要讓你的團(tuán)隊(duì)明確地知道答案并仔細(xì)考慮以下問題:
- 這一特征真的會對客戶有所幫助嗎?
- 你能量化附加值嗎?
- 我們的目標(biāo)是什么?
- 這個目標(biāo)是切合實(shí)際的嗎?
- 你怎么進(jìn)行測試?
如果你有有效的答案并對上述問題進(jìn)行量化,你就能精確地提出我們所需要花費(fèi)的精力、切合實(shí)際且對客戶來說有價(jià)值的時間表。
清醒地意識到其它引發(fā)長長的特征清單的原因
導(dǎo)致軟件特征膨脹的另一個常見因素是我們共同的系統(tǒng)需求和安全功能。我們的許多公司系統(tǒng)要求來自非常常規(guī)的模板,模板包含了很多數(shù)量的應(yīng)用場合和產(chǎn)品。舉例而言,一些對網(wǎng)絡(luò)和安全系統(tǒng)的考慮在一個孤立、隔離、單一用戶模型里是不存在的,對用戶而言也不存在這樣的需求。但是,為了與公司的其它產(chǎn)品一起出售,這一種特殊的應(yīng)用需要按照特定的公司規(guī)定去做(特別是當(dāng)它準(zhǔn)備推向國際市場的時候)。 9
另一個常見的貢獻(xiàn)者是“我們,開發(fā)團(tuán)隊(duì)”這一概念。我們熱愛自己的工作。我們熱愛玩簡潔而有技術(shù)性的高級把戲。有些時候我們設(shè)計(jì)某樣?xùn)|西只是因?yàn)樵O(shè)計(jì)它有很多樂趣。或者我們挑選某一個特征,把它設(shè)計(jì)得完美無缺,以致于它包含了所有我們(但不是客戶)所可能想象的東西。這很有趣,而且我們實(shí)際上并未因?yàn)檫@些創(chuàng)造性的附加勞動而占用項(xiàng)目的時間表進(jìn)程。
小提示#5 執(zhí)行客戶所支持的方案
為你的特征清單增加客戶價(jià)值的另一個途徑是使每一個方案都得到客戶的支持。相比于在小提示#4中所建議的那種客戶重新審視的方法,這對客戶參與而言是一個更為正式的途徑。
過去,我們的產(chǎn)品經(jīng)理從各種各樣的途徑收集了各種各樣的要求,然后他們會根據(jù)是否有競爭力、需要花費(fèi)多少精力、產(chǎn)品研發(fā)周期來對這些要求進(jìn)行優(yōu)先級的排序?,F(xiàn)在,產(chǎn)品經(jīng)理需要通過挑選一名客戶代言人,他在我們試圖要完成的工作中起著核心團(tuán)隊(duì)的功能,通過他來使得這些要求的使用范圍更加廣泛??蛻舸匀诵枰獏⑴c到要求收集活動中,重新審視并設(shè)計(jì)某一特定的方案。他們對每一個方案的交付都要進(jìn)行反復(fù)的評估。他們的測試結(jié)果和使用流程說明他們的目標(biāo)是要成為我們的頭號必須通過的測試方案。他們遇到的障礙和缺陷成為我們最高優(yōu)先級的缺陷。他們最終的評價(jià)將成為我們做出做/不做這一決定的一部分。
有了客戶支持的方案,就有了所有人都可以理解的切實(shí)的團(tuán)隊(duì)目標(biāo)(對客戶而言這個目標(biāo)是成功的)。優(yōu)先級和重點(diǎn)也隨之而來。最后,我們并不是在尋找成功,而是我們一直在創(chuàng)造成功。
小提示 #6 知道如何高效且迅速地做出決策
創(chuàng)造切合實(shí)際的日程表最困難的一個方面就是做出決策
通常情況下,延遲做出決定的一個原因是你害怕做出錯誤的決定。諷刺的是,選擇不去做決定本身就延遲了行動的時間,這并不會幫助你做出正確的抉擇。即使是錯誤的決定也能使你更快進(jìn)入一個可操做的方案,這是因?yàn)槟憧梢粤⒓刺幚硪粋€已經(jīng)做出的決定所帶來的種種結(jié)果。你越快做出決定,你就能越快地開始前進(jìn),并在積極的和消極的方面都做出行動。
我并不是建議不計(jì)后果或是草率地做出決定。我推薦在可逆的方向上盡快行動,而在不可逆、高風(fēng)險(xiǎn)的方向上推遲行動。如果錯誤的選擇所帶來的不良后果很小,那么你應(yīng)該基于現(xiàn)在所知道的事情做出最好的決策并進(jìn)一步行動。在我們反復(fù)而持續(xù)地改變的技術(shù)環(huán)境中,我們不可能100%知道自己的決定是否是正確的,因?yàn)檫@個決定將在未來產(chǎn)生作用。所以只要做出決策,不要為它擔(dān)心。一旦做出決策,不要再去討論它。執(zhí)行,從任何隨之發(fā)生的錯誤中學(xué)習(xí),繼續(xù)前進(jìn)。
對于你現(xiàn)在不能作出決定的一些事情,定義出可以彌補(bǔ)你現(xiàn)在在哪和你需要在哪這兩者之間矛盾的特定行動項(xiàng)目,這可以幫助你做出決策。確保你的每一個行動都有清楚的客戶和截止時間(見小提示#7:嚴(yán)格執(zhí)行合乎情理的強(qiáng)制手段)。在我的產(chǎn)品團(tuán)隊(duì)中,我們經(jīng)常出席會議,用盡一切辦法討論一個問題。在經(jīng)歷許多爭論之后我們解散(通常因?yàn)槲覀冃枰獏⒓佑嘘P(guān)另一項(xiàng)目的另一個會議)。因此,我們不但延遲作出決定,而且我們沒有使一連串事情中的任何一件事更接近目標(biāo)。 10
附加小提示:
如果沒有人對一個有至關(guān)重要的影響的項(xiàng)目的截止時間負(fù)起責(zé)任或是義務(wù),那么這并不是一個真正的問題。將它從日程安排里劃掉,清楚地了解沒有了那個決策,什么時候也不會發(fā)生,你的項(xiàng)目不會發(fā)生改變。 |
小提示 #7 嚴(yán)格執(zhí)行合乎情理的強(qiáng)制手段
就像你可以從先前的提示中看見的那樣,我已經(jīng)提到過定義明確的行動項(xiàng)目、任務(wù)、負(fù)責(zé)人和截止日期。這本質(zhì)上來說正是合乎情理的強(qiáng)制手段的真正含義。為了能確保成功,你不僅需要一個成功的計(jì)劃,而且還需要一個明確的、帶時間限制的任務(wù)清單,清單應(yīng)該是責(zé)任人非常清楚的,且預(yù)知結(jié)果。
你同樣需要對各種各樣的行動或項(xiàng)目定義成功的標(biāo)準(zhǔn)。斯蒂芬 卡維將這個描述為任務(wù)的一開始,你的腦海里就已經(jīng)知道會有什么的結(jié)果。如果要使一項(xiàng)活動取得成功,我們需要理解成功的定義是什么。 11
用一個早期的例子來說明:成功地完成了一件事是否意味著:a)開發(fā)者向上級提交程序編碼;或者b)你的同事重新檢查并認(rèn)同了這一設(shè)計(jì),再次進(jìn)行編碼檢查以保證多于一個開發(fā)者理解這一機(jī)制,這一部分的設(shè)計(jì)以100%的通過率,通過了100%的單元測試,且在這一部分編碼中沒有明顯的大錯誤?
成功準(zhǔn)則是否起作用,取決于是不是所有人都同意成功的意思。
附加的小提示
在你出席的每一個會議里都使用合乎情理的強(qiáng)制手段這一措詞。不要只將它用于提醒你的團(tuán)隊(duì)使用合乎情理的強(qiáng)制手段,而且應(yīng)該讓他們認(rèn)識到應(yīng)該在什么時候使用它們。重復(fù)是令使用合乎情理的強(qiáng)制手段成為習(xí)慣的關(guān)鍵。 |
小提示 #8 執(zhí)行高效的會議管理
正如小提示#1所描述的那樣,我們越忙,我們發(fā)現(xiàn)自己越需要溝通和在團(tuán)隊(duì)中工作。這經(jīng)常導(dǎo)致更多的會議。由于我們把自己的大多數(shù)溝通時間都花在開會上,所以會議應(yīng)該變得更有目的性且更有意義。這在高效的會議管理中已經(jīng)談得夠多了,所以我不打算再多說什么。我們都明白,最好是:
- 對這個會議有一個目標(biāo)和成功準(zhǔn)則。
- 在時間表上有一個日程安排。
- 嚴(yán)格遵守你的時間和會議基本準(zhǔn)則。
- 在確定你遵守了你關(guān)于行動項(xiàng)目、負(fù)責(zé)人和截止日期的會議成功準(zhǔn)則之前,不要中止會議(復(fù)習(xí)小提示#7)。
我們都知道一個成功的會議所具有的屬性,但是對我們中的大多數(shù)人而言,確保我們所參加的會議具有這些屬性仍然是我們的奮斗目標(biāo)。
附加的小提示:
如果你覺得你剛從一個低效率的會議中解脫出來,這是你的錯。不管是不是你在推動這個會議或是只是參與這個會議,這都不重要。你應(yīng)該為你花費(fèi)時間的方式負(fù)最終責(zé)任。如果你不知道會議的目的、議程或合乎情理的強(qiáng)制成功準(zhǔn)則就去參加會議,那么讓那次會議成為你沒有得到這些重要答案而去參加的最后一次會議。 |
小提示 #9:接受革命性的好建議
我們都聽過這樣的嘆息:我們的時間表實(shí)在安排得太緊迫了。事實(shí)是,并不是時間表安排得太緊近,而是我們應(yīng)該怎樣調(diào)整自己去適應(yīng)它。 12 就像我先前提到的那樣,我們不能100%肯定某一個決定是否是正確的,因?yàn)樗辉趯懋a(chǎn)生影響。接受時間改變我們的環(huán)境甚至有時候改變我們的目的這一事實(shí)之后,我們同樣需要接受革命性的好建議。這就是說,要在項(xiàng)目的最初階段以一個非常保守的姿態(tài)出來。僅僅接受非常少的(3——5)個特征,并對剩下的特征給予一定的上升空間。當(dāng)項(xiàng)目進(jìn)行之后,隨著我們認(rèn)識的深入,我們會相應(yīng)地重新調(diào)整自己的預(yù)計(jì)和時間表。這可以使得我們把精力從抱怨緊迫的時間表轉(zhuǎn)移到切合實(shí)際但卻更富挑戰(zhàn)性的最優(yōu)特征清單。
革命性的好建議并不是要在時間表上延遲做出決定。我們事實(shí)上做出了一系列決定,并在整個項(xiàng)目進(jìn)行過程中不斷地進(jìn)行重新審視和微小調(diào)整。
我并不贊同過多的預(yù)防措施。然而,你應(yīng)該在每一個項(xiàng)目的關(guān)鍵路徑和瓶頸處留出一個合乎情理的穩(wěn)定緩和時間(見小提示#3:盡早定義關(guān)鍵路徑和瓶頸),并把一個較為有把握的百分比(例如我們已經(jīng)70%肯定……)作為你的時間表估計(jì)和重溫準(zhǔn)則的一部分。
通常在開發(fā)階段,我們對在一個時間表簽字并早早地負(fù)起責(zé)任感到壓力。 13 就你現(xiàn)在所知的情況看來,時間表可能是完善的,所以你不能斷然對其進(jìn)行否定。問題僅僅在于你不知道你究竟要做些什么。把較為有把握的百分比策略加入你的考慮可以使得你欣然同意并舉例說出你對你所在領(lǐng)域的相關(guān)考慮。
舉例來說,當(dāng)下一代版本1產(chǎn)品開始開發(fā)時——你對你原先的時間表和預(yù)計(jì)水平可能只有40%的自信。這意味著你對你自己的估計(jì)的自信只有40%,而你的估計(jì)可能最多也只有60%是正確的。和你的隊(duì)友們討論你的自信水平,包括你所不知道的東西——例如,活動、負(fù)責(zé)人和截止日期——在你的時間表估計(jì)上。
附加的小提示:
在沒有可以彌補(bǔ)你現(xiàn)在在哪和你需要在哪這兩者之間矛盾的行動計(jì)劃之時,不要給出自信百分比。 |
小提示 #10:只要可能的話,減少存貨
零售業(yè)——例如服裝商場、雜貨店和五金店——可以理解維持一個龐大的庫存所需要的花費(fèi)。他們的目標(biāo)是在架子上僅僅擺放足夠使得商品進(jìn)行流通的數(shù)量的貨物。大的庫存意味著不確定的開支,因?yàn)槿棺涌赡軙^時,食品可能會過期,機(jī)器也許賣不出去,而你卻被所有這些東西纏住而無法脫身。
在軟件行業(yè)有著相似的概念,除非我們的庫存品有很多缺陷,有一整張單子的特性還沒被開發(fā)出來,而且還有一連串的決定還沒做出。這些項(xiàng)目的等待周期也是要花錢的,因?yàn)榧夹g(shù)和客戶是一直在改變的。減少等待時間的方法有:
- 分配周期性的且較頻繁的穩(wěn)定時間來修復(fù)和減少產(chǎn)品缺陷。
- 制定計(jì)劃和時間表以使得你的每一個穩(wěn)定時間的現(xiàn)行標(biāo)準(zhǔn)都能傳達(dá)給某一特定的客戶(這在某種程度上就像α、β、客戶旅行、實(shí)習(xí)計(jì)劃等等)。
- 著手工作時要制定時間表并盡早做出決定。舉例來說,對每一個穩(wěn)定時間使用頻繁的現(xiàn)行準(zhǔn)則來整理并執(zhí)行你的最終部署,將決策進(jìn)行集中而不是一直等待直到你的軟件應(yīng)用最終版本的發(fā)行。
- 在工作進(jìn)行當(dāng)中,對你的設(shè)計(jì)文檔和測試計(jì)劃進(jìn)行修改。不進(jìn)行改變,而是積壓需要改變的地方直到你有時間去更新你的設(shè)計(jì)會導(dǎo)致混亂和時間延遲。記住這些文檔需要轉(zhuǎn)交給其它相關(guān)當(dāng)事人,而不是你,而如果他們需要這些文件,他們會對文件進(jìn)行評估。所以你不能什么也不做直到你有時間去做這些事情。如果這些文件是過時的,你的文件閱讀者會做出不準(zhǔn)確的決定。要在一個有秩序的基礎(chǔ)上持續(xù)更新并重新檢查需要的文檔。讓你的例行文檔檢查成為圖4中給出的決策時間表在制定時必須要做的事情。
附加的小提示:
如果沒有人負(fù)責(zé)保持設(shè)計(jì)文檔的準(zhǔn)確性并不斷對其重新檢查,那么一開始就不要把它寫下來。如果已經(jīng)寫下來了,但沒有人宣稱對其負(fù)責(zé),那就把它刪掉。 |
降低存貨的另一種方式是將你的電子郵件、你的日歷、機(jī)器的維護(hù)和你將要做的事情的清單中不重要的、對你和你的客戶們都沒有價(jià)值的事情刪去。
斯蒂芬 卡維是高效能人士的七個習(xí)慣的作者。他把四種常見的活動劃分為四種類型:重要而且緊急(象限I),重要但不緊急(象限II),緊急但不重要(象限III),不緊急也不重要(象限IV)。始終在看起來非常緊急的象限(第I和第III)工作的危險(xiǎn)是你沒有把時間花在不緊急的事情上,而那些事情可能過后可以幫你擺脫一些緊急事務(wù)。象限 II 中的項(xiàng)目是重要但不緊急的。因此,我們經(jīng)常推遲、延期、耽擱這些項(xiàng)目,而它們卻可能幫我們擺脫緊急事務(wù)。
圖8:卡維的緊急事務(wù)象限圖
當(dāng)你開始著手整理和減少存貨時,分配給象限II中的項(xiàng)目時間的唯一方法是不去做象限III和IV中的事情。但在我們開始不去做象限III和IV中的事情之前,我們需要先認(rèn)識他們。讓我們考慮一些看起來緊急的事情所具有的一些混淆視聽的特征,這些特征通常使得軟件開發(fā)組織遇到困難。
缺陷控制
我建議你在消除積壓的缺陷和不斷膨脹的特征時毫不留情。不間斷地重新檢查你的缺陷清單。如果缺陷或不斷膨脹的請求在你生產(chǎn)線研發(fā)的下兩個發(fā)布產(chǎn)品中都是沒有預(yù)料到的,那么不要去理會它們了。這樣做的原因是我們的工業(yè)和技術(shù)是不斷在改變的。如果你生產(chǎn)線研發(fā)的下兩個發(fā)布產(chǎn)品已經(jīng)出現(xiàn)了這些問題,那么許多其它的事情也會接踵而來:
- 新的技術(shù)和方法被引進(jìn),使得原先遇到的問題迎刃而解。
- 現(xiàn)在的客戶不是找到了一個工作區(qū)就是轉(zhuǎn)向一個完全不同的產(chǎn)品。
- 如果你在下兩個發(fā)布產(chǎn)品中沒能解決問題,那么相對于解決其后出現(xiàn)的問題而言,其已經(jīng)不再重要了。
附加的小提示:
如果你的技術(shù)支持員工或產(chǎn)品經(jīng)理不同意不修復(fù)也不去理會某一個特殊的缺陷,那么你可以以這樣的方式來挑戰(zhàn)他們:把緊急且重要的事情放在這個產(chǎn)品必須修復(fù)的盤子里,除非完成修復(fù)這項(xiàng)工作,否則推遲產(chǎn)品的研發(fā)。 |
機(jī)器維護(hù)和安全活動
許多公司對機(jī)器安全和維護(hù)問題有各種各樣消防演習(xí)式的訓(xùn)練。如果已經(jīng)計(jì)劃了消防演習(xí),對參與者和那些需要做這項(xiàng)工作的人來說,在某種程度上應(yīng)該是保密的。通常情況下這是“一個丟掉所有的東西”的困境。而且由于這些需要花費(fèi)大力氣的項(xiàng)目并不是顯而易見地與其它任何一個項(xiàng)目、程序或產(chǎn)品緊密相關(guān),所以通常情況下我們沒有為這些項(xiàng)目安排時間和提供資源。每一個人都認(rèn)識到安全是一個需要重視的問題,一個病毒就可以使我們停止生產(chǎn),而這對每個人來說都是代價(jià)慘重的。所以,我并不是在建議跳過這些重要步驟的任何一個;我只是認(rèn)為在好的研發(fā)過程中應(yīng)該使它們更有效??梢栽囋嚾缦陆ㄗh:
- 自動更新進(jìn)程
- 提前讓大家都熟悉時間表(見小提示#1)
- 維修機(jī)器,扔掉沒用的。如果沒有人愿意負(fù)責(zé)機(jī)器的維修,那就把機(jī)器扔掉。
- 在你的公司里找到正在做相似的事情的姐妹團(tuán)隊(duì),讓他們共享機(jī)器和交互使用資源。
不要把你的時間浪費(fèi)在一些不必要的決策制定上
你所做的決定中約有80%是不合理的。它們中很多應(yīng)該由其它人來做決定。它們中有很多從長期看來都是無關(guān)緊要的。在花費(fèi)時間做出決定之前,應(yīng)該保證這個決定是足夠重要的。如果不是這樣,不要去理會它或者讓其它人來做這個決定。在某些時候,你可以問你自己:我應(yīng)該是那個代表整個團(tuán)隊(duì)做出那個決定的人嗎?
例如,如果團(tuán)隊(duì)花了一個小時討論如何處理一個臨時安裝程序(但是在下周我們所要的程序就能送到了),這個團(tuán)隊(duì)正在浪費(fèi)時間。這個決定根本無足輕重。你應(yīng)該讓某個開發(fā)成員決定怎樣臨時修復(fù)它并確保他沒有花太多時間來做決定。不去做決定有時候是恰當(dāng)?shù)?,特別是當(dāng)這個決定對解決問題而言沒什么幫助時。如果一個決定對任何人都不重要的話(例如,沒人愿意簽字對其負(fù)責(zé),沒有截止時間和行動),那么根本沒有必要考慮它。這里有一個簡單的例子:如果沒有人感到肚子餓,那午飯吃什么就是完全不相干的事情。簡單地不去談?wù)撐顼?,那就沒有做出決定的必要了。
其它積壓品:重新考慮你的自動郵件列表
自動郵件列表對你的個人時間可以是非常有幫助的,也可以是一個障礙。如果你正在聽關(guān)于結(jié)構(gòu)或詳盡設(shè)計(jì)的每天例行報(bào)告,而你自己卻不關(guān)心這些,那會花費(fèi)你的時間去過濾和重溫這些項(xiàng)目。擺脫這些清單,將通知放在網(wǎng)上或中心區(qū)域(這樣當(dāng)你需要時你可以隨時重溫),或者將它們放在單獨(dú)的文件夾里,從收件箱里清除。所以在你收件箱內(nèi)留著但已經(jīng)超過一個星期了還未閱讀的電子郵件,將它移除你的收件箱。
小提示 #11: 不要制造混亂
我認(rèn)識的一個忙碌的二線經(jīng)理在凌晨1:00給許多團(tuán)隊(duì)發(fā)了電子郵件,宣布在那個早晨8:00鐘的時候要開一個團(tuán)隊(duì)會議。由于他過去已經(jīng)干過多次同樣的事情,所以我認(rèn)為是時候和他談?wù)勊l(fā)送的消息和他的期望。
我指出并不是很多人真正到達(dá)辦公室的時間是早上8:00以前;因此,早上8:00以前他們看見這封緊急郵件通知是不太可能的。因?yàn)樗麄儧]有任何時間為會議做準(zhǔn)備,他們就不能為他提供任何有價(jià)值的意見或是他所尋找的反饋信息。這個二線經(jīng)理的回復(fù)是:但是我的時間表太混亂了,以致于這是我通知召開會議的第一時間。接下去的幾天里我都會很忙,因此早上8:00是我的日歷上我唯一有空做這件事的時間。
他的目的是讓每一個都被通知到,也真誠地希望聽到他人的建議,但他沒有意識到人們即使收到這封信也不代表什么。團(tuán)隊(duì)和一線經(jīng)理已經(jīng)加班加點(diǎn)使得自己能夠完成緊迫的時間表上的事情。他們正在試圖建構(gòu)、過濾和控制他們自己的工作量時間表,周旋在既定的計(jì)劃會議中,努力使自己的工作準(zhǔn)時完成。凌晨1:00通知他們說早上8:00有一個會議,會產(chǎn)生緊急且重要的錯誤感覺。他們沒有收到議程,所以團(tuán)隊(duì)假設(shè)自己可以不帶任何東西,并重新安排了他們的工作時間表來滿足這個通知會議的要求。這要求一個未計(jì)劃的一系列任務(wù)轉(zhuǎn)換。由于沒有會議細(xì)節(jié)或議程,他們會質(zhì)疑他們的出席對這個會議有多重要,如果他們沒有時間適當(dāng)為這個會議做準(zhǔn)備,他們也會質(zhì)疑自己的意見到底有多重要。同時,他們想知道是否有一個不成文的期待,每個人都必須工作到凌晨1:00以后,或者是在早上8:00之前就到達(dá)辦公室,只有這樣才能收到這些緊急的通知。未被計(jì)劃好的會議通知造成了氛圍和士氣不自覺的變化。
這并不是那個二線經(jīng)理想要傳遞的信息。在重新考慮了會議的真正目的之后,這個二線經(jīng)理可以定義一個議程和需要參加會議的成員,將會議出席者的名單縮減。一旦目標(biāo)和議程被勾勒出來了,他就意識到不一定非得是他來做演示;因此,這個特殊會議現(xiàn)在也并不取決于他那緊迫的日歷了。其它的人可以在一個更合適的時間主持這個會議。一旦目標(biāo)、議程和新的出席者名單出爐,團(tuán)隊(duì)就能夠根據(jù)自己現(xiàn)在正在負(fù)責(zé)的其它事情,自己判斷這個特殊會議的緊急性和重要性。
總是會有一大堆緊急而且重要的事情發(fā)生,使得我們的時間表短時間內(nèi)產(chǎn)生混亂。即使如此,不要把混亂帶入你的時間表或你的團(tuán)隊(duì),使得形勢更加復(fù)雜。
小提示 #12: 警惕裝腔作勢的文化
當(dāng)裝腔作勢變成標(biāo)準(zhǔn),而不是混亂的時候,另一種形式的混亂爆發(fā)了。公司經(jīng)常會預(yù)計(jì)到會有附加的時間和一些裝腔作勢的言論使產(chǎn)品研發(fā)失敗。非常普遍的是,這并不會使事情變好。讓裝腔作勢使你的產(chǎn)品出局是最糟糕的項(xiàng)目管理。如果你首先建立了一個切合實(shí)際的時間表,那么就不需要裝腔作勢了。不能正確定義任務(wù)和延遲也是糟糕的項(xiàng)目管理。分配單一資源給并行進(jìn)行的項(xiàng)目,其中沒有合適的緩沖以及一些執(zhí)行,也是糟糕的項(xiàng)目管理。能力成熟度模型簡單將此稱為級別1的狀態(tài)。
對于例行日常需要以外的,為了開發(fā)產(chǎn)品或滿足顧客而附加的意想不到的任務(wù),收起裝腔作勢。一些例子是關(guān)于對客戶來說成功的產(chǎn)品部署、提示和技巧的白皮書,在一些會議中已經(jīng)做了演示。
總結(jié)
雖然這并不是改進(jìn)時間表制定的所有方法的清單,但我可以自信地說它們?yōu)橐恍┏砷L且工作量正在緩慢增加的公司提供了好的建議。我非常高興能聽到你關(guān)于任何一個小提示的建議,特別是當(dāng)它們中的任何一個幫助了你和你的團(tuán)隊(duì)的時候。
注釋
1由于我們既不能創(chuàng)造也不能毀滅時間,所以與它做斗爭是沒有意義的。
2游手好閑非常容易失去你現(xiàn)在所擁有的一切東西。所以我們不需要游手好閑的人。我們更傾向于找出用少量東西創(chuàng)造巨大價(jià)值的方法。因此,我們需要創(chuàng)造出一種可以轉(zhuǎn)移、有支持性的方法來改變我們忙碌的生活。
3雖然緊急事件也許不能等到任務(wù)完成(最初需要8天時間)以后才著手進(jìn)行,但它也許可以等一天時間,這使得你可以繼續(xù)完成你任務(wù)2的沖刺。
4對額外的請求,我指的是那些沒有列在你今天的詳細(xì)任務(wù)清單中的請求。額外請求是指你的經(jīng)理或測試領(lǐng)導(dǎo)沒有要求你必須做的事情。即使這些額外的任務(wù)沒有明確提出來,它也可以使得團(tuán)隊(duì)的相互獨(dú)立性和組織功能減弱。關(guān)鍵就在于要有高效的網(wǎng)絡(luò)和和諧的環(huán)境,而由于我們都知道的原因,說不是很困難的。
5在工作斷點(diǎn)重新進(jìn)行評估并使得工作持續(xù)進(jìn)行下去是很重要的。我們通常只在頭腦里思考30分鐘,然后就開始著手工作,但我們在時間限制之后并沒有真正地停下來。執(zhí)行停這一概念是這一技巧的關(guān)鍵。
6決定什么是主要活動是很困難的。我們不想被瑣事壓垮;但在某種程度上應(yīng)該擅于把時間和資源劃分成小塊。
7有策略地在時間表上安插一些穩(wěn)定時間有助于減少失誤、文檔回顧和整個工程的清理(見小提示#10:只要可能的話,減少存貨)
8見斯坦迪什團(tuán)隊(duì)論文你的要求是什么?Standish Group International, Inc., 2003, Standish Group (based on 2002 CHAOS Report).
9系統(tǒng)要求通常會導(dǎo)致時間表停頓的關(guān)鍵的一個原因是它們沒有被整合到整個項(xiàng)目中,在項(xiàng)目時間表的開始也沒有進(jìn)行過計(jì)算。當(dāng)詳細(xì)描述且對我們的項(xiàng)目進(jìn)程進(jìn)行整合時,我們只關(guān)注客戶特征,但卻不在意所有需要支持的任務(wù)(見小提示#2:制作出一個詳細(xì)的任務(wù)清單)
10要尋找更多的小提示以快速做出決策,見 :http://www.liraz.com/tdecision.htm
11見斯蒂芬 卡維高效能人士的七個習(xí)慣Simon and Schuster, New York: 1989
12舉例而言,如果我們試圖將十英磅放在只能裝五英磅的袋子里,難道那是袋子的錯?
13許多高水平的項(xiàng)目經(jīng)理喜歡形式上在房間里走一走,對早期的時間表框架進(jìn)行口頭上的委托事項(xiàng)。他的目的是對單個項(xiàng)目參與者進(jìn)行口頭事項(xiàng)委托,并對工作保持一定的責(zé)任。即使他的目的是好的,時間卻未必恰當(dāng)。我們也許不知道也不能理解這個項(xiàng)目在這個時間點(diǎn)是是否與我們的時間表相符合。
|