《最後期限》重點摘要
優質管理的四大要素: l
選擇正確的人 l
為他們分配正確的工作 l
保持他們的積極性 l
幫助團隊凝聚起來並保持團隊的凝聚力
(其他一切都只是文案)
安全和變化 l
除非感到安全,否則人們就不能去迎接變化 l
在所有成功的工程中(以及在絕大多數其他有價值的工作中),變化都是基本的要素之一 l
安全感的缺乏會讓人們反對變化 l
逃避風險是致命的,因為這會讓你也得不到與風險同在的利益 l
人們可能會因為來自客觀世界的直接的恐嚇而覺得沒有安全感,但是如果察覺到管理者可能濫用權力來懲罰自己,他們也會覺得沒有安全感。
負面效應 l
威脅不是提高業績最好的方法 l
如果分配的時間一開始就不夠,不管威脅有多麼嚇人,工作也無法按時完成 l
更糟糕的是,如果目標沒有實現,你就必須兌現你的威脅
管理者必需的身體部位 l
管理涉及到心,腸胃,靈魂和鼻子 l
因此…用心來領導,
相信你的腸胃(相信你的預感)
構築團隊的靈魂
訓練乙個能嗅出謊言的鼻子
用指揮戰爭來作為管理的乙個比喻 l
在戰役開始的時候,管理者真正的工作已經完成了
面試和招聘 l
l不要試圖單獨去招聘,兩副腸胃遠比一副腸胃的兩倍要好 l
對於新的雇員,讓他們承擔與以前曾經成功過的同樣難度的專案,把有挑戰性的目標推遲到下一次 l
l多聽,少說 l
如果先把材料整理好,那麼所有的事情都會進行的更好
生產力的提高 l
沒有短期生產力提高這樣的東西 l
生產力的提高是來自長期投資的 l
任何承諾立刻見效的東西都很可能是江湖遊醫所賣的萬靈油
風險控制 l
通過控制風險來管理專案 l
為每個專案建立並維護風險統計表 l
跟蹤根源性的風險,而不只是最後那討厭的結果 l
評估每種風險具體化的概率和可能造成的開銷 l
對於每種風險,**標誌其具體化的早期徵兆 l
任命乙個風險控制官,這個人不應該維護組織內部我能行的態度 l
建立簡單的(可能是匿名的)通道,讓壞訊息能傳遞到高層
防止失敗 l
壯士斷腕 l
控制住失敗比優化成功更能提高你全面的成績 l
要有闖勁,盡早取消失敗的工作 l
除非必要,否則就不要自己去凝聚乙個團隊,出去找乙個已經成型的團隊來用 l
保持好的團隊在一起(只要他們自己願意),以幫助你的繼任者避免團隊凝聚得慢或者不能凝聚的問題 l
把凝聚在一起的團隊,準備好,並且也願意接受新的工作,作為專案的收穫之一 l
專案開始時浪費的一天和最後階段浪費的一天對專案造成的傷害是同等的 l
有無數種方法可以浪費一天的時間,但是沒有任何一種方法可以拿回一天的時間
開發過程的建模和模擬 l
將你關於完成工作過程的直覺建模 l
在同事的交流中使用這些模型,以便交流,提煉關於專案運轉的思想 l
用模型來模擬專案的結果 l
根據實際的結果來調整模型
病態的政治 l
每一天,你都必須準備拿自己的工作打賭…
l…但是這也不能保證病態的政治影響你 l
病態的政治可能在任何地方出現,哪怕是在最健康的組織裡面 l
病態的政治的特徵:對個人權勢的渴望超過了組織本身的目標 l
即使這種不合理的目標與組織目標背道而馳,它也可能出現 l
病態的政治最惡劣的***:它精簡專案變得危險
度量 l度量每個產品的規模 l
不用執著於單位,在等待客觀度量的時候,先用你自己的主觀單位 l
從所有能得到的原始資料(可計算得軟體特性)自己構造度量單位 l
從已經完成的專案中收集原始資料,以推導出生產力趨向 l
借助資料庫畫一條趨勢線,把預期工作量作為人造度量值的函式顯示出來 l
現在,針對每個要評估的專案,計算出人造度量單位值,並根據這個值在趨勢線上找到預期工作量值 l
用生產力趨勢周圍的干擾水平作為對映的標示
過程和過程改進 l
好的過程和持續的過程改進是絕好的目標 l
它們也是非常自然的目標:優秀的技術工作者一定會關注它們,不管你是否告訴他們 l
正式的過程改進程式常需要花錢,花時間,特定的過程改進工作拖延專案進度,儘管最終會體現在生產力上的收穫,它們也不可能抵消花在過程改進上的時間 l
但是,專案有希望從單個的,正確選擇的方法改進中得到足夠的收益,並贏回為這次改變付出的時間和金錢 l
在專案進行的過程中,不用希望在超過乙個方法的範圍內實施改進,多種技術的改進程式(比如說提高整整乙個cmm等級)很可能讓專案比不實施這些程式完成的更晚 l
標誌過程的危險就在於人們可能失去重要的走捷徑的機會 l
特別是對於人員超編的專案,標準過程看上去會很嚴謹,因為它們製造出了足夠的工作(有用的和無用的),讓所有人都忙碌不停。
改變完成工作的方式 l
如果不大幅度減少除錯的時間,就沒辦法讓專案大幅度提前完成 l
高速完成的專案用在除錯上的時間也成比例的少得多 l
高速完成的專案用在設計上的時間也成比例的多得多 l
如果你不關心別人,不照顧別人,就別想讓他們為你做一些不同尋常的事情,如果要讓他們改變,就必須去了解(並讚賞)他們的過去。
壓力的效果 l
壓力之下的人無法更快的思考 l
增加加班時間只會降低生產力 l
短期的壓力乃至於加班可能是有用的策略,因為它們能使員工集中精力,並且讓他們感到工作的重要性,但是長期的壓力肯定是錯誤的 l
經理之所以會施加那麼多的壓力,也許是因為他們不知道該做什麼,或者因為其他辦法的困難而感到氣餒 l
最壞的猜測:是用壓力和加班的真正原因是為了在專案失敗的時候讓所有人看上去能好一點
憤怒的經理 l
管理中的憤怒和恥辱是會傳染的,如果高階管理者喜歡罵人,低階管理者也會有樣學樣(就像經常被罵的小孩很容易變成愛罵人的父母) l
管理中的辱罵常被認為是一種刺激,可以讓員工提高效率,在胡蘿蔔加大棒的管理策略中,辱罵是最常見的大棒,但是,哪有人被辱罵之後還能做得更好的? l
如果經理使用辱罵的方法來刺激員工,這就表現出經理的無能,而不是員工的無能
含糊的規格文件 l
規格文件中的含糊隱含著不同的系統參與者之間存在著未解決的衝突 l
如果乙份規格文件不包含完整的輸入輸出列表,那麼它就是毫無希望的,它根本就還沒開始說明任何東西 l
沒有人會告訴你乙份規格文件是不是糟糕,人們往往傾向於責備自己,而不是責備文件
衝突 l只要在正式過程中有多個參與者,就一定會有衝突存在 l
建立,安裝系統的業務中特別容易出現衝突 l
絕大多數系統開發團隊都缺乏解決衝突的能力 l
衝突應當引起重視,衝突並不是缺乏職業道德的行為 l
應當提前宣告:所有人的贏都是受重視的,確保每個級別的人都能贏 l
談判困難,調解容易 l
如果兩個人的利益是完全或者部分相斥的,預先做好安排,準備好請雙方通過調解來解決衝突 l
記住:我們都站在同一邊,跟我們對立的,是我們要解決的問題
催化劑的角色 l
有這樣一種催化劑式的人物,這樣的人能幫助團隊成型並凝聚,保持團隊的健康和生產力,從而對專案做出貢獻。就算催化劑別的什麼事情都不幹(其實,通常他們還會幹很多別的事),這種催化劑的角色也是重要而有價值的 l
調解是催化劑的一項特殊工作,調解是可以學的,而且只需要很小的投資就能學會 l
調解應該從乙個小小的儀式開始。我能幫你們調解一下嗎?在解決衝突的時候,這是必要的第乙個步驟。
人類的錯誤 l
將你置於死地的,不是你不知道的東西,而正是你知道絕不會置你於死地的東西
人員安排 l
在早期,人員超編會迫使專案跨過關鍵的設計階段(這是為了讓所有的人有事可做) l
如果在設計完成之前,工作先被分給了很多人,那麼人與人之間,工作組之間的介面就會很亂套 l
這會使團隊內部耦合度提高,會議時間,重複勞動和無效工作都會增加 l
理想的人員安排是這樣:在專案的大部分時間裡由小型核心團隊來做設計工作,在開發的最後階段(時間安排的最後1/6)加入大量的人手 l
可怕的猜想:時間安排緊迫的專案,與時間安排比較合理的專案比起來,完成的時間反而會更長
專案社會學 l
讓不必與會的人可以放心離開,從而保證會議的精簡,有乙份公開的議程,並嚴格執行,這是最簡單的方法 l
專案需要儀式 l
用小小的儀式來使人們注意專案的目標和理想狀態:小規模會議,零缺陷工作等等 l
採取行動,防止人們隨便發怒 l
記住:憤怒=恐懼,隨便對下級發怒的經理一定是因為恐懼才會這樣做的 l
意見:如果所有人都懂得憤怒=恐懼這個道理,就能明顯的看出發怒的人是在害怕,由於無法再隱瞞自己的恐懼,他也就不會再生氣了。(這不能解決這些生氣的人的問題,但是肯定可以讓其他人好受一些)
病態的政治(舊話重提) l
別想**乙個病態的人 l
不用浪費時間,也不用因為嘗試**上司的病態而使自己受到威脅 l
有時候,你唯一的選擇就是等待,等問題自己解決,或者等乙個讓你繼續前進的機會 l
奇蹟是有可能發生的(但是千萬別去指望它)
精兵簡政 l
精兵簡政是失敗的公司使用的辦法,它讓員工負擔失敗的責任 l
公司的目標應該正好相反:興旺而人性化 l
當你聽到精兵簡政這個詞的時候,請記住它的弦外之音:失敗和恐嚇
基本常識 l
專案既需要目標,也需要計畫 l
而且這兩者應該不同
真的是最後期限嗎?
在專案制軟體開發中,工程師和專案主管的主要壓力來自於最後期限 deadline 有人或許說主要壓力是來自於技術難點,但是事實上沒有解決不了的問題,要麼將技術難點攻克,要麼繞過技術難點用其他的解決方案。問題在於解決技術難點需要時間,而這會讓本不太多的專案時間更進一步逼近最後期限,而 按時交付 是評價乙...
《最後期限》讀書筆記
tom demarco 屋簷下的水滴 讀書筆記系列 管理中最困難的是什麼?人!讓正確的人去做正確的事,這就是優秀的管理者和平庸的管理者之間的區別。尋找合適的人選。然後,不管你之後做錯了什麼,這個人都會拯救你。這就是管理所有的藝術。僱傭人是經理所做的惟一重要的事。人員的選擇 任務的分配 激勵 團隊構建...
論程式設計的最後期限
中文英文 英文原文 普通程式設計與專業程式設計之間有很多差別,而最為顯著的就是截止日期。當你給自己寫程式的時候,只要你願意,就可以用很多 或者很少 的時間來完成,但是當你給別人寫程式的時候,你就只有一點有限的時間和資源來完成任務。而根據我的經驗,一般會導致以下兩種情況之一 1.你必須延長時間以妥善完...